*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.block{display:block}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{--bg:#fbfaff;--card:rgba(255,255,255,.72);--ink:#1f0f3d;--ink-2:#5b4a78;--ink-3:#9d8ab5;--line:rgba(167,139,250,.18);--blue:#7c3aed;--violet:#a78bfa;--accent:#ff6b9d;--emerald:#10b981;--amber:#d97706;--red:#dc2626;--grad:linear-gradient(135deg,#7c3aed,#c026d3 50%,#ff6b9d);--grad-strong:linear-gradient(135deg,#6d28d9,#be185d);--shadow:0 8px 28px rgba(31,15,61,.06);--shadow-lg:0 16px 40px rgba(124,58,237,.12);--radius:20px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--ink);line-height:1.65;-webkit-font-smoothing:antialiased}::-moz-selection{background:rgba(255,107,157,.22)}::selection{background:rgba(255,107,157,.22)}body:before{background:radial-gradient(640px 460px at 8% -6%,rgba(124,58,237,.08),transparent 70%),radial-gradient(740px 520px at 92% -4%,rgba(255,107,157,.1),transparent 70%),radial-gradient(580px 440px at 50% 16%,rgba(167,139,250,.09),transparent 70%)}body:after,body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none}body:after{background-image:radial-gradient(rgba(31,15,61,.03) 1px,transparent 0);background-size:22px 22px}.container{max-width:1040px;margin:0 auto;padding:0 24px}.topbar{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.58);backdrop-filter:blur(22px) saturate(1.5);-webkit-backdrop-filter:blur(22px) saturate(1.5);border-bottom:1px solid rgba(167,139,250,.14)}.topbar:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1.5px;background:linear-gradient(90deg,transparent,#7c3aed 16%,#ff6b9d 55%,#a78bfa 84%,transparent);opacity:.7}.topbar-inner{justify-content:space-between;height:66px}.brand,.topbar-inner{display:flex;align-items:center}.brand{gap:12px}.brand-mark{width:38px;height:38px;border-radius:12px;background:var(--grad);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 6px 18px rgba(124,58,237,.26),0 10px 22px rgba(255,107,157,.16)}.brand-name{font-size:19px;font-weight:700;letter-spacing:1px;color:var(--ink)}.brand-name em{font-style:normal;background:var(--grad-strong);-webkit-background-clip:text;background-clip:text;color:transparent}.brand-slogan{font-size:12px;letter-spacing:1.2px;color:var(--ink-3);margin-top:2px}.btn-reset{display:inline-flex;align-items:center;gap:7px;padding:9px 18px;border-radius:999px;border:1px solid rgba(167,139,250,.22);background:rgba(255,255,255,.65);color:var(--ink-2);font-size:14px;font-weight:500;cursor:pointer;transition:all .18s ease}.btn-reset:hover{border-color:var(--blue);color:var(--blue);box-shadow:var(--shadow)}.hero{text-align:center;padding:46px 0 14px}.pill-demo{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#be185d;background:rgba(255,255,255,.7);border:1px solid rgba(255,107,157,.32);padding:5px 14px;border-radius:999px;margin-bottom:18px;box-shadow:0 2px 10px rgba(255,107,157,.08)}.hero h1{font-size:34px;font-weight:600;letter-spacing:.5px;line-height:1.35;color:var(--ink);display:inline-block}.hero h1 .grad-word{font-style:normal;font-weight:700;letter-spacing:.5px;background:var(--grad-strong);-webkit-background-clip:text;background-clip:text;color:transparent}.hero h1:after{content:"";display:block;width:62%;height:6px;border-radius:999px;background:var(--grad);margin:14px auto 0;opacity:.85;-webkit-mask-image:linear-gradient(90deg,transparent,#000 15%,#000 85%,transparent);mask-image:linear-gradient(90deg,transparent,#000 15%,#000 85%,transparent)}.hero p{margin-top:14px;font-size:15px;letter-spacing:.3px;line-height:1.8;color:var(--ink-2);max-width:660px;margin-left:auto;margin-right:auto}.card{background:var(--card);backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);border:1px solid rgba(255,255,255,.85);border-radius:var(--radius);box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.95);padding:24px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.card:hover{transform:translateY(-3px);box-shadow:0 18px 44px rgba(124,58,237,.12),inset 0 1px 0 rgba(255,255,255,.95);border-color:rgba(167,139,250,.5)}.input-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:28px}.card-head{gap:12px;margin-bottom:18px}.card-head,.card-icon{display:flex;align-items:center}.card-icon{width:40px;height:40px;border-radius:13px;flex:none;justify-content:center;color:#6d28d9;background:linear-gradient(135deg,rgba(124,58,237,.12),rgba(167,139,250,.18),rgba(255,107,157,.12));border:1px solid rgba(167,139,250,.4)}.card-title{font-size:16px;font-weight:600;color:var(--ink)}.card-sub{font-size:12px;color:var(--ink-3);margin-top:2px}.pill{margin-left:auto;font-size:12px;font-weight:500;padding:4px 12px;border-radius:999px;white-space:nowrap;background:rgba(16,185,129,.1);color:#059669;border:1px solid rgba(16,185,129,.24)}.pill.warn{background:rgba(217,119,6,.1);color:var(--amber);border-color:rgba(217,119,6,.25)}.pill.plain{background:rgba(124,58,237,.06);color:var(--ink-2);border-color:rgba(167,139,250,.2)}.mode-tabs{display:flex;gap:8px;margin-bottom:14px}.mode-tab{font-size:13px;font-weight:500;color:var(--ink-2);background:rgba(255,255,255,.7);border:1px solid rgba(167,139,250,.2);border-radius:999px;padding:6px 16px;cursor:pointer;transition:all .15s ease}.mode-tab:hover{color:var(--blue);border-color:rgba(124,58,237,.35)}.mode-tab.active{background:var(--blue);color:#fff;font-weight:600;border-color:transparent;box-shadow:0 4px 12px rgba(124,58,237,.22)}.dropzone{border:2px dashed rgba(124,58,237,.35);border-radius:14px;background:rgba(255,255,255,.55);padding:26px 16px;text-align:center;color:var(--ink-3);cursor:pointer;transition:all .18s ease;display:block}.dropzone:hover{border-color:var(--blue);background:linear-gradient(135deg,rgba(124,58,237,.07),rgba(255,107,157,.07))}.dropzone .dz-icon{color:var(--blue);margin-bottom:8px}.dropzone .dz-main{font-size:14px;font-weight:500;color:var(--ink-2)}.dropzone .dz-sub{font-size:12px;margin-top:4px}.file-chip{display:flex;align-items:center;gap:10px;margin-top:14px;background:rgba(124,58,237,.05);border:1px solid rgba(167,139,250,.18);border-radius:13px;padding:12px 14px}.file-chip .f-icon{color:var(--blue);flex:none}.file-chip .f-name{font-size:14px;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-chip .f-meta{font-size:12px;color:var(--ink-3)}.file-chip .f-actions{margin-left:auto;display:flex;gap:10px;flex:none}.f-link{font-size:13px;color:var(--blue);background:none;border:none;cursor:pointer;padding:2px}.f-link:hover{text-decoration:underline}.error-text{font-size:13px;color:var(--red);margin-top:10px;display:flex;gap:6px;align-items:flex-start}textarea{width:100%;min-height:228px;resize:vertical;border:1px solid rgba(167,139,250,.22);border-radius:14px;padding:14px 16px;font-family:inherit;font-size:14px;line-height:1.7;color:var(--ink);background:rgba(255,255,255,.85);transition:border-color .15s ease,box-shadow .15s ease}textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(124,58,237,.12)}textarea.has-error{border-color:var(--red)}textarea.has-error:focus{box-shadow:0 0 0 3px rgba(220,38,38,.12)}.char-count{text-align:right;font-size:12px;color:var(--ink-3);margin-top:6px}.analyze-row{text-align:center;margin-top:26px}.btn-analyze{display:inline-flex;align-items:center;gap:9px;padding:15px 46px;border-radius:999px;border:none;cursor:pointer;background:var(--blue);color:#fff;font-size:16px;font-weight:700;letter-spacing:.5px;box-shadow:0 10px 24px rgba(124,58,237,.26),0 6px 14px rgba(255,107,157,.16);transition:transform .15s ease,box-shadow .15s ease,background .15s ease,opacity .15s ease}.btn-analyze:hover:not(:disabled){background:#6d28d9;transform:translateY(-2px);box-shadow:0 14px 30px rgba(124,58,237,.34),0 8px 18px rgba(255,107,157,.22)}.btn-analyze:active:not(:disabled){transform:translateY(0)}.btn-analyze:disabled{opacity:.5;cursor:not-allowed}.analyze-hint{font-size:12px;color:var(--ink-3);margin-top:12px}.results{margin-top:52px}.results-head{gap:14px;margin-bottom:20px;flex-wrap:wrap}.results-head,.results-head h2{display:flex;align-items:center}.results-head h2{font-size:22px;font-weight:700;color:var(--ink);gap:10px}.results-head h2:before{content:"";width:6px;height:22px;border-radius:999px;background:var(--grad)}.results-head .pill-demo{margin-left:auto;margin-bottom:0}.result-card{position:relative;overflow:hidden;background:var(--card);backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);border:1px solid rgba(255,255,255,.85);border-radius:var(--radius);box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.95);padding:28px;margin-bottom:20px}.result-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--grad);opacity:.9}.result-title{display:flex;align-items:center;gap:12px;margin-bottom:6px;flex-wrap:wrap}.result-title .card-icon{width:38px;height:38px;border-radius:12px}.result-title .t{font-size:17px;font-weight:700;letter-spacing:.2px;color:var(--ink)}.result-title .sub{font-size:12px;color:var(--ink-3);margin-left:auto}.score-row{display:flex;align-items:center;gap:28px;margin:20px 0 24px}.score-num{font-size:58px;font-weight:800;line-height:1;background:var(--grad-strong);-webkit-background-clip:text;background-clip:text;color:transparent}.score-label{font-size:13px;color:var(--ink-3);margin-top:2px}.bar-wrap{flex:1}.bar{height:14px;background:rgba(167,139,250,.18);overflow:hidden}.bar,.bar-fill{border-radius:999px}.bar-fill{height:100%;background:var(--grad);transition:width 1s ease}.bar-caption{display:flex;justify-content:space-between;font-size:12px;color:var(--ink-3);margin-top:7px}.match-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px}.sub-block{background:rgba(255,255,255,.6);border:1px solid rgba(167,139,250,.16);border-radius:14px;padding:18px}.sub-block h4{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--ink);margin-bottom:12px}.sub-block ul{list-style:none;display:flex;flex-direction:column;gap:9px}.sub-block li{display:flex;gap:9px;font-size:13.5px;color:var(--ink-2);line-height:1.6}.sub-block li svg{flex:none;margin-top:3px}.sub-block p{font-size:13.5px;color:var(--ink-2)}.ok{color:var(--emerald)}.warn{color:var(--amber)}.empty-hint{font-size:13px;color:var(--ink-3);font-style:normal}.sugg{display:flex;gap:14px;padding:15px 0;border-bottom:1px dashed rgba(167,139,250,.22);align-items:flex-start;border-radius:10px;transition:background .15s ease}.sugg:hover{background:rgba(124,58,237,.025)}.sugg:last-child{border-bottom:none;padding-bottom:4px}.sugg:first-child{padding-top:2px}.sugg .tag{flex:none;font-size:12px;font-weight:600;padding:4px 11px;border-radius:999px;margin-top:2px;background:rgba(124,58,237,.1);color:#6d28d9;border:1px solid rgba(124,58,237,.22)}.sugg .tag.v{background:rgba(192,38,211,.1);color:#a21caf;border-color:rgba(192,38,211,.24)}.sugg .tag.g{background:rgba(255,107,157,.12);color:#db2777;border-color:rgba(255,107,157,.3)}.sugg .tag.a{background:rgba(217,119,6,.1);color:var(--amber);border-color:rgba(217,119,6,.24)}.sugg p{font-size:14px;color:var(--ink-2);line-height:1.7}.btn-copy{display:inline-flex;align-items:center;gap:6px;margin-left:auto;font-size:13px;font-weight:500;color:var(--blue);background:rgba(255,255,255,.7);border:1px solid rgba(124,58,237,.22);border-radius:999px;padding:7px 16px;cursor:pointer;transition:all .15s ease}.btn-copy:hover{background:rgba(124,58,237,.08)}.letter{margin-top:18px;background:linear-gradient(180deg,rgba(255,255,255,.85),rgba(253,247,252,.55));border:1px solid rgba(167,139,250,.16);border-radius:14px;padding:28px 30px;font-size:15px;line-height:1.9;color:var(--ink-2);white-space:pre-line}.qa-item{border-bottom:1px solid rgba(167,139,250,.18)}.qa-item:last-child{border-bottom:none}.qa-head{display:flex;align-items:center;gap:14px;width:100%;text-align:left;background:none;border:none;cursor:pointer;padding:16px 2px;font-family:inherit;border-radius:12px}.qa-head:hover .qa-q{color:var(--blue)}.qa-num{flex:none;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#6d28d9;background:linear-gradient(135deg,rgba(124,58,237,.13),rgba(167,139,250,.2),rgba(255,107,157,.15));transition:all .2s ease}.qa-item.is-open .qa-num{background:var(--grad);color:#fff}.qa-q{font-size:15px;font-weight:600;color:var(--ink);line-height:1.55;transition:color .15s ease}.qa-chevron{margin-left:auto;flex:none;color:var(--ink-3);transition:transform .2s ease}.qa-item.is-open .qa-chevron{transform:rotate(180deg)}.qa-body{display:none;padding:2px 2px 18px 44px}.qa-item.is-open .qa-body{display:block}.qa-body .a-tag{display:inline-block;font-size:12px;font-weight:600;color:#db2777;background:rgba(255,107,157,.12);border:1px solid rgba(255,107,157,.3);padding:3px 11px;border-radius:999px;margin-bottom:9px}.qa-body p{font-size:14px;color:var(--ink-2);line-height:1.8}.status-card{background:var(--card);backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);border:1px solid rgba(255,255,255,.85);border-radius:var(--radius);box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.95);padding:56px 28px;text-align:center;margin-top:8px}.spinner{width:38px;height:38px;border:3px solid rgba(167,139,250,.22);border-top:3px solid var(--blue);border-radius:50%;margin:0 auto 18px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.status-card h3{font-size:17px;font-weight:600;color:var(--ink)}.status-card p{font-size:14px;color:var(--ink-2);margin-top:8px}.status-icon{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.status-icon.error{background:rgba(220,38,38,.1);color:var(--red)}.btn-ghost{display:inline-flex;align-items:center;gap:7px;margin-top:20px;padding:10px 24px;border-radius:999px;font-size:14px;font-weight:500;cursor:pointer;border:1px solid rgba(167,139,250,.22);background:rgba(255,255,255,.7);color:var(--ink-2);transition:all .15s ease}.btn-ghost:hover{border-color:var(--blue);color:var(--blue)}.btn-ghost.primary{background:var(--blue);color:#fff;font-weight:600;border-color:transparent;box-shadow:0 8px 20px rgba(124,58,237,.24)}.btn-ghost.primary:hover{background:#6d28d9;transform:translateY(-1px)}.status-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}footer{margin-top:56px;padding:30px 0 40px;border-top:1px solid rgba(167,139,250,.14);text-align:center}footer p{font-size:13px;color:var(--ink-3)}#toast{position:fixed;bottom:36px;left:50%;transform:translate(-50%,20px);background:#1f0f3d;color:#fff;font-size:14px;padding:11px 22px;border-radius:999px;opacity:0;pointer-events:none;transition:all .25s ease;z-index:99;box-shadow:0 8px 24px rgba(31,15,61,.26);max-width:90vw}#toast.show{opacity:1;transform:translate(-50%)}@media (max-width:860px){.input-grid,.match-grid{grid-template-columns:1fr}.score-row{flex-direction:column;align-items:flex-start;gap:16px}.hero h1{font-size:26px}}.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px 20px}.auth-card{width:100%;max-width:420px;background:var(--card);backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);border:1px solid rgba(255,255,255,.85);border-radius:24px;box-shadow:var(--shadow-lg),inset 0 1px 0 rgba(255,255,255,.95);padding:40px 36px 34px}.auth-brand{display:flex;align-items:center;gap:10px;margin-bottom:6px}.auth-brand .brand-mark{width:34px;height:34px;border-radius:10px}.auth-brand span{font-size:16px;font-weight:700;letter-spacing:.5px;color:var(--ink)}.auth-brand em{font-style:normal;background:var(--grad-strong);-webkit-background-clip:text;background-clip:text;color:transparent}.auth-title{font-size:24px;font-weight:700;margin-top:20px;color:var(--ink)}.auth-sub{font-size:14px;color:var(--ink-3);margin-top:6px;margin-bottom:24px}.auth-form{display:flex;flex-direction:column;gap:8px}.auth-label{font-size:13px;font-weight:600;color:var(--ink-2);margin-top:10px}.auth-field{width:100%;padding:12px 16px;border-radius:12px;font-size:15px;font-family:inherit;border:1px solid rgba(167,139,250,.24);background:rgba(255,255,255,.85);color:var(--ink);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.auth-field:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(124,58,237,.12)}.auth-btn{margin-top:22px;width:100%;padding:13px;border:none;border-radius:999px;background:var(--grad);color:#fff;font-size:16px;font-weight:700;letter-spacing:2px;cursor:pointer;box-shadow:0 10px 24px rgba(124,58,237,.28);transition:transform .15s ease,box-shadow .15s ease}.auth-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 28px rgba(124,58,237,.34)}.auth-btn:disabled{opacity:.6;cursor:not-allowed}.auth-error{background:rgba(220,38,38,.08);border:1px solid rgba(220,38,38,.24);color:var(--red);font-size:13px;padding:10px 14px;border-radius:10px;margin-bottom:6px}.auth-success{background:rgba(16,185,129,.08);border:1px solid rgba(16,185,129,.26);color:#047857;font-size:14px;padding:14px 16px;border-radius:12px;line-height:1.7}.auth-switch{text-align:center;font-size:14px;color:var(--ink-3);margin-top:22px}.auth-switch a{color:var(--blue);font-weight:600;text-decoration:none}.auth-switch a:hover{text-decoration:underline}.topbar-actions{gap:10px}.topbar-actions,.user-chip{display:flex;align-items:center}.user-chip{gap:8px;padding:5px 8px 5px 5px;border-radius:999px;background:rgba(255,255,255,.65);border:1px solid rgba(167,139,250,.22)}.user-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--grad);color:#fff;font-size:13px;font-weight:700}.user-name{font-size:13px;font-weight:600;color:var(--ink-2);max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-signout{border:none;background:none;cursor:pointer;color:var(--ink-3);font-size:12px;padding:4px 6px;border-radius:8px;transition:all .15s ease}.btn-signout:hover{color:var(--red);background:rgba(220,38,38,.08)}