:root{--bg0:#dfe8f2;--bg1:#f3f6fa;--ink:#142033;--muted:#5a6b82;--line:rgba(20,32,51,0.12);--panel:rgba(255,255,255,0.72);--panel-solid:#ffffff;--surface:rgba(255,255,255,0.78);--accent:#0b7a6c;--accent-2:#145c9e;--danger:#b42318;--ok:#067647;--warn:#b54708;--shadow:0 18px 50px rgba(20,32,51,0.08);--radius:14px;--sidebar:280px;--font-ui:var(--font-ui-family),system-ui,sans-serif;--font-brand:var(--font-brand-family),system-ui,sans-serif;--grid-line:rgba(20,32,51,0.04);--toast-bg:rgba(255,255,255,0.92);color-scheme:light}html[data-theme=dark]{--bg0:#0c1118;--bg1:#121a24;--ink:#e7eef8;--muted:#9aa8bc;--line:rgba(231,238,248,0.14);--panel:rgba(24,32,45,0.86);--panel-solid:#1a2330;--surface:rgba(255,255,255,0.07);--accent:#14b8a6;--accent-2:#60a5fa;--danger:#f07167;--ok:#34d399;--warn:#fbbf24;--shadow:0 18px 50px rgba(0,0,0,0.45);--grid-line:rgba(231,238,248,0.05);--toast-bg:rgba(26,35,48,0.94);color-scheme:dark}html[data-density=compact]{--table-cell-pad:0.4rem 0.65rem}html:not([data-density]),html[data-density=comfortable]{--table-cell-pad:0.85rem 1rem}*{box-sizing:border-box}body,html{margin:0;min-height:100%;color:var(--ink);font-family:var(--font-ui);background:radial-gradient(1200px 600px at 10% -10%,rgba(11,122,108,.18),transparent 55%),radial-gradient(900px 500px at 90% 0,rgba(20,92,158,.14),transparent 50%),linear-gradient(160deg,var(--bg0),var(--bg1) 45%,#eef3f8);scrollbar-width:thin;scrollbar-color:rgba(11,122,108,.35) transparent}body::-webkit-scrollbar,html::-webkit-scrollbar{width:8px;height:8px}body::-webkit-scrollbar-track,html::-webkit-scrollbar-track{background:transparent}body::-webkit-scrollbar-thumb,html::-webkit-scrollbar-thumb{background:rgba(11,122,108,.28);border-radius:999px}body::-webkit-scrollbar-thumb:hover,html::-webkit-scrollbar-thumb:hover{background:rgba(11,122,108,.45)}html[data-theme=dark],html[data-theme=dark] body{background:radial-gradient(1000px 520px at 8% -12%,rgba(20,184,166,.12),transparent 55%),radial-gradient(800px 480px at 92% 0,rgba(59,130,246,.1),transparent 50%),linear-gradient(160deg,var(--bg0),var(--bg1) 50%,#0a0e14)}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.35;background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:28px 28px;-webkit-mask-image:radial-gradient(ellipse at center,black 30%,transparent 75%);mask-image:radial-gradient(ellipse at center,black 30%,transparent 75%)}html[data-theme=dark] body:before{opacity:.22}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app-shell{display:grid;grid-template-columns:var(--sidebar) 1fr;min-height:100vh;min-height:100dvh;align-items:stretch}.sidebar{position:-webkit-sticky;position:sticky;top:0;height:100vh;height:100dvh;max-height:100dvh;padding:1rem .75rem .85rem;border-right:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(243,246,250,.72));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);display:flex;flex-direction:column;gap:.75rem;animation:rise .5s ease both;min-height:0}.sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.15rem .35rem .25rem;flex-shrink:0}.sidebar-head-actions{display:flex;align-items:center;gap:.35rem}.sidebar-close{display:none;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--line);border-radius:9px;background:rgba(255,255,255,.75);color:var(--ink);font-size:1.35rem;line-height:1;cursor:pointer}.sidebar-backdrop{display:none}.mobile-nav-toggle{display:none;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.85);color:var(--ink);font-size:1.25rem;cursor:pointer}.topbar-leading{display:flex;align-items:flex-start;gap:.65rem;min-width:0}.brand{font-family:var(--font-brand);font-weight:800;font-size:1.55rem;letter-spacing:-.03em;line-height:1;display:inline-flex;align-items:center;max-width:100%;min-width:0;overflow:visible}.brand span{color:var(--accent)}.tpanel-logo-mark{min-width:0}.tpanel-logo-text .tpanel-logo-accent{color:var(--accent)}.tpanel-logo-text .tpanel-logo-hub{color:var(--ink);opacity:.85;font-weight:700}html.dark .tpanel-logo-text .tpanel-logo-hub,html[data-theme=dark] .tpanel-logo-text .tpanel-logo-hub{color:var(--ink);opacity:.92}.sidebar .tpanel-logo-img,.sidebar .tpanel-logo-mark{max-width:min(176px,100%);overflow:visible}.sidebar .tpanel-logo-text{overflow:visible;text-overflow:clip;flex-shrink:1;min-width:0}.sidebar-cmd{display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--line);background:rgba(255,255,255,.75);border-radius:9px;padding:.35rem .5rem;color:var(--muted);cursor:pointer;font-size:.78rem;font-weight:600}.sidebar-cmd:hover{border-color:rgba(11,122,108,.35);color:var(--ink)}.sidebar-search{position:relative;display:block;margin:0 .2rem}.sidebar-search-icon{position:absolute;left:.7rem;top:50%;transform:translateY(-50%);color:var(--muted);font-size:.95rem;pointer-events:none}.sidebar-search input{width:100%;border:1px solid var(--line);border-radius:11px;padding:.55rem 2rem .55rem 1.85rem;background:rgba(255,255,255,.88);color:var(--ink)}.sidebar-search input:focus{outline:2px solid rgba(11,122,108,.2);border-color:var(--accent)}.sidebar-search-clear{position:absolute;right:.4rem;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:1.1rem;line-height:1;padding:.2rem .35rem}.nav-section-label{font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:.15rem .65rem .4rem}.nav-pinned{gap:.15rem;padding-bottom:.55rem;border-bottom:1px solid var(--line)}.nav,.nav-pinned{display:flex;flex-direction:column}.nav{gap:.2rem;flex:1 1;overflow:auto;padding-right:.25rem;min-height:0;scrollbar-width:thin;scrollbar-color:rgba(11,122,108,.35) transparent}.nav::-webkit-scrollbar{width:6px}.nav::-webkit-scrollbar-track{background:transparent}.nav::-webkit-scrollbar-thumb{background:rgba(11,122,108,.28);border-radius:999px}.nav::-webkit-scrollbar-thumb:hover{background:rgba(11,122,108,.45)}.nav-group{border-radius:12px}.nav-group-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.5rem;border:0;background:transparent;color:var(--ink);font-weight:700;font-size:.82rem;padding:.55rem .65rem;border-radius:10px;cursor:pointer}.nav-group-toggle:hover{background:rgba(20,32,51,.04)}.nav-chevron{color:var(--muted);font-size:.75rem}.nav-group-items{display:flex;flex-direction:column;gap:.1rem;padding:0 .2rem .35rem;animation:rise .18s ease both}.nav a,.nav-pinned a{display:block;padding:.48rem .7rem;border-radius:9px;color:var(--muted);font-size:.9rem;transition:background .15s ease,color .15s ease}.nav-group-items a{padding-left:.95rem;display:flex;align-items:center;justify-content:space-between;gap:.35rem}.nav-item-label{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-group-items a .badge{flex-shrink:0;font-size:.65rem;padding:.1rem .35rem}.nav a:hover,.nav-pinned a:hover{background:rgba(11,122,108,.08);color:var(--ink)}.nav a.active,.nav-pinned a.active{background:linear-gradient(90deg,rgba(11,122,108,.18),rgba(20,92,158,.08));color:var(--ink);font-weight:650;box-shadow:inset 3px 0 0 var(--accent)}.sidebar-foot{gap:.5rem;padding:.65rem .45rem .2rem;border-top:1px solid var(--line);margin-top:auto}.sidebar-foot,.sidebar-user{display:flex;align-items:center}.sidebar-user{gap:.55rem;min-width:0;flex:1 1}.sidebar-avatar{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font-weight:700;color:white;background:linear-gradient(135deg,var(--accent),var(--accent-2));flex-shrink:0}.sidebar-user-meta{min-width:0}.sidebar-user-name{font-weight:650;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-logout{padding:.4rem .55rem;font-size:.82rem}.main{padding:1.5rem 1.75rem 2.5rem;animation:rise .55s ease .05s both;min-width:0;max-width:100%}.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.topbar h1{margin:0;font-family:var(--font-brand);font-size:1.8rem;letter-spacing:-.03em}.topbar p{margin:.25rem 0 0;color:var(--muted)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.grid{display:grid;grid-gap:1rem;gap:1rem}.grid.metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.metric{padding:1.1rem 1.15rem;animation:rise .45s ease both}.metric:nth-child(2){animation-delay:.05s}.metric:nth-child(3){animation-delay:.1s}.metric:nth-child(4){animation-delay:.15s}.metric .label{color:var(--muted);font-size:.85rem;margin-bottom:.4rem}.metric .value{font-family:var(--font-brand);font-size:1.7rem;letter-spacing:-.03em}.bar{margin-top:.75rem;height:6px;border-radius:999px;background:rgba(20,32,51,.08);overflow:hidden}.bar>i,.bar>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--accent-2));transition:width .6s ease}.btn{border:1px solid transparent;border-radius:10px;padding:.55rem .9rem;background:var(--accent);color:white;cursor:pointer;font-weight:600;transition:transform .12s ease,filter .12s ease,background .12s ease}.btn:hover{filter:brightness(1.05);transform:translateY(-1px)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn.secondary{background:transparent;border-color:var(--line);color:var(--ink)}.btn.ghost{background:transparent;color:var(--muted)}.btn-sm{padding:.35rem .65rem;font-size:.85rem;border-radius:8px}.btn-lg{padding:.75rem 1.15rem;font-size:1rem}.table{width:100%;border-collapse:collapse}.table td,.table th{text-align:left;padding:var(--table-cell-pad,.85rem 1rem);border-bottom:1px solid var(--line);vertical-align:middle}.table th{color:var(--muted);font-weight:600;font-size:.85rem}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .55rem;border-radius:999px;font-size:.78rem;font-weight:600;background:rgba(20,32,51,.06)}.badge.ok{background:rgba(6,118,71,.12);color:var(--ok)}.badge.warn{background:rgba(181,71,8,.12);color:var(--warn)}.form{display:grid;grid-gap:.85rem;gap:.85rem;padding:1.25rem}.form label{display:grid;grid-gap:.35rem;gap:.35rem;font-size:.9rem;color:var(--muted)}.form input,.form select,.form textarea{border:1px solid var(--line);border-radius:10px;padding:.65rem .75rem;background:var(--panel-solid);color:var(--ink)}.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid rgba(11,122,108,.25);border-color:var(--accent)}.row{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center}.login-page{min-height:100vh;display:grid;place-items:center;padding:1.5rem}.login-page-branded{background-attachment:fixed}.login-card{width:min(420px,100%);padding:2rem;animation:rise .55s ease both}.login-brand-block{margin-bottom:.75rem;display:flex;flex-direction:column;align-items:center;text-align:center}.login-brand-logo{display:block;max-height:88px;max-width:min(320px,100%);width:auto;height:auto;object-fit:contain;margin-inline:auto}.login-brand-block .tpanel-logo-mark{justify-content:center}.login-brand-block .tpanel-logo-full{border-radius:12px}.login-brand-text{font-size:2.4rem;margin-bottom:.15rem}.login-company{font-size:.85rem;margin-top:.25rem}.login-title{font-size:1.35rem;margin:.5rem 0 .35rem;font-family:var(--font-brand)}.login-slogan{margin:0 0 1.25rem!important}.login-footer,.login-support{margin:.75rem 0 0;font-size:13px;text-align:center}.login-card .brand{font-size:2.4rem;margin-bottom:.35rem}.login-card .sub{color:var(--muted);margin:0 0 1.5rem}.kbd{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.75rem;border:1px solid var(--line);border-radius:6px;padding:.1rem .35rem;background:rgba(255,255,255,.7)}.palette-overlay{position:fixed;inset:0;background:rgba(20,32,51,.35);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;display:grid;place-items:start center;padding-top:12vh;animation:fade .15s ease}.palette{width:min(560px,calc(100vw - 2rem));background:var(--panel-solid);border-radius:16px;border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden;animation:rise .2s ease}.palette-head{position:relative;display:flex;align-items:center}.palette input,.palette-head input{width:100%;border:0;border-bottom:1px solid var(--line);padding:1rem 3.5rem 1rem 1.1rem;font-size:1.05rem;outline:none;background:transparent}.palette-kbd{position:absolute;right:.85rem;font-size:.75rem;border:1px solid var(--line);border-radius:6px;padding:.15rem .4rem;pointer-events:none}.palette-list{max-height:360px;overflow:auto;padding:.4rem}.palette-group+.palette-group{margin-top:.35rem}.palette-group-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted,#6b7a90);padding:.45rem .8rem .25rem}.palette-item{width:100%;text-align:left;border:0;background:transparent;padding:.7rem .8rem;border-radius:10px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem}.palette-item-label{display:block;font-weight:600}.palette-item-desc{display:block;font-size:.8rem;margin-top:.1rem}.palette-item-meta{font-size:.8rem;white-space:nowrap}.palette-item.active,.palette-item:hover{background:rgba(11,122,108,.1)}.palette-foot{display:flex;gap:1rem;padding:.55rem 1rem;border-top:1px solid var(--line);font-size:.75rem}.file-list button{width:100%;text-align:left;border:0;background:transparent;padding:.55rem .75rem;border-radius:8px;cursor:pointer}.file-list button:hover{background:rgba(11,122,108,.08)}.editor{width:100%;min-height:360px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;line-height:1.45}.editor,.error{font-size:.9rem}.error{color:var(--danger)}.muted{color:var(--muted)}.split-2{display:grid;grid-template-columns:1.2fr 1fr;grid-gap:1rem;gap:1rem}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}.ssl-page{display:grid;grid-gap:1rem;gap:1rem}.ssl-toolbar{gap:1rem;flex-wrap:wrap}.ssl-banner,.ssl-toolbar{display:flex;align-items:center;justify-content:space-between}.ssl-banner{gap:.75rem;padding:.85rem 1rem;border-radius:var(--radius);border:1px solid var(--line);background:rgba(255,255,255,.75)}.ssl-banner.ok{border-color:rgba(6,118,71,.25);background:rgba(6,118,71,.08)}.ssl-banner.error{border-color:rgba(180,35,24,.25);background:rgba(180,35,24,.08);color:var(--danger)}.demo-mode-banner{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem 1rem;margin:0 0 1rem;padding:.7rem 1rem;border-radius:var(--radius);border:1px solid rgba(37,99,235,.35);background:linear-gradient(100deg,rgba(37,99,235,.12),rgba(14,165,233,.08));font-size:.9rem;color:var(--ink)}.demo-mode-banner strong{font-family:var(--font-brand);color:#1d4ed8}.demo-mode-banner span{color:var(--muted);flex:1 1;min-width:12rem}.demo-mode-banner a{font-weight:600;color:#2563eb}html[data-theme=dark] .demo-mode-banner{border-color:rgba(96,165,250,.35);background:linear-gradient(100deg,rgba(37,99,235,.18),rgba(14,165,233,.1))}html[data-theme=dark] .demo-mode-banner strong{color:#93c5fd}html[data-theme=dark] .demo-mode-banner a{color:#60a5fa}.sales-demo-entry{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.25rem 3rem;background:radial-gradient(1200px 600px at 20% -10%,rgba(15,76,92,.18),transparent 55%),radial-gradient(900px 500px at 90% 10%,rgba(227,100,20,.12),transparent 50%),var(--bg,#f6f4f1);color:var(--text,#1a1a1a)}.sales-demo-entry-banner{position:fixed;top:0;left:0;right:0;z-index:50;text-align:center;font-size:.8rem;font-weight:600;letter-spacing:.02em;padding:.55rem 1rem;background:#0f4c5c;color:#f7f3ee}.sales-demo-entry-card{width:min(560px,100%);margin-top:2.5rem;padding:2rem 1.75rem;border-radius:16px;border:1px solid rgba(15,76,92,.12);background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.sales-demo-kicker{margin:0 0 .35rem;font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#0f4c5c}.sales-demo-entry-card h1{margin:0 0 .65rem;font-size:clamp(1.6rem,3vw,2rem);letter-spacing:-.03em}.sales-demo-lead{margin:0 0 1.5rem;line-height:1.55;color:rgba(0,0,0,.62);font-size:.95rem}.sales-demo-status{display:flex;align-items:center;gap:.75rem;font-size:.92rem}.sales-demo-spinner{width:1.1rem;height:1.1rem;border-radius:50%;border:2px solid rgba(15,76,92,.2);border-top-color:#0f4c5c;animation:sales-demo-spin .7s linear infinite}@keyframes sales-demo-spin{to{transform:rotate(1turn)}}.sales-demo-error{color:#b42318;font-size:.9rem}.sales-demo-hint{font-size:.88rem;color:rgba(0,0,0,.55)}.sales-demo-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.sales-demo-modules{list-style:none;margin:0;padding:0;display:grid;grid-gap:.45rem;gap:.45rem}.sales-demo-modules a{display:flex;flex-direction:column;gap:.15rem;padding:.65rem .75rem;border-radius:10px;border:1px solid rgba(0,0,0,.08);text-decoration:none;color:inherit;background:#faf9f7}.sales-demo-modules a:hover{border-color:rgba(15,76,92,.35)}.sales-demo-modules span{font-size:.8rem;color:rgba(0,0,0,.5)}.sales-demo-stats{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:.65rem;gap:.65rem;margin-top:1.25rem}.sales-demo-stats div{padding:.75rem;border-radius:10px;background:#0f4c5c;color:#f7f3ee;display:flex;flex-direction:column;gap:.2rem}.sales-demo-stats strong{font-size:1.25rem}.sales-demo-stats span{font-size:.75rem;opacity:.8}.ssl-empty{padding:2.5rem 1.75rem 2.25rem;text-align:center;position:relative;overflow:hidden}.ssl-empty:before{content:"";position:absolute;inset:0;background:radial-gradient(500px 220px at 50% 0,rgba(11,122,108,.12),transparent 70%),radial-gradient(420px 180px at 80% 100%,rgba(20,92,158,.08),transparent 65%);pointer-events:none}.ssl-empty>*{position:relative}.ssl-empty-visual{position:relative;width:88px;height:88px;margin:0 auto 1.1rem}.ssl-empty-icon{width:88px;height:88px;border-radius:24px;display:grid;place-items:center;color:var(--accent);background:rgba(255,255,255,.85);border:1px solid var(--line);box-shadow:var(--shadow)}.ssl-empty-ring{position:absolute;inset:-10px;border-radius:32px;border:1px dashed rgba(11,122,108,.28);animation:sslPulse 2.8s ease-in-out infinite}.ssl-empty h2{margin:0 0 .55rem;font-family:var(--font-brand);font-size:1.55rem;letter-spacing:-.03em}.ssl-empty>p{margin:0 auto 1.35rem;max-width:460px;color:var(--muted);line-height:1.55}.ssl-empty-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.85rem;gap:.85rem;text-align:left;margin:0 auto 1.5rem;max-width:820px}.ssl-empty-points>div{padding:.9rem 1rem;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.65);display:grid;grid-gap:.3rem;gap:.3rem}.ssl-empty-points strong{font-size:.92rem}.ssl-empty-points span{color:var(--muted);font-size:.84rem;line-height:1.4}.ssl-table-wrap{overflow:hidden}.ssl-table-scroll{overflow-x:auto}.ssl-table{min-width:1100px}.ssl-table th{white-space:nowrap;background:rgba(243,246,250,.85);position:-webkit-sticky;position:sticky;top:0}.ssl-table td{font-size:.9rem}.ssl-domain{font-weight:650}.ssl-actions{display:flex;flex-wrap:wrap;gap:.15rem}.ssl-actions .btn{padding:.35rem .5rem;font-size:.78rem;font-weight:600}.ssl-toggle{width:44px;height:26px;border-radius:999px;border:1px solid var(--line);background:rgba(20,32,51,.08);padding:2px;cursor:pointer;transition:background .15s ease,border-color .15s ease;position:relative}.ssl-toggle.on{background:rgba(11,122,108,.85);border-color:rgba(11,122,108,.85)}.ssl-toggle:disabled{opacity:.5;cursor:not-allowed}.ssl-toggle-knob{display:block;width:20px;height:20px;border-radius:50%;background:white;box-shadow:0 1px 3px rgba(20,32,51,.2);transition:transform .15s ease}.ssl-toggle.on .ssl-toggle-knob{transform:translateX(18px)}.ssl-modal-overlay{position:fixed;inset:0;z-index:60;background:rgba(20,32,51,.38);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;padding:1rem;animation:fade .15s ease}.ssl-modal{width:min(640px,100%);max-height:min(86vh,900px);overflow:auto;animation:rise .2s ease}.hsts-warn-banner{padding:.85rem 1rem;border-radius:8px;border:1px solid color-mix(in srgb,#b42318 45%,transparent);background:color-mix(in srgb,#b42318 12%,transparent);color:inherit;line-height:1.5;font-size:.92rem}.hsts-risk-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:.65rem;gap:.65rem}.hsts-risk-list li{display:grid;grid-gap:.2rem;gap:.2rem;padding:.65rem .75rem;border-radius:8px;border-left:3px solid #b42318;background:color-mix(in srgb,var(--panel,#fff) 92%,#b42318);font-size:.88rem;line-height:1.45}.hsts-risk-list li[data-severity=high]{border-left-color:#b54708}.hsts-risk-list li[data-severity=warn]{border-left-color:#a15c07}.hsts-preload-toggle{display:flex;gap:.65rem;align-items:flex-start;margin-top:1rem;padding:.75rem;border:1px dashed color-mix(in srgb,#b42318 50%,transparent);border-radius:8px;font-size:.9rem;line-height:1.4;cursor:pointer}.hsts-header-preview{margin:.5rem 0 0;font-size:.8rem;word-break:break-all}.hsts-ack-list{display:grid;grid-gap:.55rem;gap:.55rem}.hsts-ack-item{display:flex;gap:.55rem;align-items:flex-start;font-size:.88rem;line-height:1.4;cursor:pointer}.hsts-ack-item input{margin-top:.2rem}.ssl-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.85rem;gap:.85rem}.ssl-detail-grid>div{display:grid;grid-gap:.25rem;gap:.25rem;padding:.75rem .85rem;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.7)}.ssl-pem{min-height:280px;font-size:.8rem}@keyframes sslPulse{0%,to{opacity:.45;transform:scale(1)}50%{opacity:.9;transform:scale(1.03)}}.ai-shell{display:grid;grid-template-rows:auto auto 1fr auto;min-height:calc(100vh - 160px);overflow:hidden;padding:0}.ai-shell.ai-builder{border-color:rgba(11,122,108,.28);box-shadow:0 18px 50px rgba(11,122,108,.08)}.ai-shell.ai-security{border-color:rgba(180,35,24,.22);box-shadow:0 18px 50px rgba(180,35,24,.07)}.ai-head{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1.15rem 1.25rem .85rem;border-bottom:1px solid var(--line)}.ai-head h2{margin:.25rem 0 .2rem;font-family:var(--font-brand);font-size:1.45rem;letter-spacing:-.03em}.ai-head p{margin:0;max-width:520px}.ai-badge{display:inline-block;font-size:.68rem;font-weight:800;letter-spacing:.08em;padding:.2rem .5rem;border-radius:999px}.ai-builder .ai-badge{background:rgba(11,122,108,.14);color:var(--accent)}.ai-security .ai-badge{background:rgba(180,35,24,.12);color:var(--danger)}.ai-chips{display:flex;flex-wrap:wrap;gap:.45rem;padding:.75rem 1.15rem;border-bottom:1px solid var(--line)}.ai-chip{border:1px solid var(--line);background:rgba(255,255,255,.75);border-radius:999px;padding:.35rem .7rem;font-size:.8rem;cursor:pointer;color:var(--muted)}.ai-chip:hover:not(:disabled){color:var(--ink);border-color:rgba(11,122,108,.35)}.ai-messages{overflow:auto;padding:1rem 1.15rem;display:flex;flex-direction:column;gap:.75rem;min-height:280px}.ai-welcome{padding:1rem;border-radius:12px;border:1px dashed var(--line);background:rgba(255,255,255,.5)}.ai-bubble{max-width:min(720px,92%);padding:.75rem .9rem;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.82)}.ai-bubble.user{align-self:flex-end;background:linear-gradient(135deg,rgba(11,122,108,.14),rgba(20,92,158,.1))}.ai-security .ai-bubble.user{background:linear-gradient(135deg,rgba(180,35,24,.1),rgba(181,71,8,.08))}.ai-bubble-role{font-size:.72rem;font-weight:700;color:var(--muted);margin-bottom:.3rem;text-transform:uppercase;letter-spacing:.04em}.ai-bubble pre{margin:0;white-space:pre-wrap;font-family:var(--font-ui);font-size:.92rem;line-height:1.5}.ai-composer{display:flex;gap:.55rem;padding:.85rem 1.15rem 1.1rem;border-top:1px solid var(--line);background:rgba(255,255,255,.55)}.ai-composer input{flex:1 1;border:1px solid var(--line);border-radius:12px;padding:.7rem .85rem;background:white}@media (max-width:900px){.ssl-detail-grid,.ssl-empty-points{grid-template-columns:1fr}}@media (max-width:1100px){.grid.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.split-2{grid-template-columns:1fr}}@media (max-width:640px){.grid.metrics{grid-template-columns:1fr}.ui-modal-backdrop{place-items:end stretch;padding:env(safe-area-inset-top) 0 0}.ui-modal,.ui-modal.sm,.ui-modal.wide{width:100%;max-width:100%;max-height:min(92dvh,100%);border-radius:16px 16px 0 0;margin:0;animation:tp-modal-sheet .28s ease both}@keyframes tp-modal-sheet{0%{transform:translateY(12%);opacity:.7}to{transform:translateY(0);opacity:1}}.ui-modal-footer .row{flex-direction:column-reverse;align-items:stretch}.ui-modal-footer .btn{width:100%}.ui-table{min-width:480px;font-size:.86rem}.ui-table td,.ui-table th{padding:.55rem .65rem}.ui-table td:first-child,.ui-table th:first-child{position:-webkit-sticky;position:sticky;left:0;z-index:1;background:rgba(255,255,255,.97);box-shadow:4px 0 8px rgba(20,32,51,.06)}.ui-table th:first-child{background:rgba(243,246,250,.98);z-index:2}.ui-actions{flex-direction:column;align-items:stretch}.ui-actions .btn{width:100%;justify-content:center}.form .row,.panel .row.form-actions{flex-wrap:wrap}.form label,.settings-form .ui-field{width:100%}.form input,.form select,.form textarea,.settings-form input,.settings-form select,.settings-form textarea{width:100%;min-height:44px;font-size:16px}.form textarea,.settings-form textarea{min-height:96px}.form .split-2,.settings-form .split-2{grid-template-columns:1fr}.form .btn,.form-actions .btn,.settings-form .btn{width:100%}}@media (max-width:820px){.app-shell{grid-template-columns:1fr}.sidebar-backdrop{display:block;position:fixed;inset:0;z-index:85;border:0;padding:0;margin:0;background:rgba(20,32,51,.45);opacity:0;pointer-events:none;transition:opacity .2s ease;cursor:pointer}.app-shell.nav-open .sidebar-backdrop{opacity:1;pointer-events:auto}.sidebar{position:fixed;top:0;left:0;bottom:0;width:min(var(--sidebar),88vw);height:100vh;height:100dvh;max-height:100dvh;z-index:90;border-right:1px solid var(--line);border-bottom:0;transform:translateX(-105%);transition:transform .22s ease;padding-top:max(1rem,env(safe-area-inset-top));padding-bottom:max(.85rem,env(safe-area-inset-bottom));box-shadow:8px 0 28px rgba(20,32,51,.12)}.sidebar.open{transform:translateX(0)}.mobile-nav-toggle,.sidebar-close{display:inline-flex}.nav{max-height:none;flex:1 1;min-height:0;overflow:auto;-webkit-overflow-scrolling:touch}.nav-pinned{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.25rem;gap:.25rem}.nav-pinned .nav-section-label{grid-column:1/-1}.main{padding:1rem max(.9rem,env(safe-area-inset-right)) 2rem max(.9rem,env(safe-area-inset-left))}.topbar{align-items:flex-start;flex-wrap:wrap;margin-bottom:1.1rem;gap:.75rem}.topbar h1{font-size:1.4rem}.topbar-hint{display:none}.topbar-actions{width:100%}.topbar-actions .btn{flex:1 1}.ui-page-header{flex-direction:column;align-items:stretch}.ui-page-actions{justify-content:stretch}.ui-page-actions .btn{flex:1 1}}.btn.danger{background:var(--danger);border-color:transparent;color:#fff}.btn.danger:hover{filter:brightness(1.05)}.badge.info{background:rgba(20,92,158,.12);color:var(--accent-2)}.badge.bad{background:rgba(180,35,24,.12);color:var(--danger)}.mt-sm{margin-top:.55rem}.mb-sm{margin-bottom:.55rem}.ui-skeleton{border-radius:8px;background:linear-gradient(90deg,rgba(20,32,51,.06),rgba(20,32,51,.12),rgba(20,32,51,.06));background-size:200% 100%;animation:shimmer 1.2s ease infinite}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.ui-page-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1rem}.ui-page-title{margin:0;font-family:var(--font-brand);font-size:1.35rem}.ui-page-desc{margin:.35rem 0 0;max-width:52ch}.ui-page-actions{display:flex;flex-wrap:wrap;gap:.5rem}.ui-empty{text-align:center;padding:2.5rem 1.5rem}.ui-empty-icon{font-size:1.6rem;opacity:.55;margin-bottom:.5rem}.ui-empty h3{margin:0 0 .35rem;font-family:var(--font-brand)}.ui-empty-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-top:1rem}.ui-toggle{display:inline-flex;align-items:center;gap:.45rem;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ui-toggle.disabled{opacity:.5;cursor:not-allowed}.ui-toggle input{position:absolute;opacity:0;pointer-events:none}.ui-toggle-track{width:42px;height:24px;border-radius:999px;background:rgba(20,32,51,.18);position:relative;transition:background .2s ease}.ui-toggle-track:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.15);transition:transform .2s ease}.ui-toggle input:checked+.ui-toggle-track{background:var(--accent)}.ui-toggle input:checked+.ui-toggle-track:after{transform:translateX(18px)}.ui-toggle-label{font-size:.9rem}.ui-modal-backdrop{position:fixed;inset:0;z-index:80;background:rgba(20,32,51,.45);display:grid;place-items:center;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left))}.ui-modal{width:min(480px,100%);max-height:min(85vh,720px);max-height:min(85dvh,720px);overflow:auto;padding:1rem 1.1rem 1.15rem;animation:rise .25s ease both;-webkit-overflow-scrolling:touch}.ui-modal.wide{width:min(720px,100%)}.ui-modal.sm{width:min(400px,100%)}.ui-modal-body{min-height:0}.ui-modal-footer{margin-top:1rem;padding-top:.85rem;border-top:1px solid var(--line)}.ui-modal-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem;position:-webkit-sticky;position:sticky;top:0;z-index:1;background:var(--panel,#fff);padding-bottom:.15rem}.ui-modal-head h3{margin:0;font-family:var(--font-brand);font-size:1.05rem;line-height:1.3}.ui-table-shell{display:flex;flex-direction:column;gap:0;max-width:100%}.ui-table-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.65rem .85rem;padding:.85rem 1rem;border:1px solid var(--line);border-bottom:0;border-radius:var(--radius) var(--radius) 0 0;background:rgba(255,255,255,.45)}.ui-table-toolbar-search{flex:1 1 12rem;min-width:10rem;max-width:22rem}.ui-table-toolbar-search .ui-field{margin:0}.ui-table-toolbar-actions,.ui-table-toolbar-filters{gap:.5rem;flex-wrap:wrap;align-items:flex-end}.tags-panel .tags-chip-row{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;min-height:1.75rem}.tags-chip{display:inline-flex;align-items:center;gap:.15rem}.tags-chip-x{border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:1rem;line-height:1;padding:0 .15rem}.tags-chip-x:hover{color:var(--bad,#b91c1c)}.admin-notes-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:.65rem;gap:.65rem}.admin-notes-list li{padding:.75rem .85rem;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.4)}.admin-notes-list li.is-pinned{border-color:color-mix(in srgb,var(--accent,#2563eb) 35%,var(--line));background:color-mix(in srgb,var(--accent,#2563eb) 6%,transparent)}.admin-notes-panel.compact .admin-notes-list li{padding:.55rem .65rem}html[data-theme=dark] .admin-notes-list li{background:rgba(12,17,24,.55)}.ui-table tr.is-soft-deleted td{opacity:.72}.ui-table tr.is-soft-deleted td:first-child{text-decoration:line-through}.ui-bulk-bar-count{font-size:.88rem;font-weight:600}.ui-bulk-bar-actions{gap:.4rem;flex:1 1;flex-wrap:wrap}.ui-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.55);-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;max-width:100%}.ui-table-shell:has(.ui-bulk-bar) .ui-table-wrap,.ui-table-shell:has(.ui-table-toolbar) .ui-table-wrap{border-top-left-radius:0;border-top-right-radius:0}.ui-table-shell>.ui-table-toolbar:first-child+.ui-bulk-bar+.ui-table-wrap,.ui-table-shell>.ui-table-toolbar:first-child+.ui-table-wrap{border-top-left-radius:0;border-top-right-radius:0}.ui-table-th-sort{padding:0!important}.ui-table-sort-btn{display:inline-flex;align-items:center;gap:.35rem;width:100%;margin:0;padding:.7rem .85rem;border:0;background:transparent;color:inherit;font:inherit;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;text-align:left}.ui-table-sort-btn:hover{color:var(--text,#111);background:rgba(0,0,0,.03)}.ui-table-sort-ind{opacity:.55;font-size:.75rem}.ui-table th[aria-sort=ascending] .ui-table-sort-ind,.ui-table th[aria-sort=descending] .ui-table-sort-ind{opacity:1;color:var(--accent,#2563eb)}.ui-table-select{width:2.5rem;text-align:center!important}.ui-table-check{width:1rem;height:1rem;accent-color:var(--accent,#2563eb);cursor:pointer}.ui-table tr.is-selected td{background:color-mix(in srgb,var(--accent,#2563eb) 7%,transparent)}.ui-table{width:100%;min-width:520px;border-collapse:collapse;font-size:.92rem}.ui-table td,.ui-table th{padding:.7rem .85rem;text-align:left;border-bottom:1px solid var(--line);vertical-align:middle}.ui-table th{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:rgba(243,246,250,.8);white-space:nowrap}.ui-table tr:last-child td{border-bottom:0}.ui-table-wrap.compact .ui-table td,.ui-table-wrap.compact .ui-table th{padding:.45rem .65rem}.ui-table-empty{padding:.5rem;border-top:1px solid var(--line)}.ui-table-empty .ui-empty{border:0;background:transparent;box-shadow:none;padding:1.5rem 1rem}.ui-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;padding:.75rem 1rem;border-top:1px solid var(--line);background:rgba(255,255,255,.4)}.ui-pagination-range{font-size:.85rem}.ui-pagination-controls{gap:.35rem;align-items:center;flex-wrap:wrap}.ui-pagination-page{font-size:.85rem;min-width:4.5rem;text-align:center}.ui-pagination-size{display:inline-flex;align-items:center;gap:.4rem;font-size:.85rem;margin-right:.35rem}.ui-pagination-size select{font:inherit;padding:.25rem .45rem;border-radius:6px;border:1px solid var(--line);background:var(--surface,#fff);color:inherit}.ui-actions,.ui-breadcrumb{display:flex;flex-wrap:wrap;gap:.35rem}.ui-breadcrumb{align-items:center;font-size:.9rem;margin-bottom:.75rem}.ui-breadcrumb button{border:0;background:transparent;color:var(--accent-2);cursor:pointer;padding:0;font-weight:600}.quick-actions{display:flex;flex-wrap:wrap;gap:.5rem}.quick-actions a{display:inline-flex;align-items:center;padding:.55rem .85rem;border-radius:10px;border:1px solid var(--line);background:rgba(255,255,255,.7);font-weight:600;font-size:.9rem}.quick-actions a:hover{border-color:rgba(11,122,108,.35)}.report-chart{display:flex;align-items:flex-end;gap:6px;height:140px;overflow-x:auto;padding-bottom:.25rem}.report-bar-col{flex:1 1;min-width:22px;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:6px}.report-bar{width:100%;max-width:28px;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,var(--accent),var(--accent-2));min-height:6px}.report-bar-col span{font-size:10px;color:var(--muted);white-space:nowrap;transform:rotate(-35deg);transform-origin:top left;height:18px}.files-path{display:block;font-size:12px;margin:-.35rem 0 .85rem}.files-progress{height:8px;border-radius:999px;background:rgba(15,23,42,.08);overflow:hidden}.files-progress>div{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-2));transition:width .2s ease}.files-dropzone{position:relative;transition:box-shadow .15s ease,border-color .15s ease}.files-dropzone.is-dragover{box-shadow:inset 0 0 0 2px var(--accent,#2563eb);background:color-mix(in srgb,var(--accent,#2563eb) 6%,transparent)}.files-dropzone-hint{position:absolute;inset:0;z-index:2;display:grid;place-items:center;font-family:var(--font-brand);font-size:1.1rem;background:color-mix(in srgb,var(--bg,#fff) 82%,var(--accent,#2563eb));border-radius:inherit;pointer-events:none}.files-upload-queue{max-height:280px;overflow:auto}.files-layout{display:grid;grid-gap:1rem;gap:1rem}.files-layout.with-editor{grid-template-columns:1.2fr 1fr}.files-code{width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;line-height:1.45;border-radius:10px;padding:.75rem;background:rgba(255,255,255,.85);resize:vertical}.files-cm,.files-code{border:1px solid var(--line)}.files-cm{border-radius:10px;overflow:hidden;margin-top:.35rem}.files-cm .cm-editor{font-size:13px}.files-cm .cm-scroller{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;min-height:420px}.files-cm-dark{border-color:rgba(148,163,184,.35)}.files-cards-mobile{display:none}.files-card{padding:.85rem;margin-bottom:.65rem}.files-card-title{border:0;background:transparent;font-weight:700;font-size:.95rem;padding:0;cursor:pointer;color:inherit;text-align:left}.files-card-meta{display:flex;flex-wrap:wrap;gap:.5rem .85rem;font-size:12px;color:var(--muted);margin:.45rem 0 .65rem}@media (max-width:960px){.files-layout.with-editor{grid-template-columns:1fr}.files-table-desktop{display:none}.files-cards-mobile{display:block}}.grid.metrics.ssl-summary,.ssl-page .grid.metrics{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.db-priv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:.45rem .75rem;gap:.45rem .75rem;font-size:.9rem}.db-engines-board{padding:0;overflow:hidden}.db-engines-board-title{display:flex;align-items:center;justify-content:center;width:100%;min-height:2.6rem;padding:.7rem 1rem;border-bottom:1px solid var(--line);font-family:var(--font-brand);font-weight:700;font-size:1rem;letter-spacing:.01em;text-align:center}.db-engines-board-cols{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:.65rem;gap:.65rem;padding:.75rem 1rem;border-bottom:1px solid var(--line)}.db-engines-board-col{position:relative;flex-direction:column;gap:.2rem;margin:0;min-height:5.6rem;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);padding:.75rem .85rem;cursor:pointer;text-align:center}.db-engines-board-col,.db-engines-board-col-mark{display:flex;align-items:center;justify-content:center}.db-engines-board-col-mark{margin-bottom:.15rem}.db-engines-board-col.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,var(--panel-solid))}.db-engines-board-col.active:after{content:"";position:absolute;top:.45rem;right:.5rem;width:.45rem;height:.45rem;border-radius:50%;background:var(--accent)}.db-engines-board-col-label{font-family:var(--font-brand);font-weight:700;line-height:1.2}.db-engines-board-toolbar{display:flex;flex-wrap:wrap;gap:.45rem;padding:.75rem 1rem 0}.db-engines-board-manage{margin:.75rem 1rem 0;padding:.85rem 1rem;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.db-engines-board-manage h3{margin:0 0 .65rem;font-family:var(--font-brand);font-size:.95rem}.db-engines-board-kv{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:.55rem 1rem;gap:.55rem 1rem;font-size:.88rem}.db-engines-board-kv .label{display:block;color:var(--muted);font-size:.75rem;margin-bottom:.15rem}.db-engines-board-body{min-height:12rem;padding-bottom:.75rem}.db-engines-board-body tr.selected td{background:color-mix(in srgb,var(--accent) 7%,transparent)}@media (max-width:720px){.db-engines-board-cols{display:flex;overflow-x:auto;grid-template-columns:none;-webkit-overflow-scrolling:touch}.db-engines-board-col{flex:0 0 11rem;min-width:11rem}}.db-import-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:12px;gap:12px;margin-bottom:16px}.db-import-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));grid-gap:16px;gap:16px;margin-bottom:16px}.db-import-form{display:grid;grid-gap:12px;gap:12px}.db-import-drop{display:grid;grid-gap:6px;gap:6px;padding:.85rem 1rem;border:1px dashed var(--line);border-radius:10px;background:var(--surface);cursor:pointer}.db-import-drop-title{font-weight:600;font-size:13px}.db-import-confirm{display:flex;gap:8px;align-items:flex-start;font-size:13px}.db-import-sql{display:grid;grid-gap:6px;gap:6px;font-size:13px}.db-import-sql textarea{font-family:var(--font-mono,monospace);font-size:12px;width:100%;min-height:8rem}.db-import-progress{display:grid;grid-gap:6px;gap:6px}.db-import-progress-meta{display:flex;justify-content:space-between;font-size:13px;gap:8px}.db-import-progress-track{height:10px;border-radius:999px;background:var(--line);overflow:hidden}.db-import-progress-fill{height:100%;border-radius:999px;background:var(--accent);transition:width .25s ease}.db-import-progress-fill.done{background:var(--ok,#16a34a)}.db-import-live{display:grid;grid-gap:12px;gap:12px}.db-import-live-head{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.db-import-log{max-height:240px;overflow:auto;border:1px solid var(--line);border-radius:8px;padding:10px;font-size:12px;font-family:var(--font-mono,monospace);background:var(--surface)}.db-import-log-title{font-weight:600;margin-bottom:8px;font-family:var(--font-brand)}.db-import-log-error{color:var(--bad,#b91c1c)}.db-import-log-warn{color:var(--warn,#a16207)}.db-import-table-wrap{overflow-x:auto}.backups-page .grid.metrics,.license-page .grid.metrics{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.license-kv{display:grid;grid-gap:.75rem;gap:.75rem}.license-kv>div{display:grid;grid-gap:.2rem;gap:.2rem}.license-kv span{font-size:12px}.license-modules{display:grid;grid-gap:.45rem;gap:.45rem}.license-mod{display:flex;align-items:center;justify-content:space-between;padding:.55rem .7rem;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.55)}.license-mod.on{border-color:rgba(11,122,108,.35);background:rgba(11,122,108,.06)}.security-page .security-checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:.45rem 1rem;gap:.45rem 1rem;margin-top:.85rem}.onboarding-fullscreen{min-height:100vh;padding:1.5rem 1rem 2.5rem;display:flex;align-items:flex-start;justify-content:center}.onboarding-shell{width:min(720px,100%);margin:0 auto}.onboarding-card{padding:1.35rem 1.4rem 1.2rem}.onboarding-top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.85rem}.onboarding-logo{font-family:var(--font-brand);font-weight:800;font-size:1.55rem;letter-spacing:-.03em;color:var(--ink)}.onboarding-logo span{color:var(--accent)}.onboarding-progress-meta{text-align:right;display:grid;grid-gap:.15rem;gap:.15rem}.onboarding-progress-meta strong{font-size:.95rem}.onboarding-bar{height:6px;border-radius:999px;background:rgba(20,32,51,.08);overflow:hidden;margin-bottom:1rem}.onboarding-bar>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--accent-2));transition:width .35s ease}.onboarding-steps{list-style:none;margin:0 0 1.15rem;padding:0;display:flex;flex-wrap:wrap;gap:.35rem}.onboarding-steps li{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .45rem;border-radius:8px;font-size:12px;color:var(--muted)}.onboarding-steps li .dot{width:1.25rem;height:1.25rem;border-radius:50%;display:inline-grid;place-items:center;font-size:10px;background:rgba(20,32,51,.08)}.onboarding-steps li.current{color:var(--ink);background:rgba(11,122,108,.1)}.onboarding-steps li.current .dot{background:var(--accent);color:#fff}.onboarding-steps li.done{color:var(--ok)}.onboarding-steps li.done .dot{background:rgba(6,118,71,.15);color:var(--ok)}.onboarding-body{margin-bottom:1rem}.onboarding-bullets{margin:.75rem 0 0;padding-left:1.1rem;color:var(--muted);display:grid;grid-gap:.35rem;gap:.35rem}.onboarding-pw{display:grid;grid-gap:.4rem;gap:.4rem;margin:.15rem 0 .65rem}.onboarding-pw-bar{height:5px;border-radius:999px;background:rgba(20,32,51,.08);overflow:hidden}.onboarding-pw-bar>span{display:block;height:100%;width:calc(var(--s, 0) * 25%);border-radius:inherit;background:var(--warn);transition:width .25s ease,background .25s ease}.onboarding-pw-bar[data-score="0"]>span{--s:0.4;background:var(--danger)}.onboarding-pw-bar[data-score="1"]>span{--s:1;background:var(--danger)}.onboarding-pw-bar[data-score="2"]>span{--s:2;background:var(--warn)}.onboarding-pw-bar[data-score="3"]>span{--s:3;background:var(--accent)}.onboarding-pw-bar[data-score="4"]>span{--s:4;background:var(--ok)}.onboarding-pw-checks{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;grid-gap:.2rem .75rem;gap:.2rem .75rem;font-size:12px;color:var(--muted)}.onboarding-pw-checks li.ok{color:var(--ok)}.onboarding-checks{display:grid;grid-gap:.5rem;gap:.5rem;margin-top:.85rem}.onboarding-check{padding:.65rem .75rem;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.55)}.onboarding-checkrow{display:flex!important;flex-direction:row!important;align-items:center;gap:.55rem;font-weight:500}.onboarding-checkrow input{width:auto!important;margin:0}.onboarding-tip{padding:.75rem .85rem;border-radius:10px;border:1px solid rgba(11,122,108,.22);background:rgba(11,122,108,.06);margin-bottom:.75rem}.onboarding-guide{margin-bottom:1rem;padding-bottom:.85rem;border-bottom:1px solid var(--line)}.onboarding-guide-purpose{margin:0 0 .65rem;font-size:14px;line-height:1.45}.onboarding-guide-cols{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem 1.25rem;gap:.75rem 1.25rem}.onboarding-guide-h{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.25rem;opacity:.75}.onboarding-actions{display:flex;justify-content:space-between;gap:.75rem;padding-top:.35rem;border-top:1px solid var(--line)}.onboarding-done{text-align:center;display:grid;grid-gap:.65rem;gap:.65rem;justify-items:center;padding:2rem 1.5rem}@media (max-width:640px){.onboarding-steps .label{display:none}.onboarding-pw-checks{grid-template-columns:1fr}.onboarding-top{flex-direction:column}.onboarding-progress-meta{text-align:left}.onboarding-guide-cols{grid-template-columns:1fr}}.ui-page{display:grid;grid-gap:0;gap:0}.ui-page-flash{margin-bottom:.85rem}.ui-card-pad-none{padding:0}.ui-card-pad-sm{padding:.85rem 1rem}.ui-card-pad-md{padding:1.15rem 1.25rem}.ui-card-pad-lg{padding:1.4rem 1.5rem}.ui-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.85rem}.ui-card-title{margin:0;font-family:var(--font-brand);font-size:1.05rem}.ui-card-desc{margin:.3rem 0 0;font-size:.9rem}.ui-card-actions{display:flex;flex-wrap:wrap;gap:.4rem}.ui-field{display:grid;grid-gap:.35rem;gap:.35rem;font-size:.9rem;color:var(--muted)}.ui-field-label{font-weight:500}.ui-field-req{color:var(--danger);margin-left:.15rem}.ui-field-hint{font-size:.8rem;color:var(--muted)}.ui-field-error{font-size:.8rem;color:var(--danger)}.ui-input,.ui-select,.ui-textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:.65rem .75rem;background:var(--panel-solid);color:var(--ink);font:inherit}.ui-textarea{min-height:96px;resize:vertical}.ui-input:focus,.ui-select:focus,.ui-textarea:focus{outline:2px solid rgba(11,122,108,.25);border-color:var(--accent)}.ui-field.has-error .ui-input,.ui-field.has-error .ui-select,.ui-field.has-error .ui-textarea,.ui-input.invalid,.ui-select.invalid,.ui-textarea.invalid{border-color:rgba(180,35,24,.55)}.ui-input:disabled,.ui-select:disabled,.ui-textarea:disabled{opacity:.6;cursor:not-allowed}.ui-alert{display:flex;align-items:flex-start;gap:.65rem;padding:.7rem .85rem;border-radius:10px;border:1px solid var(--line);font-size:.92rem}.ui-alert-body{flex:1 1;min-width:0}.ui-alert-close{border:0;background:transparent;color:inherit;cursor:pointer;font-size:1.1rem;line-height:1;opacity:.7;padding:0 .15rem}.ui-alert.ok{background:rgba(6,118,71,.1);border-color:rgba(6,118,71,.22);color:var(--ok)}.ui-alert.warn{background:rgba(181,71,8,.1);border-color:rgba(181,71,8,.22);color:var(--warn)}.ui-alert.bad{background:rgba(180,35,24,.1);border-color:rgba(180,35,24,.22);color:var(--danger)}.ui-alert.info{background:rgba(20,92,158,.1);border-color:rgba(20,92,158,.22);color:var(--accent-2)}.ui-skeleton.round{border-radius:999px}.ui-loading-page{display:grid;grid-gap:.35rem;gap:.35rem}.ui-skeleton-form{display:grid;grid-gap:1rem;gap:1rem;padding:1.15rem 1.25rem}.ui-skeleton-form-row{display:grid;grid-gap:.35rem;gap:.35rem}.ui-skeleton-form-actions{display:flex;gap:.5rem;margin-top:.35rem}.form .ui-field{color:var(--muted)}.tp-toast-viewport{position:fixed;z-index:10000;top:1rem;right:1rem;display:flex;flex-direction:column;gap:.65rem;width:min(400px,calc(100vw - 1.5rem));pointer-events:none}.tp-toast{--toast-fg:var(--ink);--toast-accent:var(--accent-2);--toast-bg:rgba(255,255,255,0.92);--toast-border:rgba(20,32,51,0.1);--toast-bar:var(--toast-accent);pointer-events:auto;position:relative;display:grid;grid-template-columns:auto 1fr auto;grid-gap:.7rem;gap:.7rem;align-items:start;padding:.85rem .85rem .95rem;overflow:hidden;border-radius:12px;border:1px solid var(--toast-border);background:linear-gradient(135deg,rgba(255,255,255,.98),var(--toast-bg)),var(--panel-solid);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);color:var(--toast-fg);font-family:var(--font-ui);animation:tp-toast-enter .28s cubic-bezier(.22,1,.36,1)}.tp-toast.is-exit{animation:tp-toast-exit .18s ease-in forwards}@keyframes tp-toast-enter{0%{opacity:0;transform:translateX(16px) translateY(-4px)}to{opacity:1;transform:none}}@keyframes tp-toast-exit{to{opacity:0;transform:translateX(12px)}}.tp-toast-icon{display:grid;place-items:center;width:2rem;height:2rem;border-radius:10px;color:var(--toast-accent);background:color-mix(in srgb,var(--toast-accent) 12%,transparent);flex-shrink:0}.tp-toast-body{min-width:0;padding-top:.1rem}.tp-toast-title{display:block;font-size:.82rem;font-weight:700;letter-spacing:.01em;color:var(--toast-accent);margin-bottom:.12rem}.tp-toast-msg{margin:0;font-size:.9rem;line-height:1.45;color:var(--ink);font-weight:500}.tp-toast-action{margin-top:.55rem;padding:0;border:none;background:none;color:var(--toast-accent);font-weight:600;font-size:.82rem;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.tp-toast-action:hover{opacity:.85}.tp-toast-close{display:grid;place-items:center;width:1.6rem;height:1.6rem;margin:-.15rem -.1rem 0 0;border:none;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;opacity:.7}.tp-toast-close:hover{opacity:1;background:rgba(20,32,51,.06);color:var(--ink)}.tp-toast-progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:rgba(20,32,51,.06)}.tp-toast-progress>span{display:block;height:100%;background:var(--toast-bar);border-radius:0 2px 0 0;transition:width .05s linear}.tp-toast-success{--toast-accent:var(--ok);--toast-bar:var(--ok);--toast-border:rgba(6,118,71,0.22);--toast-bg:rgba(236,253,245,0.88)}.tp-toast-error{--toast-accent:var(--danger);--toast-bar:var(--danger);--toast-border:rgba(180,35,24,0.24);--toast-bg:rgba(254,242,242,0.9)}.tp-toast-warning{--toast-accent:var(--warn);--toast-bar:var(--warn);--toast-border:rgba(181,71,8,0.24);--toast-bg:rgba(255,247,237,0.9)}.tp-toast-info{--toast-accent:var(--accent-2);--toast-bar:var(--accent-2);--toast-border:rgba(20,92,158,0.22);--toast-bg:rgba(239,246,255,0.9)}@media (max-width:640px){.tp-toast-viewport{top:auto;bottom:1rem;right:.75rem;left:.75rem;width:auto}.tp-toast{animation-name:tp-toast-enter-mobile}@keyframes tp-toast-enter-mobile{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}}.tp-error-page{min-height:100vh;display:grid;place-items:center;padding:1.5rem;background:linear-gradient(160deg,#f3f6f9,#e8eef4 55%,#f7f3ee)}.tp-error-card{width:min(440px,100%);background:var(--panel-solid);border:1px solid var(--line);border-radius:var(--radius);padding:1.75rem 1.5rem;box-shadow:var(--shadow)}.tp-error-brand{margin:0;font-weight:700;letter-spacing:.04em;color:var(--accent);font-size:.85rem;font-family:var(--font-brand)}.tp-error-card h1{margin:.65rem 0 .5rem;font-size:1.35rem;font-family:var(--font-brand)}.tp-error-card-msg,.tp-error-panel-msg{margin:0;line-height:1.5;color:var(--muted)}.tp-error-digest{margin:.75rem 0 0;font-size:.8rem}.tp-error-panel{padding:1.5rem;border:1px solid var(--line);border-radius:12px;background:var(--panel-solid);max-width:520px;margin:2rem auto}.tp-error-panel-title{margin:0 0 .5rem;font-size:1.2rem;font-family:var(--font-brand)}.tp-error-panel-hint{margin:.75rem 0 0;font-size:.9rem}.tp-error-panel-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.15rem}.settings-layout{display:grid;grid-template-columns:minmax(200px,240px) 1fr;grid-gap:1rem;gap:1rem;align-items:start}.settings-nav{display:flex;flex-direction:column;gap:.35rem;position:-webkit-sticky;position:sticky;top:1rem}.settings-nav-item{text-align:left;border:1px solid transparent;background:transparent;border-radius:10px;padding:.7rem .8rem;cursor:pointer;color:var(--ink);font:inherit;display:grid;grid-gap:.15rem;gap:.15rem}.settings-nav-item span{font-size:.75rem;color:var(--muted);line-height:1.35}.settings-nav-item:hover{background:rgba(255,255,255,.55)}.settings-nav-item.is-active{background:var(--panel-solid);border-color:var(--line);box-shadow:var(--shadow)}.settings-nav-item.is-active strong{color:var(--accent)}.settings-panel{padding:1.15rem 1.25rem 1.35rem}.settings-form{display:grid;grid-gap:.85rem;gap:.85rem}.settings-form h3{margin:0;font-family:var(--font-brand);font-size:1.15rem}.settings-subhead{margin:.35rem 0 0;font-size:.9rem;color:var(--muted);font-weight:600}.settings-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.settings-actions{display:flex;gap:.5rem;padding-top:.35rem}.settings-readonly{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;padding:.85rem;border-radius:10px;background:rgba(20,32,51,.04);border:1px solid var(--line)}.settings-readonly>div{display:grid;grid-gap:.2rem;gap:.2rem}.settings-readonly strong{font-size:.95rem}.settings-hr{border:none;border-top:1px solid var(--line);margin:.5rem 0}@media (max-width:860px){.settings-layout{grid-template-columns:1fr}.settings-nav{position:static;flex-direction:row;flex-wrap:wrap}.settings-nav-item{flex:1 1 140px}.settings-nav-item span{display:none}.settings-grid-2,.settings-readonly{grid-template-columns:1fr}}.dv-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1rem;gap:1rem;margin-bottom:1rem}.dv-report{margin-top:1rem}.dv-score{margin:0 0 .85rem;font-size:.85rem}.dv-checks{list-style:none;margin:0;padding:0;display:grid;grid-gap:.65rem;gap:.65rem}.dv-check{border:1px solid var(--line);border-radius:10px;padding:.75rem .85rem;background:rgba(255,255,255,.55)}.dv-check p{margin:.35rem 0 0;font-size:.9rem;line-height:1.45}.dv-check-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.dv-check-verified{border-color:rgba(6,118,71,.28)}.dv-check-failed{border-color:rgba(180,35,24,.28)}.dv-check-pending{border-color:rgba(181,71,8,.28)}.dv-meta{font-size:.8rem!important}.dv-resolvers{list-style:none;margin:.5rem 0 0;padding:0;display:grid;grid-gap:.25rem;gap:.25rem;font-size:.8rem}.dv-resolvers li{display:flex;justify-content:space-between;gap:.75rem;padding:.25rem 0;border-bottom:1px dashed var(--line);color:var(--muted)}.dv-resolvers li span:first-child{font-weight:600;color:var(--ink)}.dv-hints{margin-top:1rem;padding:.85rem;border-radius:10px;background:rgba(20,92,158,.06);border:1px solid rgba(20,92,158,.15)}.dv-hints h4{margin:0 0 .4rem;font-size:.9rem}.dv-hints ul{margin:0;padding-left:1.1rem}.dv-history{list-style:none;margin:0;padding:0;display:grid;grid-gap:.35rem;gap:.35rem}.dv-history-item{width:100%;display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;text-align:left;border:1px solid transparent;background:transparent;border-radius:8px;padding:.55rem .45rem;cursor:pointer;font:inherit;color:inherit}.dv-history-item:hover{background:rgba(255,255,255,.6);border-color:var(--line)}@media (max-width:860px){.dv-layout{grid-template-columns:1fr}}.ngx-layout{display:grid;grid-template-columns:minmax(280px,360px) 1fr;grid-gap:1rem;gap:1rem;align-items:start}.ngx-preview{margin:0;padding:1rem;max-height:min(70vh,720px);overflow:auto;border-radius:10px;border:1px solid var(--line);background:#142033;color:#e8eef4;font-size:.78rem;line-height:1.45;white-space:pre;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.ngx-catalog{margin-top:1rem;padding-top:.85rem;border-top:1px solid var(--line)}.ngx-catalog h4{margin:0 0 .5rem;font-size:.9rem}.ngx-catalog ul{list-style:none;margin:0;padding:0;display:grid;grid-gap:.35rem;gap:.35rem}.ngx-catalog button{width:100%;text-align:left;border:1px solid transparent;background:transparent;border-radius:8px;padding:.55rem .6rem;cursor:pointer;font:inherit;display:grid;grid-gap:.15rem;gap:.15rem;color:inherit}.ngx-catalog button span{font-size:.75rem;color:var(--muted)}.ngx-catalog button.is-active,.ngx-catalog button:hover{background:var(--panel-solid);border-color:var(--line)}@media (max-width:960px){.ngx-layout{grid-template-columns:1fr}}.php-stats{grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.75rem}.php-stats,.php-version-grid{display:grid;gap:.75rem;margin-bottom:1rem}.php-version-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.75rem}.php-ver-card{border:1px solid var(--line);border-radius:12px;padding:.9rem 1rem;background:var(--panel-solid);display:grid;grid-gap:.45rem;gap:.45rem}.php-ver-card.is-default{border-color:rgba(11,122,108,.35);box-shadow:inset 3px 0 0 var(--accent)}.php-ver-top{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}.php-ver-top strong{font-family:var(--font-brand);font-size:1.05rem}.php-ver-badges{display:flex;flex-wrap:wrap;gap:.25rem;justify-content:flex-end}.php-ver-sock{margin:0;font-size:.78rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.php-ver-foot{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.25rem}.php-ext-row{display:flex;flex-wrap:wrap;gap:.4rem}.php-sock{font-size:.72rem;color:var(--muted)}.php-filter{display:flex;gap:.25rem}.php-filter button{border:1px solid var(--line);background:transparent;border-radius:8px;padding:.3rem .65rem;font:inherit;font-size:.8rem;cursor:pointer;color:var(--muted)}.php-filter button.is-active{background:rgba(11,122,108,.1);color:var(--accent);border-color:rgba(11,122,108,.25);font-weight:600}.php-warn-modal p{margin:0 0 .85rem;line-height:1.5}.php-warn-list{margin:0 0 .85rem;padding-left:1.15rem;display:grid;grid-gap:.4rem;gap:.4rem;line-height:1.45;color:var(--muted);font-size:.9rem}.php-warn-list code{font-size:.8rem}.php-warn-danger{color:var(--danger);font-weight:500}.php-warn-banner{border-radius:10px;background:rgba(180,35,24,.08);border:1px solid rgba(180,35,24,.22);color:var(--danger)}.php-info-banner,.php-warn-banner{padding:.75rem .85rem;font-size:.88rem;line-height:1.45}.php-info-banner{border-radius:10px;background:rgba(20,92,158,.08);border:1px solid rgba(20,92,158,.18);color:var(--accent-2)}@media (max-width:900px){.php-stats,.php-version-grid{grid-template-columns:1fr 1fr}}@media (max-width:560px){.php-stats,.php-version-grid{grid-template-columns:1fr}}.node-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;margin-bottom:1rem}.node-hints{margin:0 0 1rem;padding:.75rem 1rem .75rem 1.4rem;border-radius:10px;background:rgba(20,92,158,.06);border:1px solid rgba(20,92,158,.14);font-size:.85rem;color:var(--muted)}.node-name-cell{display:flex;flex-direction:column;gap:.15rem}.node-cmd,.node-cwd{font-size:.75rem;word-break:break-all}.node-actions{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end}.node-form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem 1rem;gap:.75rem 1rem}.node-env-textarea,.node-logs{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8rem;line-height:1.45}.node-logs{margin:0;max-height:min(50vh,420px);overflow:auto;padding:.85rem 1rem;border-radius:10px;background:rgba(0,0,0,.04);border:1px solid var(--border,rgba(0,0,0,.08));white-space:pre-wrap;word-break:break-word}@media (max-width:720px){.node-form-grid,.node-stats{grid-template-columns:1fr}}.py-stats,.py-templates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;margin-bottom:1rem}.py-template-card{display:flex;flex-direction:column;gap:.35rem;text-align:left;padding:.9rem 1rem;border-radius:12px;border:1px solid var(--border,rgba(0,0,0,.1));background:rgba(20,92,158,.04);cursor:pointer;font:inherit;color:inherit;transition:border-color .15s ease,background .15s ease}.py-template-card:hover{border-color:rgba(20,92,158,.35);background:rgba(20,92,158,.08)}.py-template-card span{font-size:.82rem;color:var(--muted)}.py-template-card code{font-size:.72rem;word-break:break-all;opacity:.85}.py-hints{margin:0 0 1rem;padding:.75rem 1rem .75rem 1.4rem;border-radius:10px;background:rgba(20,92,158,.06);border:1px solid rgba(20,92,158,.14);font-size:.85rem;color:var(--muted)}.py-name-cell{display:flex;flex-direction:column;gap:.15rem}.py-cmd,.py-cwd{font-size:.75rem;word-break:break-all}.py-actions{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end}.py-form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem 1rem;gap:.75rem 1rem}.py-fw-pills{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem}.py-fw-pills button{font:inherit;padding:.35rem .75rem;border-radius:8px;border:1px solid var(--border,rgba(0,0,0,.12));background:transparent;cursor:pointer;color:inherit}.py-fw-pills button.is-active{border-color:rgba(20,92,158,.45);background:rgba(20,92,158,.1);font-weight:600}.py-env-textarea,.py-logs{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8rem;line-height:1.45}.py-logs{margin:0;max-height:min(50vh,420px);overflow:auto;padding:.85rem 1rem;border-radius:10px;background:rgba(0,0,0,.04);border:1px solid var(--border,rgba(0,0,0,.08));white-space:pre-wrap;word-break:break-word}@media (max-width:900px){.py-templates{grid-template-columns:1fr}}@media (max-width:720px){.py-form-grid,.py-stats{grid-template-columns:1fr}}.cron-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;margin-bottom:1rem}.cron-hints{margin:0 0 1rem;padding:.75rem 1rem .75rem 1.4rem;border-radius:10px;background:rgba(20,92,158,.06);border:1px solid rgba(20,92,158,.14);font-size:.85rem;color:var(--muted)}.cron-freq-cell{display:flex;flex-direction:column;gap:.2rem}.cron-cmd,.cron-expr{font-size:.75rem;word-break:break-all}.cron-actions{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end}.cron-log-list{display:flex;flex-direction:column;gap:.75rem;max-height:min(55vh,480px);overflow:auto}.cron-log-entry{border:1px solid var(--border,rgba(0,0,0,.1));border-radius:10px;padding:.65rem .75rem;background:rgba(0,0,0,.02)}.cron-log-entry header{display:flex;align-items:center;gap:.65rem;margin-bottom:.45rem;flex-wrap:wrap}.cron-log-entry pre{margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;line-height:1.45;white-space:pre-wrap;word-break:break-word}@media (max-width:720px){.cron-stats{grid-template-columns:1fr}}.ftp-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;margin-bottom:1rem}.ftp-hints{margin:0 0 1rem;padding:.75rem 1rem .75rem 1.4rem;border-radius:10px;background:rgba(20,92,158,.06);border:1px solid rgba(20,92,158,.14);font-size:.85rem;color:var(--muted)}.ftp-path{font-size:.75rem;word-break:break-all}.ftp-actions{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end}.ftp-form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem 1rem;gap:.75rem 1rem}.ftp-password-row{display:flex;gap:.5rem;align-items:stretch}.ftp-password-row .ui-input,.ftp-password-row input{flex:1 1}.ftp-reveal-pass{display:block;padding:.75rem 1rem;border-radius:10px;background:rgba(0,0,0,.04);border:1px solid var(--border,rgba(0,0,0,.1));font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.95rem;letter-spacing:.02em;word-break:break-all}@media (max-width:720px){.ftp-form-grid,.ftp-stats{grid-template-columns:1fr}}.dns-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;margin-bottom:1rem}.dns-toolbar{max-width:280px;margin-bottom:.75rem}.dns-quick,.dns-type-chips,.dns-type-pills{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem}.dns-type-chips button,.dns-type-pills button{font:inherit;padding:.3rem .65rem;border-radius:8px;border:1px solid var(--border,rgba(0,0,0,.12));background:transparent;cursor:pointer;color:inherit;display:inline-flex;align-items:center;gap:.35rem}.dns-type-chips button span{font-size:.75rem;opacity:.7}.dns-type-chips button.is-active,.dns-type-pills button.is-active{border-color:rgba(20,92,158,.45);background:rgba(20,92,158,.1);font-weight:600}.dns-hints{margin:0 0 1rem;padding:.75rem 1rem .75rem 1.4rem;border-radius:10px;background:rgba(20,92,158,.06);border:1px solid rgba(20,92,158,.14);font-size:.85rem;color:var(--muted)}.dns-content{font-size:.75rem;word-break:break-all;max-width:28rem;display:inline-block}.dns-actions{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end}.dns-form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem 1rem;gap:.75rem 1rem}.dns-content-input{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.82rem}@media (max-width:720px){.dns-form-grid,.dns-stats{grid-template-columns:1fr}}.md-form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem 1rem;gap:.75rem 1rem}.md-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;margin:1rem 0}.md-infra{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.md-infra-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .7rem;border-radius:10px;border:1px solid var(--border,rgba(0,0,0,.1));font-size:.88rem}.md-infra-chip.ok{background:rgba(22,120,80,.06)}.md-infra-chip.bad{background:rgba(180,35,24,.06)}.md-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;margin-bottom:1rem}.md-check-msg{margin:0 0 .35rem;font-weight:560}.md-check-score{margin:0 0 .65rem;font-size:.82rem}.md-obs{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.5rem}.md-details code,.md-obs code{font-size:.75rem;word-break:break-all}.md-details{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:.35rem}.md-details li{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.85rem}.md-hint{margin:.65rem 0 0;font-size:.85rem;color:var(--accent-2,#145c9e)}.md-hints{margin:0 0 1rem;padding:.75rem 1rem .75rem 1.4rem;border-radius:10px;background:rgba(20,92,158,.06);border:1px solid rgba(20,92,158,.14);font-size:.85rem;color:var(--muted)}.md-rbl-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:.65rem;gap:.65rem}.md-rbl-grid li{display:flex;flex-direction:column;gap:.2rem;padding:.65rem .75rem;border-radius:10px;border:1px solid var(--border,rgba(0,0,0,.1));font-size:.85rem}.md-rbl-grid code{font-size:.72rem;word-break:break-all}@media (max-width:900px){.md-checks{grid-template-columns:1fr}}@media (max-width:720px){.md-form-grid,.md-stats{grid-template-columns:1fr}}.sf-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;margin-bottom:1rem}.sf-hints{margin:0 0 1rem;padding:.75rem 1rem .75rem 1.4rem;border-radius:10px;background:rgba(20,92,158,.06);border:1px solid rgba(20,92,158,.14);font-size:.85rem;color:var(--muted)}.sf-form{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.sf-form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem 1rem;gap:.75rem 1rem}.sf-sens-pills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.5rem;gap:.5rem}.sf-sens-pills button{font:inherit;text-align:left;padding:.65rem .75rem;border-radius:10px;border:1px solid var(--border,rgba(0,0,0,.12));background:transparent;cursor:pointer;color:inherit;display:flex;flex-direction:column;gap:.2rem}.sf-sens-pills button span{font-size:.78rem;color:var(--muted)}.sf-sens-pills button.is-active{border-color:rgba(20,92,158,.45);background:rgba(20,92,158,.08)}.sf-preview{margin:.5rem 0 0;font-size:.85rem}.sf-lists{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem;gap:.75rem}.sf-list-add{display:flex;gap:.5rem;margin-bottom:.75rem}.sf-list-add .ui-input,.sf-list-add input{flex:1 1}.sf-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem;max-height:280px;overflow:auto}.sf-list li{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.35rem .5rem;border-radius:8px;border:1px solid var(--border,rgba(0,0,0,.08));font-size:.85rem}.sf-list code{word-break:break-all}@media (max-width:900px){.sf-form-grid,.sf-lists,.sf-sens-pills,.sf-stats{grid-template-columns:1fr}}.wm-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;margin-bottom:1rem}.wm-hints{margin:0 0 1rem;padding:.75rem 1rem .75rem 1.4rem;border-radius:10px;background:rgba(20,92,158,.06);border:1px solid rgba(20,92,158,.14);font-size:.85rem;color:var(--muted)}.wm-clients{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem;gap:.75rem;margin-bottom:1rem}.wm-url{display:block;font-size:.8rem;word-break:break-all;margin-bottom:.75rem}.wm-client-actions{display:flex;flex-wrap:wrap;gap:.4rem}.wm-proto-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.wm-proto-card{border:1px solid var(--border,rgba(0,0,0,.1));border-radius:12px;padding:.85rem;display:flex;flex-direction:column;gap:.65rem}.wm-proto-card header{display:flex;flex-direction:column;gap:.15rem}.wm-proto-card dl{margin:0;display:flex;flex-direction:column;gap:.45rem}.wm-proto-card dt{font-size:.72rem;color:var(--muted);margin:0}.wm-proto-card dd{margin:.1rem 0 0;display:flex;align-items:center;justify-content:space-between;gap:.35rem}.wm-proto-card code{font-size:.82rem;word-break:break-all}.wm-notes{margin:.85rem 0 0;font-size:.85rem}.wm-copy-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.wm-copy-list li{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.65rem .75rem;border-radius:10px;border:1px solid var(--border,rgba(0,0,0,.1))}.wm-copy-list strong{display:block;font-size:.85rem;margin-bottom:.25rem}.wm-copy-list code{font-size:.75rem;white-space:pre-wrap;word-break:break-word}.wm-edit-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem 1rem;gap:.75rem 1rem}@media (max-width:900px){.wm-clients,.wm-edit-grid,.wm-proto-grid,.wm-stats{grid-template-columns:1fr}}.traffic-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.traffic-field{display:flex;flex-direction:column;gap:.35rem;min-width:220px}.traffic-ranges{display:flex;gap:.35rem;flex-wrap:wrap}.traffic-range-btn{border:1px solid var(--border,rgba(0,0,0,.12));background:var(--panel,#fff);color:inherit;padding:.45rem .9rem;border-radius:8px;cursor:pointer;font:inherit;font-size:.875rem}.traffic-range-btn.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);font-weight:600}.traffic-meta{font-size:.85rem;margin-bottom:1rem}.traffic-chart{display:flex;align-items:flex-end;gap:.35rem;min-height:140px;height:160px;padding-top:.5rem}.traffic-bar-col{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;min-width:0;gap:.35rem}.traffic-bar{width:100%;max-width:28px;border-radius:4px 4px 0 0;background:linear-gradient(180deg,var(--accent),var(--accent-2));min-height:4px}.traffic-bar-label{font-size:.65rem;color:var(--muted,#667);white-space:nowrap}.traffic-split{display:grid;grid-template-columns:1.2fr 1fr;grid-gap:1rem;gap:1rem}.traffic-codes{display:flex;flex-direction:column;gap:.55rem}.traffic-code-row{display:grid;grid-template-columns:52px 1fr auto;align-items:center;grid-gap:.65rem;gap:.65rem}.traffic-code-track{height:8px;border-radius:999px;background:color-mix(in srgb,var(--border,#ccc) 50%,transparent);overflow:hidden}.traffic-code-fill{height:100%;border-radius:inherit;background:var(--accent)}.traffic-code-count{font-size:.85rem;white-space:nowrap}.traffic-latency-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));grid-gap:1rem;gap:1rem}.traffic-latency-grid strong{font-size:1.15rem;font-family:var(--font-brand,inherit)}.traffic-path{font-size:.8rem;word-break:break-all}@media (max-width:900px){.traffic-split{grid-template-columns:1fr}.traffic-toolbar{flex-direction:column;align-items:stretch}}.elog-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:.75rem 1rem;gap:.75rem 1rem;padding:1rem;margin-bottom:1rem;border:1px solid var(--border,rgba(0,0,0,.1));border-radius:12px;background:color-mix(in srgb,var(--panel,#fff) 92%,var(--accent) 8%)}.elog-filter-actions{display:flex;gap:.5rem;align-items:flex-end;align-self:end;flex-wrap:wrap}.elog-meta{font-size:.85rem;margin-bottom:.85rem}.elog-msg{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:360px;font-size:.85rem}.elog-path{font-size:.75rem;word-break:break-all;max-width:200px;display:inline-block}.elog-detail{display:grid;grid-gap:.85rem;gap:.85rem}.elog-pre{margin:.35rem 0 0;padding:.75rem;border-radius:8px;background:color-mix(in srgb,var(--border,#ccc) 35%,transparent);font-size:.8rem;white-space:pre-wrap;word-break:break-word;max-height:220px;overflow:auto}@media (max-width:700px){.elog-msg{max-width:100%}}.maint-row-actions{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-end}.maint-form{display:grid;grid-gap:1rem;gap:1rem}.maint-toggle-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem}.maint-schedule{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem 1rem;gap:.75rem 1rem}.maint-ip-add{display:flex;gap:.5rem;margin-bottom:.5rem}.maint-html{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8rem}.maint-preview-frame{width:100%;min-height:360px;border:1px solid var(--border,rgba(0,0,0,.12));border-radius:10px;background:#fff}@media (max-width:700px){.maint-schedule{grid-template-columns:1fr}}.sclone-layout{display:grid;grid-template-columns:1.1fr 1fr;grid-gap:1rem;gap:1rem;margin-bottom:1rem}.sclone-form{display:grid;grid-gap:.85rem;gap:.85rem}.sclone-toggles{display:grid;grid-gap:.55rem;gap:.55rem}.sclone-progress{height:8px;border-radius:999px;background:color-mix(in srgb,var(--border,#ccc) 55%,transparent);overflow:hidden;margin-bottom:.65rem}.sclone-progress-bar{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-2));transition:width .35s ease}.sclone-progress-meta{display:flex;align-items:center;gap:.65rem;margin-bottom:.75rem}.sclone-steps{list-style:none;margin:0;padding:0;display:grid;grid-gap:.45rem;gap:.45rem}.sclone-steps li{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;font-size:.9rem}.sclone-step-detail{font-size:.8rem;width:100%;padding-left:.25rem}.sclone-job-row{cursor:pointer}.sclone-job-row:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}@media (max-width:900px){.sclone-layout{grid-template-columns:1fr}}.stg-layout{display:grid;grid-template-columns:1.1fr 1fr;grid-gap:1rem;gap:1rem;margin-bottom:1rem}.stg-form{display:grid;grid-gap:.85rem;gap:.85rem}.stg-toggles{display:grid;grid-gap:.5rem;gap:.5rem}.stg-actions{display:flex;flex-wrap:wrap;gap:.5rem}.stg-progress{height:8px;border-radius:999px;background:color-mix(in srgb,var(--border,#ccc) 55%,transparent);overflow:hidden;margin-bottom:.65rem}.stg-progress-bar{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-2));transition:width .35s ease}.stg-progress-meta{display:flex;gap:.65rem;align-items:center;margin-bottom:.75rem}.stg-steps{list-style:none;margin:0;padding:0;display:grid;grid-gap:.45rem;gap:.45rem}.stg-steps li{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;font-size:.9rem}.stg-step-detail{width:100%;font-size:.8rem}.stg-job-row{cursor:pointer}.stg-job-row:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}@media (max-width:900px){.stg-layout{grid-template-columns:1fr}}.gitd-layout{display:grid;grid-template-columns:.9fr 1.2fr;grid-gap:1rem;gap:1rem;margin-bottom:1rem}.gitd-form{display:grid;grid-gap:.75rem;gap:.75rem}.gitd-row-actions{display:flex;flex-wrap:wrap;gap:.4rem}.gitd-url{font-size:.75rem;word-break:break-all}.gitd-log-row{cursor:pointer}.gitd-log-row:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}.gitd-settings{display:grid;grid-gap:1rem;gap:1rem}.gitd-block{display:grid;grid-gap:.4rem;gap:.4rem}.gitd-pre{margin:0;padding:.75rem;border-radius:8px;background:color-mix(in srgb,var(--border,#ccc) 35%,transparent);font-size:.75rem;white-space:pre-wrap;word-break:break-all;max-height:180px;overflow:auto}.gitd-secret{font-size:.8rem;word-break:break-all}.gitd-mini-logs{list-style:none;margin:0;padding:0;display:grid;grid-gap:.35rem;gap:.35rem;font-size:.85rem}@media (max-width:900px){.gitd-layout{grid-template-columns:1fr}}.product-tour-root{position:fixed;inset:0;z-index:9500;pointer-events:none}.product-tour-backdrop{position:absolute;inset:0;background:rgba(12,18,28,.55);pointer-events:auto}.product-tour-spotlight{position:absolute;border-radius:12px;box-shadow:0 0 0 9999px rgba(12,18,28,.55);background:transparent;outline:2px solid rgba(11,122,108,.85);outline-offset:2px;pointer-events:none;transition:top .2s ease,left .2s ease,width .2s ease,height .2s ease}.product-tour-card{pointer-events:auto;width:min(340px,calc(100vw - 2rem));padding:1rem 1.1rem 1.15rem;z-index:1;box-shadow:var(--shadow);animation:product-tour-card-in .22s ease}@keyframes product-tour-card-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.product-tour-card-meta{display:flex;justify-content:space-between;gap:.5rem;font-size:.78rem;color:var(--muted);margin-bottom:.35rem}.product-tour-title{margin:0 0 .4rem;font-family:var(--font-brand);font-size:1.1rem}.product-tour-body{margin:0 0 .65rem;font-size:.92rem;line-height:1.45}.product-tour-tips{margin:0 0 .85rem;padding-left:1.1rem;font-size:.82rem;color:var(--muted);line-height:1.4}.product-tour-actions{display:flex;justify-content:flex-end;gap:.45rem}.product-tour-progress{margin-top:.85rem;height:4px;border-radius:999px;background:rgba(20,32,51,.08);overflow:hidden}.product-tour-progress>span{display:block;height:100%;background:var(--accent);transition:width .25s ease}.product-tour-step-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:.75rem;gap:.75rem}.product-tour-step-list li{display:grid;grid-template-columns:auto 1fr;grid-gap:.75rem;gap:.75rem;padding:.75rem .85rem;border-radius:10px;border:1px solid var(--line);background:rgba(255,255,255,.45)}.product-tour-step-list li.is-current{border-color:rgba(11,122,108,.35);box-shadow:inset 3px 0 0 var(--accent)}.product-tour-step-list li.is-done{opacity:.75}.product-tour-step-num{display:grid;place-items:center;width:1.75rem;height:1.75rem;border-radius:999px;background:rgba(11,122,108,.12);color:var(--accent);font-weight:700;font-size:.85rem}.ui-field-label-row{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.ui-help-tip{display:inline-flex;vertical-align:middle;line-height:1}.ui-help-tip-btn{display:inline-grid;place-items:center;width:1.25rem;height:1.25rem;padding:0;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.7);color:var(--accent);font-size:.72rem;font-weight:700;cursor:help;line-height:1}.ui-help-tip-btn:focus-visible,.ui-help-tip-btn:hover{background:rgba(11,122,108,.12);border-color:rgba(11,122,108,.35);outline:none}.ui-help-tip-pop{position:fixed;z-index:9600;width:min(260px,calc(100vw - 1.5rem));padding:.65rem .75rem;border-radius:10px;border:1px solid var(--line);background:var(--panel-solid);box-shadow:var(--shadow);color:var(--ink);font-size:.82rem;line-height:1.45;font-family:var(--font-ui)}.help-tip-demo-grid{display:grid;grid-gap:.75rem;gap:.75rem}.help-tip-demo-card{display:grid;grid-gap:.35rem;gap:.35rem;padding:.85rem 1rem;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.5)}.help-tip-demo-card header{display:flex;align-items:center;gap:.4rem}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);cursor:pointer;font-size:1.1rem;flex-shrink:0}.locale-toggle.theme-toggle{width:auto;min-width:40px;padding:0 .55rem;font-size:.8rem;font-weight:700;letter-spacing:.04em}.theme-toggle:hover{border-color:rgba(11,122,108,.4)}.theme-toggle-group{display:flex;flex-wrap:wrap;gap:.35rem}.theme-toggle-opt{display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--muted);padding:.45rem .7rem;cursor:pointer;font-size:.88rem;font-weight:600}.theme-toggle-opt.is-active{color:var(--ink);border-color:rgba(11,122,108,.45);background:rgba(11,122,108,.12);box-shadow:inset 0 0 0 1px rgba(11,122,108,.15)}html[data-theme=dark] .theme-toggle-opt.is-active{background:rgba(20,184,166,.16);border-color:rgba(20,184,166,.45)}html[data-theme=dark] .sidebar{background:linear-gradient(180deg,rgba(18,26,36,.96),rgba(12,17,24,.94))}html[data-theme=dark] .mobile-nav-toggle,html[data-theme=dark] .sidebar-close,html[data-theme=dark] .sidebar-cmd{background:var(--surface);color:var(--muted)}html[data-theme=dark] .form input,html[data-theme=dark] .form select,html[data-theme=dark] .form textarea,html[data-theme=dark] .sidebar-search input,html[data-theme=dark] .ui-input,html[data-theme=dark] .ui-select,html[data-theme=dark] .ui-textarea,html[data-theme=dark] input:not([type=checkbox]):not([type=radio]),html[data-theme=dark] select,html[data-theme=dark] textarea{background:var(--panel-solid);color:var(--ink);border-color:var(--line)}html[data-theme=dark] .ui-table-wrap{background:rgba(18,26,36,.72)}html[data-theme=dark] .ui-bulk-bar,html[data-theme=dark] .ui-table-toolbar{background:rgba(12,17,24,.65);border-color:var(--line)}html[data-theme=dark] .ui-table-sort-btn:hover{background:rgba(255,255,255,.04);color:var(--ink)}html[data-theme=dark] .ui-pagination{background:rgba(12,17,24,.55)}html[data-theme=dark] .ui-table th{background:rgba(12,17,24,.92)}html[data-theme=dark] .ui-modal,html[data-theme=dark] .ui-modal-head,html[data-theme=dark] .ui-table td:first-child,html[data-theme=dark] .ui-table th:first-child{background:var(--panel-solid)}html[data-theme=dark] .bar{background:rgba(231,238,248,.1)}html[data-theme=dark] .nav a:hover,html[data-theme=dark] .nav-pinned a:hover{background:rgba(20,184,166,.12)}html[data-theme=dark] .nav a.active,html[data-theme=dark] .nav-pinned a.active{background:linear-gradient(90deg,rgba(20,184,166,.22),rgba(96,165,250,.1));box-shadow:inset 3px 0 0 var(--accent)}html[data-theme=dark] .btn.ghost,html[data-theme=dark] .btn.secondary{background:var(--surface);color:var(--ink);border-color:var(--line)}html[data-theme=dark] .kbd{background:var(--surface);border-color:var(--line);color:var(--muted)}html[data-theme=dark] .help-tip-demo-card,html[data-theme=dark] .login-card{background:var(--panel)}html[data-theme=dark] .tp-toast{--toast-bg:rgba(26,35,48,0.94);color:var(--ink);border-color:var(--line)}html[data-theme=dark] .ui-skeleton{background:linear-gradient(90deg,rgba(231,238,248,.06),rgba(231,238,248,.12),rgba(231,238,248,.06));background-size:200% 100%}.wl-color-block{display:grid;grid-gap:.35rem;gap:.35rem;padding:.85rem 0;border-top:1px solid var(--line);margin-top:.35rem}.wl-color-block-head{display:flex;flex-direction:column;gap:.15rem;margin-bottom:.35rem}.wl-preset-chip{display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);padding:.3rem .65rem .3rem .35rem;font-size:.8rem;font-weight:600;cursor:pointer}.wl-preset-chip:disabled{opacity:.55;cursor:not-allowed}.wl-preset-chip:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}.wl-preset-swatch{width:18px;height:18px;border-radius:50%;border:1px solid var(--line);flex-shrink:0}.wl-color-field{display:grid;grid-gap:.35rem;gap:.35rem}.wl-color-row{display:flex;align-items:center;gap:.5rem}.wl-color-row input[type=color]{width:44px;height:40px;padding:.15rem;border:1px solid var(--line);border-radius:10px;background:var(--panel-solid);cursor:pointer}.wl-hex-input{flex:1 1;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9rem}.wl-live-preview{padding:.85rem 1rem}.brand-logo{display:block;max-height:36px;max-width:160px;width:auto;height:auto;object-fit:contain}.topbar-logo{flex-shrink:0}@media (max-width:720px){.sidebar .tpanel-logo-text .tpanel-logo-hub{display:none}}.wl-asset-block{margin-bottom:1rem}.wl-asset-preview{max-height:56px;max-width:140px;object-fit:contain;border-radius:8px;border:1px solid var(--line);background:var(--panel-solid);padding:.25rem}.wl-asset-drop{position:relative;display:flex;align-items:center;justify-content:center;margin-top:.5rem;min-height:44px;padding:.55rem .85rem;border:1px dashed var(--line);border-radius:10px;background:var(--surface);color:var(--muted);font-size:.86rem;font-weight:600;cursor:pointer}.wl-asset-drop:hover:not(.is-disabled){border-color:color-mix(in srgb,var(--accent) 50%,var(--line));color:var(--ink)}.wl-asset-drop.is-disabled{opacity:.55;cursor:not-allowed}.wl-asset-drop input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.wl-asset-drop.is-disabled input{cursor:not-allowed}.app-shell:has(.sidebar.portal-sidebar){--sidebar:260px}.sidebar.portal-sidebar{background:#14181f;color:#f3f4f6;border-right:1px solid rgba(255,255,255,.06);box-shadow:none}.sidebar.portal-sidebar .sidebar-head{border-bottom:1px solid rgba(255,255,255,.08);padding:1rem .85rem .85rem}.sidebar.portal-sidebar .tpanel-logo-text{color:#fff}.sidebar.portal-sidebar .sidebar-close{color:#e5e7eb;background:rgba(255,255,255,.06);border-color:transparent}.sidebar.portal-sidebar .sidebar-close:hover{background:rgba(255,255,255,.12)}.portal-home-link{display:inline-flex;align-items:center;padding:.35rem .65rem;border-radius:8px;font-size:.78rem;font-weight:600;color:#e5e7eb;text-decoration:none;background:rgba(255,255,255,.06)}.portal-home-link:hover{background:rgba(255,255,255,.12);color:#fff}.portal-nav{flex:1 1;min-height:0;overflow-y:auto;padding:.65rem .55rem 1rem;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}.portal-nav-section-label{padding:.35rem .75rem .55rem;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(229,231,235,.45)}.portal-nav-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.portal-nav-item{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;grid-column-gap:.75rem;column-gap:.75rem;min-height:54px;padding:.55rem .85rem;border-radius:10px;color:#f9fafb;text-decoration:none;font-weight:700;font-size:.95rem;line-height:1.25;transition:background .16s ease,color .16s ease}.portal-nav-item:hover{background:rgba(255,255,255,.06);color:#fff}.portal-nav-item.active{background:#2a303a;color:#fff}.portal-nav-icon-wrap{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;color:rgba(243,244,246,.88)}.portal-nav-item.active .portal-nav-icon-wrap{color:#fff}.portal-nav-icon{display:block;flex-shrink:0}.portal-nav-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.35rem;height:1.25rem;padding:0 .4rem;border-radius:999px;background:linear-gradient(180deg,#fbbf24,#f59e0b);color:#1c1917;font-size:.68rem;font-weight:800;line-height:1;flex-shrink:0;box-shadow:0 1px 0 rgba(0,0,0,.15)}.sidebar.portal-sidebar .sidebar-foot{border-top:1px solid rgba(255,255,255,.08);background:#10141a;flex-shrink:0}.sidebar.portal-sidebar .sidebar-user-name{color:#f9fafb}.sidebar.portal-sidebar .sidebar-user .muted{color:rgba(229,231,235,.55)}.sidebar.portal-sidebar .sidebar-avatar{background:#2a303a;color:#fff;border:1px solid rgba(255,255,255,.08)}.sidebar.portal-sidebar .sidebar-logout{color:#e5e7eb}.sidebar.portal-sidebar .sidebar-logout:hover{background:rgba(255,255,255,.08);color:#fff}.new-order-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,340px);grid-gap:1.25rem;gap:1.25rem;align-items:start}.new-order-main{display:flex;flex-direction:column;gap:1rem;min-width:0}.new-order-summary{position:-webkit-sticky;position:sticky;top:1rem}.new-order-cat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.65rem;gap:.65rem}.new-order-cat{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;text-align:left;padding:.85rem .95rem;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.new-order-cat strong{font-size:.92rem}.new-order-cat span{font-size:.78rem;color:var(--muted);line-height:1.35}.new-order-cat:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}.new-order-cat.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--panel-solid));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)}.new-order-pkg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:.75rem;gap:.75rem}.new-order-pkg{display:flex;flex-direction:column;gap:.45rem;text-align:left;padding:.95rem;border-radius:12px;border:1px solid var(--line);background:var(--panel-solid);color:var(--ink);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.new-order-pkg:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.new-order-pkg.active{border-color:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 50%,transparent)}.new-order-pkg-top{display:flex;justify-content:space-between;gap:.5rem;align-items:baseline}.new-order-pkg-top span{font-weight:800;font-size:.88rem;color:var(--accent);white-space:nowrap}.new-order-pkg p{margin:0;font-size:.82rem;color:var(--muted)}.new-order-pkg ul{margin:0;padding-left:1.1rem;font-size:.8rem;color:var(--ink)}.new-order-fields{display:flex;flex-direction:column;gap:1rem}.new-order-terms{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:.45rem;gap:.45rem}.new-order-term{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;padding:.65rem .55rem;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;text-align:left}.new-order-term strong{font-size:.85rem}.new-order-term span{font-size:.7rem;color:var(--muted)}.new-order-term.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--panel-solid))}.new-order-summary-list{margin:0;display:flex;flex-direction:column;gap:.55rem}.new-order-summary-list>div{display:flex;justify-content:space-between;gap:.75rem;font-size:.9rem}.new-order-summary-list dt{margin:0;color:var(--muted);font-weight:600}.new-order-summary-list dd{margin:0;font-weight:700;text-align:right;word-break:break-word}.new-order-total{padding-top:.55rem;margin-top:.25rem;border-top:1px solid var(--line);font-size:1rem!important}.new-order-total dd{color:var(--accent);font-size:1.1rem}.new-order-balance{display:grid;grid-template-columns:1fr 1fr;grid-gap:.65rem;gap:.65rem;margin:1rem 0;padding:.75rem;border-radius:10px;background:var(--surface)}.new-order-balance>div{display:flex;flex-direction:column;gap:.2rem}.new-order-balance strong{font-size:1rem}.new-order-submit{width:100%;margin-top:.35rem}.new-order-actions-mobile{display:none;gap:.5rem;flex-wrap:wrap}@media (max-width:980px){.new-order-layout{grid-template-columns:1fr}.new-order-summary{position:static;order:-1}.new-order-terms{grid-template-columns:repeat(3,minmax(0,1fr))}.new-order-actions-mobile{display:flex}}@media (max-width:640px){.new-order-cat-grid{grid-template-columns:1fr}.new-order-terms{grid-template-columns:repeat(2,minmax(0,1fr))}}.add-funds-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,340px);grid-gap:1.25rem;gap:1.25rem;align-items:start;margin-bottom:1.25rem}.add-funds-main{display:flex;flex-direction:column;gap:1rem;min-width:0}.add-funds-aside{position:-webkit-sticky;position:sticky;top:1rem}.add-funds-balance-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem;gap:.75rem}.add-funds-balance-value{font-size:1.75rem;font-weight:800;margin:.35rem 0;letter-spacing:-.02em}.add-funds-balance-value.sm{font-size:1.35rem}.add-funds-presets{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.85rem}.add-funds-preset{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:.4rem .8rem;font-size:.82rem;font-weight:700;cursor:pointer}.add-funds-preset.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--panel-solid))}.add-funds-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.65rem;gap:.65rem}.add-funds-method{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;text-align:left;padding:.85rem .95rem;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;transition:border-color .15s ease,background .15s ease}.add-funds-method strong{font-size:.92rem}.add-funds-method span{font-size:.78rem;color:var(--muted);line-height:1.35}.add-funds-method:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.add-funds-method.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--panel-solid));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 30%,transparent)}.add-funds-summary{margin:0 0 1rem;display:flex;flex-direction:column;gap:.55rem}.add-funds-summary>div{display:flex;justify-content:space-between;gap:.75rem;font-size:.9rem}.add-funds-summary dt{margin:0;color:var(--muted);font-weight:600}.add-funds-summary dd{margin:0;font-weight:700;text-align:right}.add-funds-summary-total{padding-top:.55rem;border-top:1px solid var(--line)}.add-funds-summary-total dd{color:var(--accent);font-size:1.05rem}.add-funds-submit{width:100%;margin-top:.75rem}.add-funds-actions-mobile{display:none;gap:.5rem;flex-wrap:wrap}.add-funds-history{margin-top:.25rem}.add-funds-txid{font-size:.78rem;font-weight:650}@media (max-width:980px){.add-funds-layout{grid-template-columns:1fr}.add-funds-aside{position:static;order:-1}.add-funds-actions-mobile{display:flex}}@media (max-width:640px){.add-funds-balance-grid,.add-funds-methods{grid-template-columns:1fr}}.client-updates-stack{display:flex;flex-direction:column;gap:1rem}.client-updates-sub{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.client-updates-sub>div{padding:.75rem;border-radius:12px;border:1px solid var(--line);background:var(--surface);display:flex;flex-direction:column;gap:.3rem}.client-updates-toolbar{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end;justify-content:space-between;margin-bottom:1rem}.client-updates-filters{display:flex;flex-wrap:wrap;gap:.4rem}.client-updates-filter{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:.4rem .85rem;font-size:.82rem;font-weight:700;cursor:pointer}.client-updates-filter.active{background:color-mix(in srgb,var(--accent) 14%,var(--panel-solid));border-color:var(--accent)}.client-updates-timeline{list-style:none;margin:0;padding:0 0 0 .35rem;display:flex;flex-direction:column;gap:0;border-left:2px solid var(--line)}.client-updates-item{position:relative;padding:0 0 1.1rem 1.25rem}.client-updates-dot{position:absolute;left:-6px;top:1.1rem;width:10px;height:10px;border-radius:999px;background:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.client-updates-card{padding:.95rem 1rem;border-radius:12px;border:1px solid var(--line);background:var(--panel-solid)}.client-updates-card-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem;margin-bottom:.45rem}.client-updates-badges{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.client-updates-card h3{margin:0 0 .35rem;font-size:1rem}.client-updates-card p{margin:0 0 .75rem;font-size:.9rem;line-height:1.4}.client-updates-detail{display:flex;flex-direction:column;gap:.85rem}.client-updates-detail p{margin:0;line-height:1.5;white-space:pre-wrap}@media (max-width:900px){.client-updates-sub{grid-template-columns:1fr 1fr}}@media (max-width:560px){.client-updates-sub{grid-template-columns:1fr}}.child-panel-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);grid-gap:1.25rem;gap:1.25rem;align-items:start}.child-panel-main{min-width:0}.child-panel-aside,.child-panel-main{display:flex;flex-direction:column;gap:1rem}.child-panel-aside{position:-webkit-sticky;position:sticky;top:1rem}.child-panel-fields{display:grid;grid-template-columns:1fr 1fr;grid-gap:.85rem;gap:.85rem}.child-panel-logo{display:flex;flex-direction:column;gap:.65rem}.child-panel-logo-drop{display:flex;align-items:center;justify-content:center;min-height:120px;padding:1rem;border:1px dashed var(--line);border-radius:14px;background:var(--surface);color:var(--muted);font-weight:600;cursor:pointer}.child-panel-logo-drop:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}.child-panel-logo-img{max-height:72px;max-width:100%;object-fit:contain}.child-panel-themes{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center}.child-panel-swatch{width:36px;height:36px;border-radius:999px;border:2px solid transparent;cursor:pointer;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12)}.child-panel-swatch.active{border-color:var(--ink);outline:2px solid color-mix(in srgb,var(--accent) 50%,transparent)}.child-panel-color-input{display:inline-flex;align-items:center;gap:.45rem;font-size:.82rem}.child-panel-color-input input{width:42px;height:32px;padding:0;border:none;background:transparent;cursor:pointer}.child-panel-status{display:flex;flex-direction:column;gap:.85rem}.child-panel-summary{margin:0;display:flex;flex-direction:column;gap:.55rem}.child-panel-summary>div{display:flex;justify-content:space-between;gap:.75rem;font-size:.9rem}.child-panel-summary dt{margin:0;color:var(--muted);font-weight:600}.child-panel-summary dd{margin:0;font-weight:700;text-align:right;word-break:break-word}.child-panel-preview{border-radius:14px;overflow:hidden;border:1px solid var(--line);background:#111827;color:#f9fafb}.child-panel-preview-bar{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;background:color-mix(in srgb,var(--child-accent,#0b7a6c) 88%,#000)}.child-panel-preview-bar img{width:36px;height:36px;object-fit:contain;border-radius:8px;background:rgba(255,255,255,.12)}.child-panel-preview-mark{width:36px;height:36px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;font-weight:800;background:rgba(255,255,255,.16)}.child-panel-preview-bar strong{display:block;font-size:.95rem}.child-panel-preview-bar span{display:block;font-size:.75rem;opacity:.85}.child-panel-preview-body{display:grid;grid-template-columns:110px 1fr;min-height:150px}.child-panel-preview-nav{display:flex;flex-direction:column;gap:.35rem;padding:.75rem .65rem;background:#0b1220;font-size:.75rem;font-weight:650;color:rgba(249,250,251,.7)}.child-panel-preview-nav .active{color:#fff;background:color-mix(in srgb,var(--child-accent,#0b7a6c) 35%,transparent);border-radius:8px;padding:.35rem .45rem}.child-panel-preview-card{padding:.9rem}.child-panel-preview-card strong{display:block;margin-bottom:.35rem}.child-panel-preview-card p{margin:0;font-size:.82rem;color:rgba(249,250,251,.72);line-height:1.4}.child-panel-submit{width:100%;margin-top:.85rem}.child-panel-actions-mobile{display:none;gap:.5rem;flex-wrap:wrap}@media (max-width:980px){.child-panel-layout{grid-template-columns:1fr}.child-panel-aside{position:static;order:-1}.child-panel-actions-mobile{display:flex}}@media (max-width:720px){.child-panel-fields,.child-panel-preview-body{grid-template-columns:1fr}}.client-api-stack{display:flex;flex-direction:column;gap:1rem}.client-api-top-grid{display:grid;grid-template-columns:1.4fr 1fr;grid-gap:1rem;gap:1rem}.client-api-status-row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-bottom:.85rem}.client-api-meta{margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.client-api-meta>div{display:flex;flex-direction:column;gap:.2rem}.client-api-meta dt{margin:0;font-size:.72rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.client-api-meta dd{margin:0;font-weight:650}.client-api-limits{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem;gap:.75rem}.client-api-limits>div{display:flex;flex-direction:column;gap:.25rem;padding:.85rem;border-radius:12px;background:var(--surface);border:1px solid var(--line)}.client-api-limits strong{font-size:1.45rem;font-weight:800}.client-api-key-row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between}.client-api-key{display:inline-block;font-size:1rem;font-weight:700;letter-spacing:.02em;padding:.65rem .85rem;border-radius:10px;background:#14181f;color:#f3f4f6;border:1px solid rgba(255,255,255,.08)}.client-api-key-actions{display:flex;flex-wrap:wrap;gap:.45rem}.client-api-code-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.client-api-code{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--panel-solid)}.client-api-code-head{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.65rem .85rem;border-bottom:1px solid var(--line);background:var(--surface)}.client-api-code pre{margin:0;padding:.9rem 1rem;overflow:auto;max-height:280px;background:#0f141b;color:#e7eef8;font-size:.82rem;line-height:1.45}.client-api-code code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre}@media (max-width:960px){.client-api-code-grid,.client-api-meta,.client-api-top-grid{grid-template-columns:1fr}}.client-tickets-stack{display:flex;flex-direction:column;gap:1rem}.client-tickets-toolbar{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end;justify-content:space-between;margin-bottom:1rem}.client-tickets-filters{display:flex;flex-wrap:wrap;gap:.4rem}.client-tickets-filter{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:.4rem .85rem;font-size:.82rem;font-weight:700;cursor:pointer}.client-tickets-filter.active{background:color-mix(in srgb,var(--accent) 14%,var(--panel-solid));border-color:var(--accent)}.client-tickets-actions{display:flex;flex-wrap:wrap;gap:.25rem}.client-ticket-form{display:flex;flex-direction:column;gap:.85rem}.client-ticket-form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem;gap:.75rem}.client-ticket-detail{display:flex;flex-direction:column;gap:1rem}.client-ticket-meta{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.client-ticket-thread{display:flex;flex-direction:column;gap:.65rem}.client-ticket-msg{padding:.85rem .95rem;border-radius:12px;border:1px solid var(--line);background:var(--surface)}.client-ticket-msg.staff{background:color-mix(in srgb,var(--accent) 8%,var(--panel-solid));border-color:color-mix(in srgb,var(--accent) 28%,var(--line))}.client-ticket-msg-head{display:flex;justify-content:space-between;gap:.75rem;margin-bottom:.35rem;font-size:.85rem}.client-ticket-msg p{margin:0;white-space:pre-wrap;line-height:1.45}@media (max-width:720px){.client-ticket-form-row{grid-template-columns:1fr}}.client-services-stack{display:flex;flex-direction:column;gap:1rem}.client-services-toolbar{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end;justify-content:space-between;margin-bottom:1rem}.client-services-filters{display:flex;flex-wrap:wrap;gap:.4rem}.client-services-filter{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:.4rem .85rem;font-size:.82rem;font-weight:700;cursor:pointer}.client-services-filter.active{background:color-mix(in srgb,var(--accent) 14%,var(--panel-solid));border-color:var(--accent);color:var(--ink)}.client-services-search{min-width:min(100%,260px)}.client-services-actions{display:flex;flex-wrap:wrap;gap:.25rem}.client-service-detail{margin:0;display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem 1rem;gap:.75rem 1rem}.client-service-detail>div{display:flex;flex-direction:column;gap:.2rem}.client-service-detail dt{margin:0;font-size:.75rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.client-service-detail dd{margin:0;font-weight:650}@media (max-width:720px){.client-service-detail{grid-template-columns:1fr}}.client-module-stack{display:flex;flex-direction:column;gap:1rem}.client-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}@media (max-width:800px){.client-stat-grid{grid-template-columns:1fr}}.client-stat-card{min-height:88px}.client-home-alert{margin-bottom:16px}.client-home-quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.client-home-quick-link{display:flex;flex-direction:column;gap:.35rem;padding:.9rem 1rem;border:1px solid var(--border,#2a3140);border-radius:10px;background:var(--panel,#12161e);color:inherit;text-decoration:none;transition:border-color .15s ease,background .15s ease}.client-home-quick-link:hover{border-color:var(--accent,#3b82f6);background:color-mix(in srgb,var(--accent,#3b82f6) 8%,transparent)}.client-home-quick-link strong{font-size:.95rem}.client-home-quick-link span{font-size:.82rem;color:var(--muted,#9aa3b2)}.client-home-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:1rem;gap:1rem;align-items:start}@media (max-width:1100px){.client-home-columns{grid-template-columns:1fr}.client-home-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.client-home-quick-grid{grid-template-columns:1fr}}.portal-page-hero{display:flex;gap:1rem;align-items:flex-start}.portal-page-hero-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background:#14181f;color:#f3f4f6;flex-shrink:0}@media (max-width:900px){.app-shell:has(.sidebar.portal-sidebar){--sidebar:260px}.sidebar.portal-sidebar{width:min(260px,88vw)}.portal-nav-item{min-height:52px;font-size:.92rem}.portal-nav-label{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.topbar-actions .btn.secondary:nth-child(n+3){display:none}.topbar-leading h1{font-size:1.05rem;line-height:1.25}.topbar-hint{font-size:.78rem}}.ui-drawer-root{position:fixed;inset:0;z-index:80}.ui-drawer-backdrop{position:absolute;inset:0;border:0;background:rgba(10,16,24,.45);cursor:pointer}.ui-drawer{position:absolute;top:0;right:0;height:100%;width:min(420px,100%);background:var(--panel-solid);border-left:1px solid var(--line);box-shadow:var(--shadow);display:flex;flex-direction:column}.ui-drawer-head{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.1rem;border-bottom:1px solid var(--line)}.ui-drawer-head h2{margin:0;font-size:1.05rem;font-family:var(--font-brand)}.ui-drawer-body{padding:1rem 1.1rem;overflow:auto;flex:1 1}.ui-progress{height:8px;border-radius:999px;background:var(--line);overflow:hidden}.ui-progress-bar{height:100%;background:var(--accent)}.ui-code,.ui-log,.ui-term{margin:0;padding:.75rem .9rem;border-radius:10px;border:1px solid var(--line);background:rgba(0,0,0,.35);color:var(--ink);font-size:12px;overflow:auto;max-height:280px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}html[data-theme=light] .ui-code,html[data-theme=light] .ui-log,html[data-theme=light] .ui-term{background:#0f172a;color:#e2e8f0}.ui-chart{border:1px solid var(--line);border-radius:var(--radius);padding:.85rem;background:var(--surface)}.ui-chart-title{margin:0 0 .65rem;font-size:.95rem;font-family:var(--font-brand)}.ui-tabs-list{display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin-bottom:.75rem}.ui-tab{border:0;background:transparent;color:var(--muted);padding:.45rem .75rem;cursor:pointer;border-bottom:2px solid transparent}.ui-tab.active{color:var(--ink);border-bottom-color:var(--accent)}.ui-combo{position:relative}.ui-combo-input{width:100%;padding:.55rem .7rem;border-radius:8px;color:var(--ink)}.ui-combo-input,.ui-combo-list{border:1px solid var(--line);background:var(--panel-solid)}.ui-combo-list{position:absolute;z-index:20;left:0;right:0;margin:4px 0 0;padding:0;list-style:none;border-radius:8px;max-height:220px;overflow:auto}.ui-combo-opt{width:100%;text-align:left;border:0;background:transparent;color:inherit;padding:.45rem .7rem;cursor:pointer}.ui-combo-opt:hover{background:var(--surface)}.ui-vtable{overflow:auto;border:1px solid var(--line);border-radius:10px}@media (max-width:720px){.ui-drawer{width:100%}}