@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&display=swap";:root{--bg: #070b14;--bg-elevated: rgba(15, 23, 42, .72);--card: rgba(17, 24, 39, .65);--card-border: rgba(148, 163, 184, .12);--text: #f1f5f9;--muted: #94a3b8;--dim: #64748b;--accent: #0055ff;--accent-soft: rgba(0, 85, 255, .14);--accent-glow: rgba(0, 85, 255, .38);--blue: #3b82f6;--success: #34d399;--warn: #fbbf24;--radius: 14px;--radius-sm: 10px;--shadow: 0 24px 48px rgba(0, 0, 0, .35);color-scheme:dark;font-family:DM Sans,ui-sans-serif,system-ui,sans-serif;line-height:1.55;color:var(--text);background:var(--bg)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--bg)}.app{position:relative;min-height:100vh;overflow-x:hidden}.bg-glow{position:fixed;border-radius:50%;filter:blur(80px);pointer-events:none;z-index:0}.bg-glow-a{width:420px;height:420px;top:-120px;left:-80px;background:radial-gradient(circle,rgba(0,85,255,.16),transparent 70%)}.bg-glow-b{width:500px;height:500px;bottom:-180px;right:-100px;background:radial-gradient(circle,rgba(56,189,248,.12),transparent 70%)}.header,.layout,.footer{position:relative}.header{z-index:20}.layout,.footer{z-index:1}.card{background:var(--card);border:1px solid var(--card-border);border-radius:var(--radius);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow)}.header{padding:1.25rem 1.75rem 1rem;border-bottom:1px solid var(--card-border)}.brand{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.logo-mark{flex-shrink:0;filter:drop-shadow(0 4px 16px var(--accent-glow))}.zoomify-logo{display:block;object-fit:contain}.brand h1{margin:0;font-size:1.65rem;font-weight:700;letter-spacing:-.03em;display:flex;align-items:baseline;gap:.5rem}.brand-tag{font-size:.72rem;font-weight:500;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}.subtitle{margin:.2rem 0 0;color:var(--muted);font-size:.92rem;max-width:36rem}.status-pill{padding:.45rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;letter-spacing:.02em;border:1px solid transparent}.header-actions{margin-left:auto;display:flex;align-items:center;gap:.5rem;flex-shrink:0}.sign-out-btn{padding:.45rem .85rem;font-size:.82rem;border-radius:var(--radius-sm)}.status-pill.ok{background:#34d3991f;border-color:#34d39959;color:var(--success)}.status-pill.warn{background:#fbbf241a;border-color:#fbbf2459;color:var(--warn)}.toolbar{display:flex;flex-wrap:wrap;gap:.85rem;align-items:end;padding:.85rem 1rem;position:relative;z-index:10}.toolbar-byok{border-color:#34d39947;background:linear-gradient(135deg,#064e3b38,#111827b8);box-shadow:0 8px 24px #064e3b1a}.toolbar-byok .field>label,.toolbar-byok .field>span{color:#6ee7b7}.toolbar-controls{border-color:#94a3b82e;background:#1e293b8c}.field{display:flex;flex-direction:column;gap:.35rem;font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--dim)}.field>label,.field>span{font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit}.field select,.field input[type=text],.field input[type=password]{min-width:11rem;padding:.55rem .75rem;border-radius:var(--radius-sm);border:1px solid rgba(148,163,184,.18);background:#0f172acc;color:var(--text);font:inherit;font-size:.9rem;transition:border-color .15s,box-shadow .15s}.field select{min-width:14rem;padding-right:2.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#0f172acc;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M2.5 4.5L6 8l3.5-3.5' stroke='%2394a3b8' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .65rem center;background-size:12px}.field-model{min-width:18rem;flex:1;max-width:28rem}.field-key{flex:1 1 100%;min-width:14rem;max-width:100%}.field-label-row{display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap}.field-external-link{font-size:.65rem;font-weight:500;text-transform:none;letter-spacing:0;color:var(--blue);text-decoration:none}.field-external-link:hover{text-decoration:underline}.toolbar-byok .field-external-link{color:#6ee7b7}.key-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.key-status{flex-shrink:0;white-space:nowrap}.key-row input[type=password]{flex:1;min-width:0;width:100%}.key-saved{flex-shrink:0;padding:.2rem .55rem;border-radius:var(--radius-sm);font-size:.68rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--success);background:#34d3991f;border:1px solid rgba(52,211,153,.28)}.key-clear{flex-shrink:0;padding:.45rem .65rem;font-size:.78rem}.key-error{margin:.15rem 0 0;font-size:.72rem;color:#f87171;text-transform:none;letter-spacing:normal;font-weight:500}.model-combobox{position:relative}.model-combobox-input{width:100%;min-width:14rem;padding:.55rem 2rem .55rem .75rem;border-radius:var(--radius-sm);border:1px solid rgba(148,163,184,.18);background:#0f172acc;color:var(--text);font:inherit;font-size:.9rem;transition:border-color .15s,box-shadow .15s}.model-combobox-input:focus{outline:none;border-color:#0055ff80;box-shadow:0 0 0 3px var(--accent-soft)}.model-combobox-panel{position:absolute;z-index:30;top:calc(100% + .35rem);left:0;right:0;max-height:16.5rem;overflow-y:auto;padding:.35rem;border-radius:var(--radius-sm);border:1px solid var(--card-border);background:#0f172afa;box-shadow:var(--shadow)}.model-combobox-option{display:block;width:100%;text-align:left;padding:.5rem .65rem;border:none;border-radius:8px;background:transparent;color:var(--text);font:inherit;font-size:.85rem;cursor:pointer}.model-combobox-option:hover,.model-combobox-option.active{background:#0055ff1f}.model-combobox-option.selected{color:var(--accent);font-weight:600}.model-combobox-empty,.model-combobox-hint{margin:0;padding:.5rem .65rem;font-size:.8rem;color:var(--dim)}.model-combobox-hint{border-top:1px solid var(--card-border);margin-top:.25rem;font-style:italic}.field select:focus,.field input:focus{outline:none;border-color:#0055ff80;box-shadow:0 0 0 3px var(--accent-soft)}.field-check{flex-direction:row;align-items:center;gap:.5rem;text-transform:none;font-size:.85rem;color:var(--muted);padding-bottom:.35rem}.field-check input{accent-color:var(--accent)}.btn{padding:.55rem 1rem;border-radius:var(--radius-sm);font:inherit;font-size:.88rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:transform .12s,box-shadow .15s,background .15s}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:linear-gradient(135deg,#3b82f6,#05f);color:#fff;box-shadow:0 8px 24px var(--accent-glow)}.btn.primary:hover:not(:disabled){box-shadow:0 12px 28px var(--accent-glow)}.btn.ghost{background:#33415566;border-color:#94a3b833;color:var(--text)}.btn.danger{background:#ef44441f;border:1px solid rgba(248,113,113,.35);color:#fca5a5}.btn.danger:hover:not(:disabled){background:#ef444433;border-color:#f871718c;color:#fecaca;box-shadow:0 4px 16px #ef444426}.schema-info{margin:.65rem 0 0;font-size:.82rem;color:var(--accent);font-weight:500}.schema-cta{margin-top:.85rem;padding:.85rem 2.25rem .85rem 1rem;display:flex;gap:.75rem;align-items:flex-start;position:relative;z-index:1;overflow:hidden;opacity:1;transform:translateY(0);max-height:8rem;transition:opacity .5s ease,transform .5s ease,max-height .5s ease,margin-top .5s ease,padding .5s ease;animation:schemaCtaIn .45s ease;background:linear-gradient(135deg,#1e3a8a59,#0f172a80);border-color:#38bdf840}.schema-cta.leaving{opacity:0;transform:translateY(-8px);max-height:0;margin-top:0;padding-top:0;padding-bottom:0;pointer-events:none}@keyframes schemaCtaIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.schema-cta-close{position:absolute;top:.45rem;right:.45rem;width:1.65rem;height:1.65rem;display:flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:6px;background:transparent;color:var(--muted);font-size:1.25rem;line-height:1;cursor:pointer;transition:color .15s,background .15s}.schema-cta-close:hover{color:var(--text);background:#94a3b81f}.schema-cta strong{display:block;font-size:.9rem;margin-bottom:.15rem}.schema-cta p{margin:0;font-size:.85rem;color:var(--muted);line-height:1.45}.schema-cta a{color:var(--blue);text-decoration:none;font-weight:600}.schema-cta a:hover{text-decoration:underline}.cta-icon{opacity:.9;flex-shrink:0}.layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,300px);gap:1rem;padding:1rem 1.75rem 1.5rem;min-height:calc(100vh - 220px);align-items:stretch}@media(max-width:640px){.layout{grid-template-columns:1fr}.header-actions{margin-left:0;width:100%;justify-content:flex-end}}.panel{display:flex;flex-direction:column;min-height:520px;height:100%;padding:1rem;overflow:hidden}.chat-panel,.tree-panel{min-height:calc(100vh - 280px)}.tree-panel{max-width:300px}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.panel-head h2{margin:0;font-size:.95rem;font-weight:600;letter-spacing:.02em}.panel-meta{font-size:.72rem;color:var(--dim);text-transform:uppercase;letter-spacing:.06em}.live-badge{font-size:.72rem;font-weight:600;color:var(--accent);animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem;min-height:280px;padding-right:.25rem}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem 1rem;margin:auto;width:100%}.empty-brand{display:flex;flex-direction:column;align-items:center;gap:.1rem;margin-bottom:1rem}.empty-logo{opacity:.85;margin:0;filter:drop-shadow(0 8px 24px var(--accent-glow))}.empty-brand-name{margin:.15rem 0 0;font-size:.95rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.empty-title{margin:0 0 .35rem;font-size:1.1rem;font-weight:600}.hint{color:var(--dim);font-size:.88rem;margin:0;line-height:1.5}.msg{padding:.85rem 1rem;border-radius:var(--radius-sm);border:1px solid rgba(148,163,184,.12);animation:fadeIn .25s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.msg-user{background:#33415559;margin-left:1.5rem}.msg-assistant{background:#0055ff12;border-color:#05f3;margin-right:1.5rem}.msg-head{display:flex;align-items:center;gap:.4rem;margin-bottom:.35rem}.msg-head strong{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.msg-body{font-size:.92rem;color:var(--text)}.msg-user .msg-body{white-space:pre-wrap}.markdown-body{line-height:1.6;word-break:break-word}.markdown-body>:first-child{margin-top:0}.markdown-body>:last-child{margin-bottom:0}.markdown-body p,.markdown-body ul,.markdown-body ol,.markdown-body pre,.markdown-body blockquote,.markdown-body table{margin:.65em 0}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4{margin:1em 0 .45em;font-weight:600;line-height:1.3;color:var(--text)}.markdown-body h1{font-size:1.25rem}.markdown-body h2{font-size:1.1rem}.markdown-body h3{font-size:1rem}.markdown-body ul,.markdown-body ol{padding-left:1.35rem}.markdown-body li+li{margin-top:.25em}.markdown-body code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.85em;padding:.12em .35em;border-radius:4px;background:#0f172a8c;border:1px solid rgba(148,163,184,.15)}.markdown-body pre{padding:.75rem .85rem;border-radius:var(--radius-sm);background:#0f172ad9;border:1px solid rgba(148,163,184,.15);overflow-x:auto}.markdown-body pre code{padding:0;border:none;background:transparent;font-size:.84rem}.markdown-body blockquote{padding-left:.85rem;border-left:3px solid rgba(0,85,255,.45);color:var(--muted)}.markdown-body a{color:var(--blue);text-decoration:none}.markdown-body a:hover{text-decoration:underline}.markdown-body table{width:100%;border-collapse:collapse;font-size:.88rem}.markdown-body th,.markdown-body td{padding:.45rem .6rem;border:1px solid rgba(148,163,184,.2);text-align:left}.markdown-body th{background:#0f172a99;font-weight:600}.markdown-body hr{border:none;border-top:1px solid var(--card-border);margin:1rem 0}.composer{border-top:1px solid var(--card-border);padding-top:.85rem}.composer-preview{margin-bottom:.5rem}.composer-preview img{height:48px;border-radius:8px;border:2px solid rgba(0,85,255,.45);box-shadow:0 4px 12px #0000004d}.composer-box{position:relative;border-radius:var(--radius-sm);border:1px solid rgba(148,163,184,.18);background:#0f172acc;transition:border-color .15s,box-shadow .15s}.composer-box:focus-within{border-color:#0055ff80;box-shadow:0 0 0 3px var(--accent-soft)}.composer-box textarea{width:100%;min-height:88px;padding:.7rem .85rem 2.75rem;border:none;background:transparent;color:var(--text);font:inherit;font-size:.9rem;resize:none;outline:none}.composer-actions{position:absolute;right:.45rem;bottom:.45rem;display:flex;align-items:center;justify-content:flex-end;gap:.35rem;pointer-events:none}.composer-icon-btn{pointer-events:auto;position:relative;display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:none;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;transition:color .15s,background .15s}.composer-icon-btn svg{width:1.15rem;height:1.15rem}.composer-icon-btn:hover:not(:disabled){color:var(--text);background:#94a3b81f}.composer-icon-btn:disabled{opacity:.4;cursor:not-allowed}.composer-icon-btn input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.composer-send{color:#fff;background:linear-gradient(135deg,#3b82f6,#05f);box-shadow:0 4px 14px var(--accent-glow)}.composer-send:hover:not(:disabled){color:#fff;background:linear-gradient(135deg,#60a5fa,#2563eb)}.composer-send:disabled{background:#33415580;box-shadow:none;color:var(--dim)}@keyframes spin{to{transform:rotate(360deg)}}.composer-send .spin{animation:spin .8s linear infinite}.trail-host{flex:1;min-height:0;display:flex;flex-direction:column;overflow:auto;border-radius:var(--radius-sm);background:#0f172ab8;border:1px solid var(--card-border);padding:.5rem}.trail-host--empty{display:flex;align-items:center;justify-content:center;min-height:12rem}.trail-host-inner{flex:1;display:flex;flex-direction:column;justify-content:flex-end;width:100%;min-height:100%}.trail-host-inner .trail{flex:1;display:flex;flex-direction:column;justify-content:flex-end;width:100%;min-height:100%;box-sizing:border-box}.trail-host-inner .trail .crumbs{align-items:stretch;width:100%}.trail-host-inner .trail .crumb{display:flex;width:100%;max-width:none;box-sizing:border-box}.trail-host-inner .trail .crumb .lbl{flex:1;min-width:0;max-width:none}.trail-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.55rem;padding:1.25rem 1rem;max-width:15rem}.trail-empty-icon{display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:10px;background:#0055ff1f;color:#60a5fa}.trail-empty-icon .feature-icon{margin:0}.trail-empty-title{margin:0;font-size:.82rem;font-weight:600;color:var(--text);letter-spacing:-.01em}.trail-empty-text{margin:0;font-size:.78rem;line-height:1.45;color:var(--dim)}.trail-host .hint{color:var(--dim);padding:.75rem .5rem;font-style:italic}.zmodal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:1rem}.zmodal .zbackdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:none;padding:0;cursor:pointer;background:#070b14d1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.zmodal .zcontent{position:relative;display:flex;flex-direction:column;align-items:center;max-width:min(92vw,1100px);max-height:92vh;padding:1rem;border-radius:var(--radius);border:1px solid var(--card-border);background:#111827f2;box-shadow:var(--shadow)}.zmodal .zcontent img{max-width:88vw;max-height:calc(92vh - 4rem);display:block;border-radius:8px;border:1px solid rgba(148,163,184,.2);object-fit:contain;background:#0f172a}.zmodal .zcap{margin-top:.65rem;font-size:.85rem;color:var(--muted);text-align:center}.zmodal .zclose{position:absolute;top:.5rem;right:.5rem;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border:none;border-radius:8px;background:#0f172ae6;color:var(--text);font-size:1.25rem;line-height:1;cursor:pointer;transition:background .15s}.zmodal .zclose:hover{background:#334155e6}.footer{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;font-size:.75rem;color:var(--dim);border-top:1px solid var(--card-border)}.footer a{color:var(--blue);text-decoration:none}.footer a:hover{text-decoration:underline}.toast-stack{position:fixed;right:1rem;bottom:1rem;z-index:10050;display:flex;flex-direction:column;gap:.55rem;max-width:min(22rem,calc(100vw - 2rem));pointer-events:none}.toast{display:block;padding:.75rem .9rem;border-radius:12px;border:1px solid rgba(248,113,113,.35);background:#450a0aeb;color:#fecaca;font-size:.85rem;line-height:1.45;box-shadow:0 12px 32px #00000059;animation:toast-in .25s ease-out}.toast-leaving{animation:toast-out .4s ease-in forwards}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(8px)}}.landing{position:relative;min-height:100vh;display:flex;flex-direction:column;background:#070b14;color:#f1f5f9;overflow:hidden}.landing-glow{position:fixed;border-radius:50%;filter:blur(80px);pointer-events:none;z-index:0}.landing-glow-a{width:420px;height:420px;top:-120px;left:-80px;background:radial-gradient(circle,rgba(0,85,255,.18),transparent 70%)}.landing-glow-b{width:500px;height:500px;bottom:-180px;right:-100px;background:radial-gradient(circle,rgba(56,189,248,.12),transparent 70%)}.landing-nav,.landing-hero,.landing-footer{position:relative;z-index:1}.landing-nav{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.75rem;border-bottom:1px solid rgba(148,163,184,.12)}.landing-brand{display:flex;align-items:center;gap:.65rem;font-weight:700;font-size:1.1rem}.landing-links{display:flex;align-items:center;gap:.75rem}.landing-link{color:#94a3b8;text-decoration:none;font-size:.9rem}.landing-link:hover{color:#f1f5f9}.landing-btn{display:inline-flex;align-items:center;justify-content:center;padding:.55rem 1rem;border-radius:10px;background:linear-gradient(135deg,#3b82f6,#05f);color:#fff;text-decoration:none;font-weight:600;font-size:.9rem;box-shadow:0 8px 24px #0055ff59}.landing-btn.ghost{background:#33415566;border:1px solid rgba(148,163,184,.2);box-shadow:none;color:#f1f5f9}.landing-btn-lg{padding:.7rem 1.25rem;font-size:.95rem}.landing-hero{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 1.5rem 2rem;max-width:52rem;width:100%;margin:0 auto}.landing-logo{filter:drop-shadow(0 8px 24px rgba(0,85,255,.35))}.landing-kicker{margin:.5rem 0 .75rem;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#64748b}.landing-hero h1{margin:0 0 1rem;font-size:clamp(1.85rem,4vw,2.5rem);line-height:1.15;letter-spacing:-.03em}.landing-lead{margin:0 0 1.5rem;color:#94a3b8;line-height:1.6;font-size:1rem}.landing-cta{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-bottom:2rem}.landing-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;width:100%;margin-top:.5rem}@media(max-width:768px){.landing-features{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.landing-features{grid-template-columns:1fr}}.feature-card{text-align:left;padding:.85rem .9rem;border-radius:12px;border:1px solid rgba(148,163,184,.12);background:#1118278c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:border-color .15s,box-shadow .15s}.feature-icon{display:inline-flex;align-items:center;justify-content:center;width:1.85rem;height:1.85rem;margin-bottom:.55rem;border-radius:8px;background:#0055ff1f;color:#60a5fa}.feature-icon svg{width:1.15rem;height:1.15rem}.feature-card:hover{border-color:#0055ff59;box-shadow:0 8px 24px #0055ff14}.feature-card h3{margin:0 0 .35rem;font-size:.82rem;font-weight:600;color:#f1f5f9;letter-spacing:-.01em}.feature-card p{margin:0;font-size:.75rem;line-height:1.45;color:#64748b}.landing-footer{padding:1rem;text-align:center;font-size:.75rem;color:#64748b;border-top:1px solid rgba(148,163,184,.12)}.landing-footer a{color:#3b82f6;text-decoration:none}.landing-footer a:hover{text-decoration:underline}.landing-pricing-main{position:relative;z-index:1;flex:1}.auth-page{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem 1rem;background:#070b14;overflow:hidden}.auth-glow{position:fixed;border-radius:50%;filter:blur(80px);pointer-events:none;z-index:0}.auth-glow-a{width:420px;height:420px;top:-120px;left:-80px;background:radial-gradient(circle,rgba(0,85,255,.2),transparent 70%)}.auth-glow-b{width:500px;height:500px;bottom:-180px;right:-100px;background:radial-gradient(circle,rgba(56,189,248,.14),transparent 70%)}.auth-shell{position:relative;z-index:1;width:100%;max-width:440px;display:flex;flex-direction:column;gap:1.25rem}.auth-top{display:flex;align-items:center;justify-content:space-between;gap:1rem}.auth-brand{display:inline-flex;align-items:center;gap:.65rem;color:#f1f5f9;text-decoration:none;font-weight:700;font-size:1.05rem}.auth-brand .zoomify-logo{filter:drop-shadow(0 4px 16px rgba(0,85,255,.35))}.auth-back{color:#94a3b8;text-decoration:none;font-size:.85rem;transition:color .15s ease}.auth-back:hover{color:#f1f5f9}.auth-card-wrap{width:100%}.auth-footnote{margin:0;text-align:center;font-size:.75rem;color:#64748b}.auth-footnote a{color:#3b82f6;text-decoration:none}.auth-footnote a:hover{text-decoration:underline}.auth-page-inner{width:100%;max-width:420px}.pricing-section{width:100%;max-width:72rem;margin:0 auto;padding:2rem 1.5rem 3rem}.pricing-intro{text-align:center;max-width:42rem;margin:0 auto 1.75rem}.pricing-kicker{margin:0 0 .5rem;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#64748b}.pricing-intro h2{margin:0 0 .75rem;font-size:clamp(1.35rem,3vw,1.85rem);line-height:1.2;letter-spacing:-.02em}.pricing-lead{margin:0 0 1rem;color:#94a3b8;line-height:1.6;font-size:.95rem}.pricing-lead code{font-size:.85em;color:#cbd5e1;background:#33415580;padding:.1rem .35rem;border-radius:4px}.pricing-badges{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:1rem}.pricing-badge{font-size:.75rem;padding:.25rem .6rem;border-radius:999px;border:1px solid rgba(56,189,248,.35);color:#7dd3fc;background:#0e749026}.billing-toggle{display:inline-flex;padding:.2rem;border-radius:10px;background:#1e293bcc;border:1px solid rgba(148,163,184,.15);margin:0;min-inline-size:0}.billing-toggle-legend{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.billing-toggle button{border:none;background:transparent;color:#94a3b8;padding:.45rem .9rem;border-radius:8px;font-size:.85rem;cursor:pointer}.billing-toggle button.active{background:#0055ff40;color:#f1f5f9}.pricing-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;align-items:start}@media(max-width:960px){.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.pricing-grid{grid-template-columns:1fr}}.pricing-card{position:relative;text-align:left;padding:1.25rem 1rem 1.1rem;border-radius:14px;border:1px solid rgba(148,163,184,.15);background:#111827a6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;flex-direction:column;gap:.5rem}.pricing-card.featured{border-color:#0055ff73;box-shadow:0 12px 32px #0055ff1f}.pricing-card.premium{border-color:#a855f759;background:linear-gradient(160deg,#4c1d952e,#111827a6)}.pricing-popular{position:absolute;top:.65rem;right:.65rem;font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:#93c5fd}.premium-tag{color:#d8b4fe}.pricing-card.premium .pricing-popular{position:static;display:block;margin:0 0 .35rem}.pricing-card.premium h3{padding-right:0}.pricing-card h3{margin:0;padding-right:4.5rem;font-size:1.05rem;line-height:1.25}.pricing-desc{margin:0;font-size:.8rem;line-height:1.45;color:#64748b}.pricing-price{margin:0}.pricing-price .amount{font-size:1.65rem;font-weight:700;letter-spacing:-.03em}.pricing-price .amount.custom{font-size:1.25rem}.pricing-price .period{margin-left:.15rem;font-size:.85rem;color:#64748b}.pricing-limit{margin:0;font-size:.8rem;color:#94a3b8;font-weight:600}.pricing-highlights{margin:.25rem 0 0;padding-left:1.1rem}.pricing-highlights li{font-size:.78rem;line-height:1.45;color:#94a3b8;margin-bottom:.35rem}.pricing-highlights li:last-child{margin-bottom:0}.pricing-cta{display:inline-flex;align-items:center;justify-content:center;width:100%;margin-top:.85rem;padding:.55rem .85rem;border-radius:10px;background:linear-gradient(135deg,#3b82f6,#05f);color:#fff;text-decoration:none;font-weight:600;font-size:.85rem;text-align:center;box-sizing:border-box}.pricing-cta.ghost{background:#33415573;border:1px solid rgba(148,163,184,.2);color:#f1f5f9}.pricing-cta.disabled{opacity:.55;cursor:not-allowed}.pricing-footnote{margin:1.25rem 0 0;text-align:center;font-size:.75rem;color:#64748b;line-height:1.5}.pricing-footnote a{color:#3b82f6;text-decoration:none}.pricing-footnote a:hover{text-decoration:underline}.pricing-loading,.pricing-error{text-align:center;color:#94a3b8;padding:2rem}.pricing-error{color:#fca5a5}.subscription-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:.75rem 1rem;margin-top:.5rem;margin-bottom:.85rem;border:1px solid rgba(99,102,241,.35);background:linear-gradient(135deg,#4338ca2e,#0055ff1a);box-shadow:0 8px 24px #4338ca14}.subscription-banner.free{border-color:#6366f159;background:linear-gradient(135deg,#4338ca2e,#0055ff1a)}.subscription-banner:not(.free){border-color:#05f6;background:linear-gradient(135deg,#0055ff29,#38bdf81a)}.subscription-main{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .75rem}.subscription-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:#a5b4fc;width:100%}.subscription-plan{font-size:.95rem;color:#f1f5f9}.subscription-usage{font-size:.8rem;color:#c7d2fe}.subscription-status{font-size:.7rem;padding:.15rem .45rem;border-radius:999px;background:#22c55e26;color:#86efac;text-transform:capitalize}.subscription-upgrade{display:inline-flex;align-items:center;padding:.45rem .85rem;border-radius:10px;background:linear-gradient(135deg,#3b82f6,#05f);color:#fff;text-decoration:none;font-weight:600;font-size:.82rem;white-space:nowrap}.subscription-banner.free .subscription-upgrade{background:#4338ca59;border:1px solid rgba(165,180,252,.35)}.subscription-api-key{display:flex;flex-direction:column;gap:.35rem;flex:1 1 16rem;min-width:12rem;max-width:28rem}.subscription-api-key-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.subscription-api-key-field{display:flex;align-items:stretch;flex:1 1 12rem;min-width:10rem;border:1px solid rgba(148,163,184,.25);border-radius:10px;overflow:hidden;background:#0f172a8c}.subscription-api-key-input{flex:1;min-width:0;border:none;background:transparent;color:#e2e8f0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.72rem;padding:.45rem .6rem}.subscription-api-key-input:focus{outline:none}.subscription-api-key-eye{border:none;border-left:1px solid rgba(148,163,184,.2);background:#1e293bcc;color:#cbd5e1;font-size:.68rem;font-weight:600;padding:0 .65rem;cursor:pointer;white-space:nowrap}.subscription-api-key-eye:disabled{opacity:.45;cursor:not-allowed}.subscription-api-key-eye:not(:disabled):hover{background:#334155f2;color:#f8fafc}.subscription-api-key-create,.subscription-api-key-rotate{font-size:.78rem;padding:.4rem .75rem}
