:root{--portal-theme-primary:#092329;--portal-theme-secondary:#0f2e36;--portal-theme-color:#2a9988;--text-primary-color:#90a7ad;--text-white-color:#fff;--text-contrast-color:#fff;--input-border-color:hsla(0,0%,100%,.36);--portal-theme-light:#11353e;--shadow-color:rgba(0,0,0,.35);--error-color:#f87171;--success-color:#4ade80;--font-sans:"Parkinsans","Rubik",system-ui,-apple-system,sans-serif}html.light{--portal-theme-primary:#f0f4f6;--portal-theme-secondary:#fff;--portal-theme-color:#2a9988;--text-primary-color:#2c3e50;--text-white-color:#1a252f;--text-contrast-color:#fff;--input-border-color:rgba(0,0,0,.12);--portal-theme-light:#e8eaed;--shadow-color:rgba(0,0,0,.08);--error-color:#dc2626;--success-color:#15803d}html.dark{--portal-theme-primary:#092329;--portal-theme-secondary:#0f2e36;--portal-theme-color:#2a9988;--text-primary-color:#90a7ad;--text-white-color:#fff;--text-contrast-color:#fff;--input-border-color:hsla(0,0%,100%,.36);--portal-theme-light:#11353e;--shadow-color:rgba(0,0,0,.45);--error-color:#f87171;--success-color:#4ade80}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;font-family:var(--font-sans);font-size:15px;line-height:1.5;background:var(--portal-theme-primary);color:var(--text-primary-color);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a.portal-link{color:var(--portal-theme-color);font-weight:500;transition:opacity .15s ease}a.portal-link:hover{opacity:.85;text-decoration:underline;text-underline-offset:3px}.portal-shell{min-height:100vh;display:flex;flex-direction:column}.portal-main{flex:1 1}.portal-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1.5rem;border-bottom:1px solid var(--input-border-color);background:color-mix(in srgb,var(--portal-theme-secondary) 92%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}html.light .portal-header{background:hsla(0,0%,100%,.92)}.portal-logo{display:flex;align-items:center;gap:.65rem;font-weight:700;font-size:1.05rem;letter-spacing:-.02em;color:var(--text-white-color)}.portal-logo-mark{width:32px;height:32px;border-radius:8px;background:linear-gradient(135deg,var(--portal-theme-color),color-mix(in srgb,var(--portal-theme-color) 70%,#000));display:grid;place-items:center;color:var(--text-contrast-color);font-size:.85rem;font-weight:800}.portal-nav{display:flex;align-items:center;gap:.35rem}.portal-nav a:not(.portal-btn){padding:.5rem .85rem;border-radius:8px;font-size:.9rem;color:var(--text-primary-color);transition:background .15s ease}.portal-nav a:not(.portal-btn):hover{background:color-mix(in srgb,var(--portal-theme-color) 12%,transparent)}.portal-header-actions{display:flex;align-items:center;gap:.5rem}.portal-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.55rem 1.1rem;border-radius:9px;font-size:.9rem;font-weight:600;border:1px solid transparent;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .1s ease;font-family:inherit}.portal-btn:disabled{opacity:.55;cursor:not-allowed}.portal-btn--ghost{background:transparent;color:var(--text-primary-color);border-color:var(--input-border-color)}.portal-btn--ghost:hover:not(:disabled){background:color-mix(in srgb,var(--portal-theme-color) 10%,transparent)}.portal-btn--primary{background:var(--portal-theme-color);color:var(--text-contrast-color);box-shadow:0 2px 12px color-mix(in srgb,var(--portal-theme-color) 35%,transparent)}.portal-btn--primary:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)}.portal-btn--sm{padding:.35rem .65rem;font-size:.8rem}.portal-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;border:1px solid var(--input-border-color);background:color-mix(in srgb,var(--portal-theme-secondary) 80%,transparent);color:var(--text-primary-color);cursor:pointer;transition:background .15s ease}.portal-icon-btn:hover{background:color-mix(in srgb,var(--portal-theme-color) 14%,transparent)}.portal-card{background:var(--portal-theme-secondary);border:1px solid var(--input-border-color);border-radius:16px;padding:1.75rem;box-shadow:0 8px 32px var(--shadow-color)}html.light .portal-card{box-shadow:0 4px 24px var(--shadow-color)}.portal-card--narrow{margin:0 auto;padding:2rem 2.25rem}.portal-card--narrow,.portal-card--narrow.portal-card--login{width:420px;max-width:95%}.portal-card-title{margin:0 0 .35rem;font-size:1.5rem;font-weight:700;letter-spacing:-.03em;color:var(--text-white-color)}.portal-card-sub{margin:0 0 1.35rem;font-size:1rem;line-height:1.45;opacity:.85}.portal-field{margin-bottom:1.125rem}.portal-field label{display:block;font-size:.9rem;font-weight:600;margin-bottom:.4rem;color:var(--text-white-color)}.portal-editor-key-row{display:flex;flex-wrap:wrap;align-items:stretch;gap:.65rem}.portal-editor-key-row .portal-input{flex:1 1 220px;min-width:0}.portal-editor-key-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.portal-input:disabled{opacity:.75;cursor:not-allowed}.portal-input{width:100%;min-height:2.75rem;padding:.75rem 1rem;border-radius:10px;border:1px solid var(--input-border-color);background:color-mix(in srgb,var(--portal-theme-primary) 70%,transparent);color:var(--text-white-color);font-size:1rem;font-family:inherit;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.portal-card--narrow form .portal-btn--primary{padding:.8rem 1.25rem;font-size:1rem;border-radius:10px}.portal-auth-footer{margin-top:1.35rem;text-align:center;font-size:1rem;line-height:1.5}html.light .portal-input{background:#fff;color:#1a252f}.portal-input:focus{border-color:var(--portal-theme-color);box-shadow:0 0 0 3px color-mix(in srgb,var(--portal-theme-color) 22%,transparent)}.portal-alert{padding:.65rem .85rem;border-radius:10px;font-size:.88rem;margin-bottom:1rem}.portal-alert--error{background:color-mix(in srgb,var(--error-color) 15%,transparent);color:var(--error-color);border:1px solid color-mix(in srgb,var(--error-color) 35%,transparent)}.portal-alert--success{background:color-mix(in srgb,var(--success-color) 12%,transparent);color:var(--success-color);border:1px solid color-mix(in srgb,var(--success-color) 28%,transparent)}.portal-hero{padding:4rem 1.5rem 3rem;max-width:1100px;margin:0 auto;text-align:center}.portal-hero-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .85rem;border-radius:999px;font-size:.8rem;font-weight:600;background:color-mix(in srgb,var(--portal-theme-color) 18%,transparent);color:var(--portal-theme-color);margin-bottom:1.25rem}.portal-hero h1{margin:0 0 1rem;font-size:clamp(2rem,5vw,2.85rem);font-weight:800;letter-spacing:-.04em;line-height:1.1;color:var(--text-white-color)}.portal-hero-gradient{background:linear-gradient(135deg,var(--portal-theme-color) 0,color-mix(in srgb,var(--portal-theme-color) 55%,#60a5fa) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.portal-hero p{max-width:560px;margin:0 auto 1.75rem;font-size:1.1rem;opacity:.92}.portal-hero-cta{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.portal-section{padding:3rem 1.5rem;max-width:1100px;margin:0 auto}.portal-section h2{text-align:center;font-size:1.5rem;font-weight:700;margin:0 0 2rem;color:var(--text-white-color)}.portal-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:1.25rem;gap:1.25rem}.portal-feature{padding:1.5rem;border-radius:14px;border:1px solid var(--input-border-color);background:color-mix(in srgb,var(--portal-theme-secondary) 88%,transparent);transition:transform .2s ease,border-color .2s ease}.portal-feature:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--portal-theme-color) 45%,transparent)}.portal-feature-icon{width:44px;height:44px;border-radius:11px;display:grid;place-items:center;background:color-mix(in srgb,var(--portal-theme-color) 16%,transparent);color:var(--portal-theme-color);margin-bottom:1rem}.portal-feature h3{margin:0 0 .5rem;font-size:1.05rem;color:var(--text-white-color)}.portal-feature p{margin:0;font-size:.9rem;opacity:.88;line-height:1.55}.portal-cta-strip{margin:2rem auto 3rem;max-width:900px;padding:2rem 1.5rem;border-radius:16px;text-align:center;background:linear-gradient(135deg,color-mix(in srgb,var(--portal-theme-color) 22%,var(--portal-theme-secondary)),color-mix(in srgb,var(--portal-theme-color) 8%,var(--portal-theme-primary)));border:1px solid color-mix(in srgb,var(--portal-theme-color) 35%,transparent)}.portal-cta-strip h2{margin:0 0 .5rem;font-size:1.35rem;color:var(--text-white-color)}.portal-cta-strip p{margin:0 0 1.25rem;opacity:.9}.portal-footer{padding:2rem 1.5rem;border-top:1px solid var(--input-border-color);text-align:center;font-size:.85rem;opacity:.75}.portal-auth-page{width:100%;padding:2rem 1rem 3rem;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - 64px)}.portal-dashboard{max-width:1080px;margin:0 auto;padding:1.5rem}.portal-dashboard-top{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.portal-dashboard h1{margin:0;font-size:1.5rem;font-weight:700;color:var(--text-white-color)}.portal-dashboard-sub{margin:.25rem 0 0;font-size:.88rem;opacity:.8}.portal-panel{margin-bottom:1.75rem;padding:1.25rem 1.5rem;border-radius:14px;border:1px solid var(--input-border-color);background:color-mix(in srgb,var(--portal-theme-secondary) 90%,transparent)}.portal-panel h2{margin:0 0 1rem;font-size:1.1rem;font-weight:600;color:var(--text-white-color)}.portal-key-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.65rem 0;border-bottom:1px solid var(--input-border-color);font-size:.9rem}.portal-key-row:last-child{border-bottom:none}.portal-keys-table-wrap{overflow-x:auto;margin-top:.5rem;border-radius:10px;border:1px solid var(--input-border-color);background:color-mix(in srgb,var(--portal-theme-secondary) 70%,transparent)}.portal-keys-table{width:100%;border-collapse:collapse;font-size:.875rem}.portal-keys-table td,.portal-keys-table th{padding:.65rem .85rem;text-align:left;vertical-align:middle;border-bottom:1px solid var(--input-border-color)}.portal-keys-table th{font-weight:600;color:var(--text-white-color);opacity:.9;background:color-mix(in srgb,var(--portal-theme-secondary) 50%,transparent)}.portal-keys-table tr:last-child td{border-bottom:none}.portal-keys-table code{font-size:.82rem;word-break:break-all}.portal-keys-actions{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end}.portal-secret-banner{display:flex;flex-wrap:wrap;align-items:flex-start;gap:.75rem;margin-bottom:1rem}.portal-secret-banner code{flex:1 1 200px;font-size:.82rem;word-break:break-all;margin:0;padding:.35rem .5rem;border-radius:6px;background:color-mix(in srgb,var(--portal-theme-color) 12%,transparent)}.portal-modal{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:1.25rem}.portal-modal__backdrop{position:absolute;inset:0;border:none;padding:0;margin:0;cursor:pointer;background:color-mix(in srgb,var(--portal-theme-primary) 55%,rgba(0,0,0,.5));-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.portal-modal__panel{position:relative;width:100%;max-width:400px;padding:1.35rem 1.5rem;border-radius:14px;border:1px solid var(--input-border-color);background:var(--portal-theme-secondary);box-shadow:0 16px 48px var(--shadow-color)}html.light .portal-modal__panel{background:#fff}.portal-modal__title{margin:0 0 .65rem;font-size:1.1rem;font-weight:600;color:var(--text-white-color);line-height:1.3}.portal-modal__message{margin:0 0 1.25rem;font-size:.9rem;line-height:1.5;opacity:.9;color:var(--text-primary-color)}.portal-modal__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem}.portal-editor-wrap{border-radius:12px;border:1px solid var(--input-border-color);overflow:hidden;min-height:220px;background:#fff}html.light .portal-editor-wrap{background:#fafafa}.portal-editor-loading{padding:1.25rem;text-align:center;color:#64748b}.portal-logo-text{display:inline-flex;gap:.3rem;align-items:baseline}.portal-logo-subtext{opacity:.85}.portal-header-actions--end{flex:1 1;justify-content:flex-end}.portal-user-chip{display:inline-flex;align-items:center;gap:.45rem;margin-right:.5rem;font-size:.88rem;color:var(--text-white-color);opacity:.92}.portal-user-chip span{opacity:.65}.portal-btn--block{width:100%;margin-top:.25rem}.portal-panel-head{margin-bottom:.95rem}.portal-panel-sub{margin:.3rem 0 0;font-size:.88rem;opacity:.82}.portal-inline-form{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.portal-inline-form__input{flex:1 1 220px;max-width:320px}.portal-secret-banner__copy{flex:1 1 220px;min-width:0}.portal-secret-banner__copy p{margin:.4rem 0 0;font-size:.78rem;opacity:.82}.portal-muted-text{opacity:.75;font-size:.9rem}.portal-align-right{text-align:right!important}.portal-key-status{opacity:.85;text-transform:capitalize}.portal-nowrap{opacity:.85;white-space:nowrap}.portal-field--tight{margin-bottom:.85rem}.portal-alert--compact{margin-top:.65rem;margin-bottom:0}.portal-panel--overview{margin-bottom:1rem}.portal-muted-inline{margin-left:.5rem;opacity:.75}.portal-loader-page{min-height:60vh;display:grid;place-items:center;color:var(--text-primary-color)}.portal-spinner{width:36px;height:36px;border:3px solid var(--input-border-color);border-top-color:var(--portal-theme-color);border-radius:50%;animation:portal-spin .75s linear infinite}@keyframes portal-spin{to{transform:rotate(1turn)}}