:root{--page:#090f13;--surface:#111b20;--panel:#16252b;--panel-2:#1b3036;--ink:#edf5f1;--ink-2:#d1e1dc;--muted:#9aafaa;--dim:#6d8580;--accent:#61ddca;--accent-bright:#9af3e1;--accent-soft:rgba(97,221,202,.13);--amber:#ffb477;--amber-soft:rgba(255,180,119,.13);--danger:#ff918a;--line:rgba(224,244,238,.14);--line-soft:rgba(224,244,238,.075);--shadow:0 30px 90px rgba(1,10,14,.42);--ease:cubic-bezier(.16,1,.3,1)}
*{box-sizing:border-box}html{min-height:100%;scroll-behavior:smooth}body{min-height:100dvh;margin:0;overflow-x:hidden;color:var(--ink);background:radial-gradient(circle at 78% 3%,rgba(97,221,202,.13),transparent 32rem),radial-gradient(circle at 5% 88%,rgba(255,180,119,.08),transparent 27rem),var(--page);font:15px/1.65 "Segoe UI","Microsoft YaHei","Noto Sans",Arial,sans-serif;-webkit-font-smoothing:antialiased}body::before{position:fixed;inset:0;z-index:10;pointer-events:none;content:"";opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E");mix-blend-mode:screen}body::after{position:fixed;inset:0;z-index:9;pointer-events:none;content:"";background:radial-gradient(ellipse at center,transparent 44%,rgba(3,10,14,.48) 100%)}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.ambient{position:fixed;z-index:-1;pointer-events:none;border:1px solid rgba(97,221,202,.12);border-radius:50%;opacity:.45}.ambient-one{width:46vw;height:46vw;right:-25vw;top:26vh;box-shadow:0 0 100px rgba(97,221,202,.08),inset 0 0 100px rgba(97,221,202,.05);animation:drift 16s ease-in-out infinite}.ambient-two{width:28vw;height:28vw;left:-17vw;bottom:5vh;border-color:rgba(255,180,119,.12);animation:drift 21s ease-in-out infinite reverse}.skip-link{position:fixed;left:15px;top:-70px;z-index:100;padding:10px 14px;border-radius:9px;color:#071613;background:var(--accent);font-weight:800;transition:top .2s}.skip-link:focus{top:15px}:focus-visible{outline:2px solid var(--accent-bright);outline-offset:3px}
.page-shell{width:min(1160px,calc(100% - 40px));margin:0 auto;padding:24px 0 34px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:66px;padding:0 3px;border-bottom:1px solid var(--line-soft)}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand-mark{position:relative;display:grid;place-items:center;width:39px;height:39px;overflow:hidden;border:1px solid rgba(97,221,202,.58);border-radius:13px;background:linear-gradient(145deg,rgba(97,221,202,.2),rgba(97,221,202,.02));box-shadow:0 0 26px rgba(97,221,202,.08)}.brand-mark::before{width:19px;height:19px;content:"";border:1px solid var(--accent);border-radius:50%;box-shadow:0 0 15px rgba(97,221,202,.52)}.brand-mark::after{position:absolute;left:9px;top:-20px;width:21px;height:1px;content:"";background:var(--accent-bright);box-shadow:0 0 13px var(--accent);animation:markscan 4s linear infinite}.brand strong{display:block;font-size:15px;letter-spacing:-.03em}.brand small{display:block;margin-top:1px;color:var(--dim);font-size:9px;font-weight:700;letter-spacing:.17em;line-height:1.2}.status{display:flex;align-items:center;gap:8px;color:var(--dim);font-size:10px;font-weight:700;letter-spacing:.14em}.status i{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px rgba(97,221,202,.09),0 0 18px var(--accent);animation:pulse 2.4s ease-in-out infinite}.intro{max-width:760px;padding:84px 0 48px}.eyebrow{display:inline-flex;align-items:center;gap:9px;color:var(--accent-bright);font-size:10px;font-weight:800;letter-spacing:.22em;line-height:1;text-transform:uppercase}.eyebrow::before{width:7px;height:7px;content:"";border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px rgba(97,221,202,.08)}h1,h2,p{margin-top:0;text-wrap:pretty}h1{max-width:740px;margin:19px 0 19px;font-family:"Bahnschrift","Segoe UI","Microsoft YaHei",sans-serif;font-size:clamp(45px,7vw,80px);font-weight:750;line-height:.94;letter-spacing:-.075em}h1 em{color:var(--accent-bright);font-style:normal} .intro>p{max-width:590px;margin:0;color:var(--muted);font-size:16px}.workspace{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(340px,.96fr);gap:16px}.form-card,.result-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:linear-gradient(145deg,rgba(19,32,39,.98),rgba(12,21,26,.98));box-shadow:var(--shadow)}.form-card{padding:29px}.form-card::before,.result-card::before{position:absolute;top:0;right:0;left:0;height:1px;content:"";background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:.62}.form-head{display:flex;gap:13px;align-items:flex-start;margin-bottom:26px}.step{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border:1px solid rgba(97,221,202,.35);border-radius:11px;color:var(--accent-bright);background:var(--accent-soft);font-size:11px;font-weight:800}.form-head h2,.result-top h2{margin:0;font-size:23px;line-height:1.1;letter-spacing:-.045em}.form-head p{margin:5px 0 0;color:var(--muted);font-size:12px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:block}.field.wide{grid-column:1/-1}.field>span{display:block;margin-bottom:7px;color:var(--ink-2);font-size:12px;font-weight:700}.field>span small{margin-left:5px;color:var(--dim);font-size:10px;font-weight:500}.field input,.field select{width:100%;min-height:51px;padding:0 14px;border:1px solid var(--line);border-radius:12px;color:var(--ink);background:rgba(255,255,255,.045);outline:none;color-scheme:dark}.field input::placeholder{color:var(--dim)}.field input:hover,.field select:hover{border-color:rgba(224,244,238,.25)}.field input:focus,.field select:focus{border-color:rgba(97,221,202,.7);box-shadow:0 0 0 3px rgba(97,221,202,.1)}.field select option{color:var(--ink);background:var(--surface)}.key-state{display:flex;align-items:center;gap:8px;min-height:30px;margin-top:13px;color:var(--dim);font-size:11px}.state-dot{width:6px;height:6px;border-radius:50%;background:var(--dim)}.key-state.valid{color:var(--accent-bright)}.key-state.valid .state-dot{background:var(--accent);box-shadow:0 0 12px var(--accent)}.key-state.invalid{color:var(--danger)}.key-state.invalid .state-dot{background:var(--danger);box-shadow:0 0 12px var(--danger)}.calculate{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:54px;margin-top:12px;padding:0 17px 0 19px;border:1px solid var(--accent);border-radius:12px;color:#071613;background:var(--accent);box-shadow:0 14px 32px rgba(97,221,202,.16);cursor:pointer;font-size:14px;font-weight:850;transition:transform .25s var(--ease),background .25s ease,box-shadow .25s ease}.calculate:hover{background:var(--accent-bright);box-shadow:0 18px 40px rgba(97,221,202,.25);transform:translateY(-2px)}.calculate:disabled{cursor:wait;opacity:.65;transform:none}.calculate b{font-size:20px;font-weight:500}.form-message{min-height:23px;margin:12px 0 0;color:var(--danger);font-size:12px}.result-card{display:flex;min-height:430px;padding:29px;flex-direction:column}.result-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.result-top .eyebrow{color:var(--amber)}.result-top .eyebrow::before{background:var(--amber);box-shadow:0 0 0 4px rgba(255,180,119,.08)}.result-top h2{margin-top:12px}.result-light{width:9px;height:9px;margin-top:7px;border-radius:50%;background:var(--dim);box-shadow:0 0 0 5px rgba(109,133,128,.08)}.result-light.ready{background:var(--accent);box-shadow:0 0 0 5px rgba(97,221,202,.1),0 0 18px var(--accent)}.result-light.error{background:var(--danger);box-shadow:0 0 0 5px rgba(255,145,138,.1),0 0 18px var(--danger)}.result-empty{display:grid;flex:1;place-items:center;align-content:center;gap:21px;color:var(--dim);text-align:center}.result-empty p{max-width:240px;margin:0;font-size:12px}.reticle{position:relative;width:116px;height:116px;border:1px solid rgba(97,221,202,.34);border-radius:50%;box-shadow:inset 0 0 0 12px rgba(97,221,202,.025),0 0 42px rgba(97,221,202,.07);animation:slowspin 18s linear infinite}.reticle::before,.reticle::after{position:absolute;inset:20px;content:"";border:1px dashed rgba(255,180,119,.46);border-radius:50%}.reticle::after{inset:38px;border:1px solid rgba(97,221,202,.34);border-left-color:transparent}.reticle span{position:absolute;top:50%;left:50%;width:3px;height:45px;background:var(--amber);box-shadow:0 0 14px var(--amber);transform:translate(-50%,-100%) rotate(38deg);transform-origin:bottom}.result-values{display:grid;align-content:center;flex:1;gap:10px;padding:32px 0 26px}.result-row{padding:16px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.035)}.result-row span{display:block;color:var(--dim);font-size:11px}.result-row strong{display:block;margin-top:7px;color:var(--accent-bright);font:800 28px/1.1 "Cascadia Mono",Consolas,monospace;letter-spacing:.08em;word-break:break-all}.result-meta{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:11px}.result-foot{display:flex;justify-content:space-between;gap:15px;padding-top:16px;border-top:1px solid var(--line-soft);color:var(--dim);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.footer{display:flex;justify-content:space-between;gap:20px;padding:27px 2px 0;color:var(--dim);font-size:11px}
@keyframes markscan{0%{transform:translateY(0);opacity:0}25%,75%{opacity:1}100%{transform:translateY(58px);opacity:0}}@keyframes pulse{0%,100%{opacity:.48}50%{opacity:1}}@keyframes slowspin{to{transform:rotate(360deg)}}@keyframes drift{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-18px,0)}}
@media(max-width:820px){.page-shell{width:min(100% - 30px,620px)}.intro{padding:62px 0 39px}.workspace{grid-template-columns:1fr}.result-card{min-height:390px}.footer{padding-top:24px}}
@media(max-width:560px){.page-shell{width:calc(100% - 24px);padding-top:12px}.topbar{min-height:59px}.status{font-size:9px}.status span{display:none}.intro{padding-top:53px}h1{font-size:clamp(43px,14vw,64px)}.intro>p{font-size:14px}.form-card,.result-card{padding:22px;border-radius:18px}.field-grid{grid-template-columns:1fr;gap:13px}.field.wide{grid-column:auto}.result-row strong{font-size:23px}.footer{display:block}.footer span{display:block;margin-top:7px}.ambient-one{width:80vw;height:80vw;right:-52vw}.ambient-two{width:55vw;height:55vw;left:-35vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
