:root{--ui-bg:#f3f7f6;--ui-surface:rgba(255,255,255,.96);--ui-ink:#17262b;--ui-muted:#66777d;--ui-line:#d8e3e0;--ui-brand:#087966;--ui-brand-strong:#056152;--ui-brand-soft:#e7f4f0;--ui-danger:#b83f3a;--ui-danger-soft:#fff2f1;--ui-warning:#8c5a13;--ui-warning-soft:#fff8e9;--ui-success:#146b52;--ui-success-soft:#eaf7f1;--ui-shadow-sm:0 8px 24px rgba(24,53,48,.06);--ui-shadow-md:0 18px 48px rgba(24,53,48,.09);--ui-radius:18px;--ui-radius-sm:12px;--ui-focus:0 0 0 4px rgba(8,121,102,.15)}
html{color-scheme:light;scroll-behavior:smooth}body{min-height:100vh;color:var(--ui-ink);background:radial-gradient(circle at 5% 0%,rgba(8,121,102,.075),transparent 26rem),radial-gradient(circle at 100% 18%,rgba(191,146,67,.055),transparent 24rem),var(--ui-bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{text-underline-offset:3px}img{max-width:100%}h1,h2,h3{color:var(--ui-ink);letter-spacing:-.025em}h1{line-height:1.12}.shell,main.shell,.container,main.container{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.top,header.top,.topbar,header.topbar{position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(202,218,214,.82);background:rgba(249,252,251,.88);box-shadow:0 5px 22px rgba(22,52,46,.045);backdrop-filter:blur(18px) saturate(145%);-webkit-backdrop-filter:blur(18px) saturate(145%)}.nav,.topbar .inner{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{color:var(--ui-brand-strong)!important;font-weight:850;letter-spacing:-.025em;text-decoration:none!important;white-space:nowrap}nav,.links{display:flex;align-items:center;gap:6px}nav a,.links a{min-height:38px;display:inline-flex;align-items:center;justify-content:center;padding:8px 11px;border-radius:10px;color:#405258;font-weight:700;text-decoration:none;transition:background .18s ease,color .18s ease,transform .18s ease}nav a:hover,.links a:hover,nav a[aria-current="page"],.links a.active{color:var(--ui-brand-strong);background:var(--ui-brand-soft)}
main{padding-block:30px 56px}.head,.page-head,.hero{margin-bottom:24px}.head h1,.page-head h1,.hero h1{margin-bottom:8px;font-size:clamp(1.75rem,3vw,2.55rem)}.head p,.page-head p,.hero p{color:var(--ui-muted)}.card,.panel,.section,.provider-card,.task-card,.result-card,.toolbar,.summary-card{border:1px solid var(--ui-line);border-radius:var(--ui-radius);background:var(--ui-surface);box-shadow:var(--ui-shadow-sm)}.card,.panel,.section,.provider-card,.task-card,.result-card,.summary-card{transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.provider-card:hover,.task-card:hover,.result-card:hover{border-color:#bfd7d1;box-shadow:var(--ui-shadow-md);transform:translateY(-1px)}
label{color:#34484e;font-weight:750}input,select,textarea{min-height:44px;border:1px solid #cbd9d6!important;border-radius:var(--ui-radius-sm)!important;background:#fff;color:var(--ui-ink);font:inherit;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}textarea{min-height:110px;line-height:1.55}input:hover,select:hover,textarea:hover{border-color:#9fbeb7!important}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--ui-brand)!important;box-shadow:var(--ui-focus)!important}input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.62;background:#eef3f1}
button,.button,.btn,a.button,a.btn{min-height:42px;border-radius:11px!important;font-weight:780;letter-spacing:-.01em;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease}button:not(:disabled):hover,.button:hover,.btn:hover{transform:translateY(-1px)}button:not(:disabled):active,.button:active,.btn:active{transform:translateY(0)}.primary,.button.primary,.btn.primary,button.primary{border-color:var(--ui-brand)!important;background:linear-gradient(135deg,var(--ui-brand),var(--ui-brand-strong))!important;color:#fff!important;box-shadow:0 8px 20px rgba(8,121,102,.19)}.danger,.button.danger,.btn.danger{border-color:#edc3c0!important;background:var(--ui-danger-soft)!important;color:var(--ui-danger)!important}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid rgba(8,121,102,.28);outline-offset:3px}
.notice,.success,.error,.warning,.alert,.message{border:1px solid transparent;border-radius:13px!important;padding:13px 15px;line-height:1.5}.notice,.success{border-color:#bfe2d5;background:var(--ui-success-soft);color:var(--ui-success)}.error,.alert.error{border-color:#efc9c6;background:var(--ui-danger-soft);color:#a13430}.warning,.alert.warning{border-color:#ecd59f;background:var(--ui-warning-soft);color:var(--ui-warning)}.muted,.hint,.sub,small{color:var(--ui-muted)}table{width:100%;border-collapse:separate;border-spacing:0}th{color:#52656b;background:#f4f8f7;font-size:.82rem;letter-spacing:.02em;text-align:left}th,td{padding:12px 14px;border-bottom:1px solid #e3ebe9}tbody tr{transition:background .16s ease}tbody tr:hover{background:#f7faf9}details{border-radius:13px}summary{cursor:pointer;font-weight:760}dialog{max-width:min(620px,calc(100vw - 32px));border:1px solid var(--ui-line);border-radius:20px;box-shadow:0 30px 90px rgba(13,38,33,.24)}dialog::backdrop{background:rgba(12,28,25,.46);backdrop-filter:blur(3px)}
body[data-ui-module="auth"]{display:grid;place-items:center;padding:28px}body[data-ui-module="auth"]::before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(125deg,rgba(255,255,255,.18),transparent 48%),radial-gradient(circle at 16% 82%,rgba(8,121,102,.12),transparent 20rem)}body[data-ui-module="auth"] .card{position:relative;width:min(430px,100%);padding:clamp(26px,5vw,42px);border-color:rgba(196,216,211,.9);box-shadow:0 28px 80px rgba(14,57,48,.13)}body[data-ui-module="auth"] h1{margin-bottom:8px;font-size:2rem}body[data-ui-module="auth"] form{display:grid;gap:16px}body[data-ui-module="auth"] button{width:100%}
@media(max-width:800px){.shell,main.shell,.container,main.container{width:min(100% - 24px,1180px)}.nav,.topbar .inner{min-height:60px;gap:12px}.nav>nav,.nav>.links,.topbar nav{max-width:72vw;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;justify-content:flex-start}.nav>nav::-webkit-scrollbar,.nav>.links::-webkit-scrollbar{display:none}nav a,.links a{white-space:nowrap}main{padding-block:22px 42px}.card,.panel,.section,.provider-card,.task-card,.result-card,.summary-card{border-radius:15px}table{display:block;overflow-x:auto}}
@media(max-width:520px){.brand{font-size:.95rem}nav a,.links a{min-height:36px;padding:7px 9px;font-size:.88rem}.head h1,.page-head h1,.hero h1{font-size:1.7rem}button,.button,.btn,a.button,a.btn{min-height:44px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Administrator workspace: one navigation, one hierarchy, progressive disclosure. */
.admin-global{width:100vw;margin-left:calc(50% - 50vw);padding:0!important}.admin-global .shell{width:min(1320px,calc(100% - 40px))}.admin-brand{display:inline-flex;align-items:center;gap:10px}.admin-mark{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:linear-gradient(145deg,var(--ui-brand),var(--ui-brand-strong));color:#fff;font-size:.95rem;box-shadow:0 7px 18px rgba(8,121,102,.18)}.admin-primary-nav form{margin:0}.admin-primary-nav button{min-height:38px;padding:8px 11px;border:0!important;background:transparent;color:#405258;box-shadow:none}.admin-primary-nav button:hover{background:var(--ui-brand-soft);color:var(--ui-brand-strong)}
.admin-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:26px 0 16px!important}.admin-page-head h1{margin:2px 0 7px;font-size:clamp(1.8rem,3vw,2.55rem)}.admin-page-head p,.admin-page-head .muted,.admin-page-head .hint{margin:0;color:var(--ui-muted);max-width:760px}.admin-eyebrow{display:block;color:var(--ui-brand);font-size:.76rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.admin-user-chip{padding:8px 11px;border:1px solid var(--ui-line);border-radius:999px;background:#fff;color:var(--ui-muted);font-size:.82rem;font-weight:750;white-space:nowrap}
.admin-tabs{display:flex;gap:5px;margin:0 0 22px;padding:5px;border:1px solid var(--ui-line);border-radius:14px;background:rgba(255,255,255,.78);box-shadow:0 7px 20px rgba(24,53,48,.04);overflow-x:auto}.admin-tabs a{flex:0 0 auto;min-height:36px;padding:7px 13px;border-radius:9px;color:#52656b;font-size:.88rem}.admin-tabs a[aria-current="page"]{background:var(--ui-brand);color:#fff;box-shadow:0 5px 14px rgba(8,121,102,.16)}
body[data-ui-module^="admin-"] .card,body[data-ui-module^="admin-"] .provider,body[data-ui-module^="admin-"] .config-card,body[data-ui-module^="admin-"] .workflow,body[data-ui-module^="admin-"] .test-panel{border-color:var(--ui-line);box-shadow:var(--ui-shadow-sm)}
body[data-ui-module="admin-settings"] .config-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,430px),1fr));gap:18px}body[data-ui-module="admin-settings"] .config-card{padding:20px}body[data-ui-module="admin-settings"] .card-head{padding-bottom:14px;border-bottom:1px solid #e5ecea}.config-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0}.config-summary span{min-width:0;padding:10px;border-radius:10px;background:#f4f8f7;color:#52656b;font-size:.78rem;overflow-wrap:anywhere}.config-summary strong{display:block;margin-bottom:3px;color:var(--ui-ink);font-size:.72rem;text-transform:uppercase;letter-spacing:.045em}.config-technical{margin:10px 0 14px;border:1px solid #e0e9e6;background:#fbfdfc}.config-technical>summary{padding:11px 13px;color:#4b615f}.config-technical[open]>summary{border-bottom:1px solid #e3ebe9}.config-technical>.capabilities,.config-technical>dl,.config-technical>details{margin-inline:13px}.config-technical>dl{padding-bottom:10px}.config-card>.card-actions{padding-top:14px;border-top:1px solid #e5ecea}.config-card>.card-actions button,.config-card>.card-actions .button{background:#fff}
body[data-ui-module="admin-image-models"] .provider{padding:20px}body[data-ui-module="admin-image-models"] .models{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:14px}body[data-ui-module="admin-image-models"] .model{padding:16px;border-color:#dce7e4;background:#fff}body[data-ui-module="admin-image-models"] .policy{max-width:520px;border-color:#d8e8e3;background:#f1f8f6}.model-technical{border:1px solid #e1e9e7;background:#f9fbfa}.model-technical>summary{padding:9px 11px}.model-technical .meta{padding:0 11px 10px}.model>.badges{margin-top:10px}.model>.footer-actions{padding-top:10px;border-top:1px solid #e7eeec}
body[data-ui-module="admin-provider"] .card{padding:clamp(18px,3vw,28px)}body[data-ui-module="admin-provider"] .model-section{border-color:#dce7e4;background:#fbfdfc}body[data-ui-module="admin-provider"] details.model-section>summary{padding:3px 0;color:#405a55}body[data-ui-module="admin-provider"] .model-toolbar{border-color:#d9e8e4;background:#f2f8f6}
body[data-ui-module="admin-presets"] .cards{gap:14px}body[data-ui-module="admin-presets"] .card{padding:18px}body[data-ui-module="admin-presets"] .facts{padding:10px;border-radius:10px;background:#f5f8f7}.preset-technical{margin:10px 0;border:1px solid #e1e9e7;background:#fbfdfc}.preset-technical>summary{padding:9px 11px;color:#45615b}.preset-technical p{padding:0 11px}.form-card{border-color:var(--ui-line)!important;box-shadow:var(--ui-shadow-sm)}
@media(max-width:900px){.admin-page-head{align-items:flex-start;flex-direction:column}.admin-user-chip{white-space:normal}.config-summary{grid-template-columns:1fr}.admin-global .shell{width:min(100% - 24px,1320px)}}
@media(max-width:600px){.admin-page-head{margin-top:20px!important}.admin-tabs{margin-bottom:16px}.admin-mark{width:30px;height:30px}.admin-primary-nav{max-width:68vw!important}.config-card>.card-actions{display:grid;grid-template-columns:1fr 1fr}.config-card>.card-actions>*{width:100%}.config-card>.card-actions button,.config-card>.card-actions .button{width:100%;height:100%}}
