/* Fast IP Checking | premium legacy-tool UI layer
   Scoped to the first-generation pages. No changes to calculations or APIs.
   The existing shared header owns its own styling. */
html[data-fastip-premium] {scroll-behavior:smooth}
html[data-fastip-premium] body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.012em}
html[data-fastip-premium] main{position:relative;isolation:isolate}
html[data-fastip-premium] main .hero,
html[data-fastip-premium] .tool-page-hero,
html[data-fastip-premium] section.hero{position:relative;overflow:visible}
html[data-fastip-premium] main .hero h1,
html[data-fastip-premium] .tool-page-title,
html[data-fastip-premium] section.hero h1{
 font-weight:800;letter-spacing:-.038em;line-height:1.12;
 text-wrap:balance;
}
html[data-fastip-premium] .hero p,
html[data-fastip-premium] .tool-page-hero p {line-height:1.7}
html[data-fastip-premium] .hero .tag,
html[data-fastip-premium] .hero .eyebrow,
html[data-fastip-premium] .tool-page-hero .section-label{
 border-radius:100px;letter-spacing:.08em;font-size:.76rem;font-weight:750;
}
html[data-fastip-premium] .tool,
html[data-fastip-premium] section.panel,
html[data-fastip-premium] .port-card,
html[data-fastip-premium] .control-card,
html[data-fastip-premium] .side-card,
html[data-fastip-premium] .metric-card,
html[data-fastip-premium] .result-panel,
html[data-fastip-premium] .history-card{
 border-radius:20px;
 box-shadow:0 14px 46px rgba(3,12,31,.12),0 2px 8px rgba(3,12,31,.05);
 transition:border-color .2s ease,box-shadow .2s ease;
}
html[data-fastip-premium] .tool,
html[data-fastip-premium] section.panel,
html[data-fastip-premium] .port-card,
html[data-fastip-premium] .control-card{
 position:relative;overflow:hidden;
}
/* Small brand accent on functional panels; never blocks interaction */
html[data-fastip-premium] .tool:before,
html[data-fastip-premium] section.panel:before,
html[data-fastip-premium] .port-card:before,
html[data-fastip-premium] .control-card:before{
 content:"";position:absolute;inset:0 0 auto;height:3px;
 background:linear-gradient(90deg,#2474c4,#02b4c9 72%,transparent);
 pointer-events:none;z-index:1;
}
html[data-fastip-premium] input:not([type=checkbox]):not([type=radio]):not([type=hidden]),
html[data-fastip-premium] select{
 min-height:48px;border-radius:12px;outline-offset:3px;
 transition:border-color .18s,box-shadow .18s;
}
html[data-fastip-premium] input:not([type=checkbox]):not([type=radio]):not([type=hidden]):focus-visible,
html[data-fastip-premium] select:focus-visible{
 outline:2px solid #1aaad0;box-shadow:0 0 0 4px rgba(2,182,212,.12);
}
html[data-fastip-premium] button[type=submit],
html[data-fastip-premium] .btn.primary,
html[data-fastip-premium] .btn-primary,
html[data-fastip-premium] .check-button,
html[data-fastip-premium] button.run,
html[data-fastip-premium] .start-btn,
html[data-fastip-premium] .tool form .btn{
 min-height:46px;border-radius:12px;letter-spacing:.005em;font-weight:750;
 transition:filter .18s,transform .18s,box-shadow .18s;
}
@media(hover:hover){
html[data-fastip-premium] button[type=submit]:not(:disabled):hover,
html[data-fastip-premium] .check-button:not(:disabled):hover,
html[data-fastip-premium] .start-btn:not(:disabled):hover,
html[data-fastip-premium] button.run:not(:disabled):hover{transform:translateY(-1px);filter:brightness(1.07)}
}
html[data-fastip-premium] button:focus-visible,html[data-fastip-premium] a:focus-visible{
 outline:3px solid #11a9db;outline-offset:3px;
}
html[data-fastip-premium] .privacy,
html[data-fastip-premium] .note,
html[data-fastip-premium] .status{
 border-radius:13px;
}
/* Form-first pages — generous spacing and clear inputs */
html[data-fastip-premium="ip-lookup"] main.wrap,
html[data-fastip-premium="dns-lookup"] main.wrap{max-width:1090px}
html[data-fastip-premium="ip-lookup"] section.tool,
html[data-fastip-premium="dns-lookup"] section.tool{
 border:1px solid rgba(58,147,192,.22);
}
html[data-fastip-premium="domain-lookup"] section.panel{border:1px solid rgba(58,147,192,.22)}
/* Gradients adapt to existing theme; preserve current visual identity. */
html[data-theme="dark"][data-fastip-premium] body{
 background-image:radial-gradient(ellipse 68% 360px at 52% 150px,rgba(20,100,168,.14),transparent);
 background-repeat:no-repeat;
}
html[data-theme="light"][data-fastip-premium] body{
 background-image:radial-gradient(ellipse 68% 360px at 52% 150px,rgba(40,140,196,.09),transparent);
 background-repeat:no-repeat;
}
@media(max-width:640px){
 html[data-fastip-premium] .tool,
 html[data-fastip-premium] section.panel,
 html[data-fastip-premium] .port-card,
 html[data-fastip-premium] .control-card{border-radius:18px}
 html[data-fastip-premium] main .hero h1,
 html[data-fastip-premium] section.hero h1{font-size:clamp(28px,8vw,36px)}
 html[data-fastip-premium] .tool form button[type=submit],
 html[data-fastip-premium] .tool form .btn,
 html[data-fastip-premium] .check-button{min-height:49px}
}
@media(prefers-reduced-motion:reduce){
 html[data-fastip-premium] *{transition-duration:.01ms!important;scroll-behavior:auto!important}
}
/* Dashboard-style desktop hierarchy for the oldest lookup interfaces. */
@media(min-width:1024px){
 html[data-fastip-premium="ip-lookup"] main.wrap,
 html[data-fastip-premium="dns-lookup"] main.wrap{
  display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);column-gap:32px;row-gap:32px;align-items:start;
  max-width:1160px;
 }
 html[data-fastip-premium="ip-lookup"] main.wrap > section.hero,
 html[data-fastip-premium="dns-lookup"] main.wrap > section.hero{
  padding:74px 10px 20px 0;margin:0;text-align:left;
 }
 html[data-fastip-premium="ip-lookup"] main.wrap > section.hero h1,
 html[data-fastip-premium="dns-lookup"] main.wrap > section.hero h1{font-size:clamp(38px,3.6vw,54px)}
 html[data-fastip-premium="ip-lookup"] main.wrap > section.hero p,
 html[data-fastip-premium="dns-lookup"] main.wrap > section.hero p{margin-left:0;margin-right:0;max-width:520px}
 html[data-fastip-premium="ip-lookup"] main.wrap > section.tool,
 html[data-fastip-premium="dns-lookup"] main.wrap > section.tool{margin:42px 0 0;min-width:0}
 html[data-fastip-premium="ip-lookup"] main.wrap > section:not(.hero):not(.tool),
 html[data-fastip-premium="dns-lookup"] main.wrap > section:not(.hero):not(.tool){grid-column:1 / -1;min-width:0}
 html[data-fastip-premium="domain-lookup"] main.container{
  display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);column-gap:32px;row-gap:30px;align-items:start;
 }
 html[data-fastip-premium="domain-lookup"] main.container > .hero{padding:64px 8px 0 0;margin:0;text-align:left}
 html[data-fastip-premium="domain-lookup"] main.container > .hero h1{font-size:clamp(38px,3.6vw,54px)}
 html[data-fastip-premium="domain-lookup"] main.container > .panel{margin:38px 0 0;min-width:0}
 html[data-fastip-premium="domain-lookup"] main.container > :not(.hero):not(.panel){grid-column:1/-1;min-width:0}
}
