:root{--ink: #241916;--surface: #fffaf7;--surface-solid: #fffdfb;--surface-soft: rgba(255, 255, 255, .66);--panel: rgba(255, 251, 247, .92);--panel-strong: rgba(255, 251, 247, .96);--line: rgba(86, 58, 50, .14);--muted: #735b54;--accent: #9f4329;--accent-strong: #7f3927;--accent-soft: #f0dfd7;--accent-contrast: #ffffff;--secondary: #d97754;--body-bg: radial-gradient(circle at top right, rgba(225, 119, 85, .18), transparent 30rem), linear-gradient(180deg, #fff9f5 0%, #f6eeeb 100%);--shadow-panel: 0 18px 55px rgba(88, 50, 39, .08);--shadow-dialog: 0 24px 80px rgba(88, 50, 39, .16);--focus-ring: rgba(182, 83, 53, .14);--success: #397a51;--warning: #8a5c0d;--danger: #a83232;color:var(--ink);background:#f8f1ed;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}[data-theme=dark]{--ink: #f7f1ea;--surface: #171d25;--surface-solid: #1d2530;--surface-soft: rgba(31, 39, 50, .78);--panel: rgba(23, 29, 37, .94);--panel-strong: rgba(28, 36, 46, .98);--line: rgba(216, 207, 197, .18);--muted: #d8cfc5;--accent: #f29b73;--accent-strong: #783522;--accent-soft: #253141;--accent-contrast: #fdf7ef;--secondary: #986b45;--body-bg: linear-gradient(180deg, rgba(242, 155, 115, .08) 0%, rgba(16, 21, 28, 0) 360px), linear-gradient(180deg, #10151c 0%, #141922 100%);--shadow-panel: 0 20px 60px rgba(0, 0, 0, .34);--shadow-dialog: 0 26px 90px rgba(0, 0, 0, .46);--focus-ring: rgba(242, 155, 115, .28);--success: #63d38e;--warning: #f4c95d;--danger: #ff8f8f}[data-theme=asgard]{--ink: #f7f4ec;--surface: #121b27;--surface-solid: #172233;--surface-soft: rgba(24, 35, 50, .78);--panel: rgba(18, 27, 39, .94);--panel-strong: rgba(21, 32, 48, .98);--line: rgba(220, 230, 238, .18);--muted: #dce6ee;--accent: #f4c95d;--accent-strong: #1f4f7a;--accent-soft: #1b2f45;--accent-contrast: #f7f4ec;--secondary: #2f779f;--body-bg: linear-gradient(90deg, rgba(77, 207, 224, .14), rgba(244, 201, 93, .12), rgba(201, 78, 111, .1)), linear-gradient(180deg, #0b111a 0%, #111a27 58%, #0d141f 100%);--shadow-panel: 0 22px 70px rgba(0, 0, 0, .38);--shadow-dialog: 0 28px 92px rgba(0, 0, 0, .5);--focus-ring: rgba(77, 207, 224, .28);--success: #71dca0;--warning: #f4c95d;--danger: #ff8f8f}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;color:var(--ink);background:var(--body-bg)}[data-theme=asgard] body:before{position:fixed;inset:0 0 auto;z-index:20;height:3px;pointer-events:none;background:linear-gradient(90deg,#4dcfe0,#f4c95d 48%,#c94e6f);content:""}button,input,select,textarea{font:inherit}button{cursor:pointer}.login,.gate,.splash{min-height:100vh;display:grid;place-items:center;padding:24px}.splash{gap:12px;color:var(--muted)}.login__panel,.gate__card{width:min(100%,460px);padding:32px;background:var(--panel);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow-dialog)}.login__copy{margin:28px 0;color:var(--muted);font-size:18px;line-height:1.45}.field-label{display:grid;gap:8px;margin:18px 0;color:var(--ink);font-weight:700}.field-label input,.field-label select{width:100%;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface-solid);color:var(--ink)}.mfa-methods{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.mfa-secret{display:grid;gap:10px;margin:18px 0;padding:16px;border-radius:16px;background:color-mix(in srgb,var(--accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent) 26%,transparent)}.mfa-secret span{color:var(--muted);font-weight:700}.mfa-secret code{overflow-wrap:anywhere;color:var(--ink);font-size:18px;font-weight:800;letter-spacing:.08em}.brand{display:flex;gap:14px;align-items:center}.brand h1,.brand p{margin:0}.brand p,.brand span,.muted{color:var(--muted)}.brand__mark{width:54px;height:54px;display:grid;place-items:center;border-radius:16px;background:var(--accent-strong);color:var(--accent-contrast);font-weight:800;font-size:24px;box-shadow:0 14px 28px color-mix(in srgb,var(--accent-strong) 28%,transparent)}.app-shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:28px 22px;background:color-mix(in srgb,var(--surface) 82%,transparent);border-right:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand--compact .brand__mark{width:42px;height:42px;border-radius:12px;font-size:18px}.brand--compact div:last-child{display:grid}.nav-list{display:grid;gap:6px;margin-top:34px}.nav-list a{display:flex;gap:10px;align-items:center;padding:12px 14px;color:var(--ink);text-decoration:none;border-radius:12px}.nav-list a:hover{background:color-mix(in srgb,var(--accent) 14%,transparent)}.workspace{width:min(1180px,100%);margin:0 auto;padding:30px 28px 64px}.control-plane{scroll-margin-top:20px}.control-plane__scope,.control-plane__policy-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.generated-code{margin:0;max-height:260px;overflow:auto;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-solid);color:var(--ink);font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:12px;line-height:1.35;white-space:pre;overflow-wrap:anywhere}.control-plane__scope{margin:22px 0 16px;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.developer-center__scope{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.developer-center__scope label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:700}.developer-center__scope label:last-child{grid-template-columns:auto 1fr;align-items:center}.developer-center__scope label:last-child select{grid-column:1 / -1}.developer-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid var(--line);margin-bottom:14px}.developer-metrics span{padding:12px;color:var(--muted)}.developer-metrics strong{color:var(--ink);font-size:20px;margin-right:5px}.developer-metrics .is-success strong{color:#16794a}.developer-metrics .is-running strong{color:#986400}.developer-metrics .is-failed strong{color:#b42318}.integration-state{display:flex;gap:12px;padding:14px;margin-bottom:14px;border-left:3px solid #986400;background:#fff8e7;color:#5e4200}.integration-state p{margin:3px 0 0}.architecture-map{border-top:1px solid var(--line)}.architecture-map__application{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 4px;border-bottom:1px solid var(--line)}.architecture-map__application span,.architecture-map__environment span{color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.architecture-map__application h3{margin:3px 0 0;font-size:22px}.architecture-map__environment{display:grid;gap:3px;justify-items:end;text-align:right}.architecture-map__environment strong{font-size:13px;overflow-wrap:anywhere}.architecture-map__environment--production strong{color:#9f241e}.architecture-map__layers{position:relative}.architecture-layer{position:relative;padding:18px 0 4px 42px}.architecture-layer:not(:last-child):after{position:absolute;left:14px;bottom:-18px;width:1px;height:36px;background:var(--line);content:""}.architecture-layer__header{display:grid;grid-template-columns:30px 34px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:50px;padding:8px 4px 12px;border-bottom:1px solid var(--line)}.architecture-layer__number{color:var(--muted);font-size:11px;font-weight:800}.architecture-layer__icon{width:34px;height:34px;display:grid;place-items:center;border-radius:7px}.architecture-layer--channels .architecture-layer__icon{color:#185fa5;background:#eaf3fb}.architecture-layer--services .architecture-layer__icon{color:#16794a;background:#e8f5ee}.architecture-layer--operations .architecture-layer__icon{color:#8a5b00;background:#fff3d6}.architecture-layer__header h4{margin:0;font-size:15px}.architecture-layer__header p{margin:2px 0 0;color:var(--muted);font-size:12px}.architecture-layer__header>strong{min-width:28px;text-align:center;font-size:13px}.component-pipeline-list{display:grid}.component-pipeline{display:grid;grid-template-columns:minmax(220px,1.25fr) minmax(200px,1fr) auto;gap:18px;align-items:center;padding:14px 4px;border-bottom:1px solid var(--line)}.component-pipeline__identity{display:flex;gap:10px;min-width:0}.component-pipeline__identity>div,.component-pipeline__run{display:grid;gap:4px;min-width:0}.component-pipeline small,.component-pipeline span{color:var(--muted);font-size:12px}.component-pipeline a{display:inline-flex;align-items:center;gap:5px;color:var(--accent);font-size:12px;text-decoration:none;overflow-wrap:anywhere}.pipeline-indicator{width:9px;height:9px;border-radius:50%;margin-top:5px;background:#8b8b8b;flex:0 0 auto}.pipeline-indicator--success{background:#1d9a60}.pipeline-indicator--running{background:#d79300}.pipeline-indicator--failed{background:#d92d20}.pipeline-progress{display:grid;gap:4px;min-width:180px}.pipeline-progress__track{width:100%;height:7px;overflow:hidden;border-radius:999px;background:#52372f1f}.pipeline-progress__track span{display:block;height:100%;border-radius:inherit;background:#8b8b8b}.pipeline-progress--success .pipeline-progress__track span{background:#1d9a60}.pipeline-progress--running .pipeline-progress__track span{background:#d79300}.pipeline-progress--failed .pipeline-progress__track span{background:#d92d20}.pipeline-progress small{display:block;overflow-wrap:anywhere}.pipeline-progress strong{color:var(--ink)}.platform-tag{display:inline-flex;align-items:center;margin-left:8px;padding:2px 7px;font-size:11px;border-radius:999px;color:#24406f;background:#eaf1ff;border:1px solid #c4daf5}.component-pipeline__actions{display:grid;gap:7px;justify-items:end}.xcode-webhook-urls{display:grid;gap:12px;margin:0 0 16px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:#ffffff8c}.xcode-webhook-urls>div{display:grid;gap:6px}.xcode-webhook-urls strong{font-size:.92rem}.xcode-webhook-urls code{display:block;overflow-wrap:anywhere;padding:8px 10px;border-radius:10px;background:#2419160d;font-size:.82rem}.xcode-webhook-urls p{margin:0;color:var(--muted);font-size:.9rem}.xcode-webhook-urls .button{justify-self:start}.xcode-latest-signal{margin:12px 4px 16px;padding:12px;display:grid;gap:10px;border:1px solid rgba(82,55,47,.14);border-radius:10px;background:#fffdf9}.xcode-latest-signal__header,.xcode-latest-signal__details{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:12px}.xcode-latest-signal__header strong{color:#30211d;display:block;font-size:14px}.xcode-latest-signal__header small{display:block}.xcode-latest-signal__details span{padding-right:8px;border-right:1px solid rgba(82,55,47,.14)}.xcode-latest-signal__details span:last-of-type{border-right:0}.xcode-test-summary{color:#4b362f;font-weight:700}.xcode-test-runs{gap:6px;max-width:320px}.xcode-test-runs small{padding:4px 6px;border-radius:999px;background:#f4ede9;border:1px solid #ddc8bf}.xcode-event-log{display:grid;gap:10px;margin:12px 4px 16px;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft)}.xcode-event-log>header,.xcode-event-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(140px,auto) minmax(160px,.7fr);gap:12px;align-items:center}.xcode-event-log>header{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.xcode-event-log>header strong{color:var(--ink);font-size:14px;text-transform:none}.xcode-event-list{display:grid;gap:8px}.xcode-event-row{padding:10px 0;border-top:1px solid var(--line)}.xcode-event-row>div{display:grid;gap:4px;min-width:0}.xcode-event-row span,.xcode-event-row small{color:var(--muted);overflow-wrap:anywhere}.xcode-event-row code{overflow-wrap:anywhere;color:var(--ink);font-size:12px}@media(max-width:820px){.developer-center__scope,.developer-metrics{grid-template-columns:1fr 1fr}.component-pipeline{grid-template-columns:1fr;gap:10px}.xcode-event-log>header,.xcode-event-row{grid-template-columns:1fr}.pipeline-progress{min-width:0}.component-pipeline__actions{justify-items:start}}@media(max-width:540px){.developer-center__scope,.developer-metrics{grid-template-columns:1fr}.architecture-map__application{align-items:flex-start;flex-direction:column}.architecture-map__environment{justify-items:start;text-align:left}.architecture-layer{padding-left:24px}.architecture-layer:not(:last-child):after{left:7px}.architecture-layer__header{grid-template-columns:26px 34px minmax(0,1fr)}.architecture-layer__header>strong{grid-column:3;justify-self:start}}.control-plane label,.control-plane fieldset{display:grid;gap:7px;color:#4b362f;font-weight:700}.control-plane input,.control-plane select{width:100%;min-height:42px;padding:9px 11px;color:#241916;background:#fff;border:1px solid rgba(82,55,47,.2);border-radius:7px}.control-plane .scope-production{color:#8f1f1f;border-color:#c34b4b;background:#fff4f4}.segmented-control{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;margin-bottom:18px;padding:3px;background:#eadfda;border-radius:8px}.segmented-control button{min-height:40px;border:0;border-radius:6px;color:#604740;background:transparent;font-weight:800}.segmented-control button.is-active{color:#fff;background:#7f3927}.control-plane__content{display:grid;gap:16px}.feature-flag-group{border:1px solid var(--border);border-radius:8px;margin-top:16px;overflow:hidden}.feature-flag-group header{align-items:center;background:var(--surface-muted);display:flex;justify-content:space-between;padding:14px 16px}.feature-flag-group h3{font-size:.98rem;margin:0}.feature-flag-group header span{color:var(--muted);font-size:.85rem;font-weight:700}.feature-flag-list{display:grid}.feature-flag-row{align-items:center;display:grid;gap:16px;grid-template-columns:minmax(0,1fr) 150px;padding:14px 16px}.feature-flag-row+.feature-flag-row{border-top:1px solid var(--border)}.feature-flag-row strong,.feature-flag-row code,.feature-flag-row small{display:block}.feature-flag-row code{color:var(--muted);font-size:.78rem;margin-top:3px;overflow-wrap:anywhere}.feature-flag-row small{color:var(--muted);line-height:1.45;margin-top:6px}.switch-control{align-items:center;display:flex;gap:10px;justify-content:flex-end;min-height:36px}.switch-control input{accent-color:var(--accent);height:18px;width:18px}.switch-control span{color:var(--text);font-size:.88rem;font-weight:700;min-width:82px}.environment-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px;color:#22503a;background:#eaf6ef;border-left:4px solid #397a51;border-radius:6px}.environment-banner--production{color:#781c1c;background:#fff0f0;border-left-color:#b73131}.control-plane .span-2{grid-column:span 2}.toggle-line{display:flex!important;align-items:center;gap:9px!important;min-height:42px}.toggle-line input,.environment-checks input{width:18px;min-height:18px}.approval-reason{max-width:620px}.policy-list{display:grid;gap:10px}.policy-card{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(180px,1fr) auto;align-items:center;gap:16px;padding:14px;background:#fff;border:1px solid rgba(82,55,47,.14);border-left:4px solid #a9877d;border-radius:8px}.policy-card--active{border-left-color:#397a51}.policy-card>div{display:grid;gap:4px}.status-pill{width:fit-content;padding:3px 7px;color:#65473e;background:#f0e4de;border-radius:999px;font-size:12px;font-weight:800;text-transform:uppercase}.status-pill--inactive{color:#7a2323;background:#f9dddd}.danger-action{color:#982828!important;border-color:#d48b8b!important}.environment-checks{grid-column:span 2;margin:0;padding:10px 12px;border:1px solid rgba(82,55,47,.16);border-radius:7px}.environment-checks label{display:flex;align-items:center;gap:8px;font-weight:600}.empty-inline{margin:0;padding:20px;color:#765b53;text-align:center;border:1px dashed rgba(82,55,47,.22);border-radius:8px}@media(max-width:860px){.control-plane__scope,.control-plane__policy-form,.policy-card{grid-template-columns:1fr}.control-plane .span-2,.environment-checks{grid-column:auto}.segmented-control{grid-template-columns:repeat(2,minmax(0,1fr))}}.topbar,.panel__header,.toolbar-line,.button-row,.session,.row-actions{display:flex;align-items:center;gap:12px}.topbar{justify-content:space-between;margin-bottom:24px}.global-scope{display:grid;grid-template-columns:minmax(150px,1.4fr) minmax(130px,1fr);gap:10px;margin-left:auto}.global-scope label{display:grid;gap:4px;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.global-scope select{min-width:0}.control-plane__scope--platform{grid-template-columns:minmax(180px,320px)}.developer-center__scope--filter{grid-template-columns:minmax(180px,320px);justify-content:end}.topbar h1{margin:0;font-size:clamp(32px,5vw,56px);line-height:1}.eyebrow{margin:0 0 6px;color:var(--accent);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:12px}.session{padding:8px 8px 8px 16px;background:var(--surface-soft);border:1px solid var(--line);border-radius:999px}.icon-button{width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:50%;background:var(--accent-soft);color:var(--accent)}.notice{position:sticky;top:14px;z-index:4;margin-bottom:14px;padding:14px 16px;border-radius:14px;color:#fff;font-weight:700}.notice--success{background:#397a51}.notice--error{background:#a83232}.notice--info{background:#4a6175}.panel{margin-bottom:22px;padding:24px;background:var(--panel);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-panel)}.panel--hero{background:linear-gradient(135deg,var(--panel-strong),color-mix(in srgb,var(--accent) 14%,transparent))}.panel__header{justify-content:space-between;margin-bottom:18px}.panel-title{display:flex;gap:12px;align-items:flex-start}.panel-title>span{display:grid;place-items:center;width:42px;height:42px;flex:0 0 auto;border-radius:12px;background:var(--accent-soft);color:var(--accent)}.panel h2,.subpanel h3{margin:0}.panel p{margin:6px 0 0;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 16px;border-radius:999px;border:1px solid transparent;font-weight:800}.button--primary{background:var(--accent-strong);color:var(--accent-contrast)}.button--secondary{background:var(--secondary);color:var(--accent-contrast)}.button--ghost{background:color-mix(in srgb,var(--accent) 9%,var(--surface));border-color:color-mix(in srgb,var(--accent) 28%,transparent);color:var(--accent)}.button--danger{background:#a83232;color:#fff}.button:disabled,.row-actions button:disabled{cursor:not-allowed;opacity:.55}.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.metric,.toggle-card,.data-row,.row-card,.subpanel{border:1px solid rgba(86,58,50,.1);background:var(--surface-soft);border-radius:14px}.metric{padding:16px}.metric strong{display:block;font-size:28px;color:var(--ink)}.metric span{color:var(--muted);font-weight:700}.metric--good strong{color:var(--success)}.metric--warn strong{color:var(--warning)}.metric--bad strong{color:var(--danger)}.settings-grid,.form-grid{display:grid;gap:12px}.settings-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));margin-bottom:16px}.toggle-card{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;font-weight:800}.toggle-card input{width:22px;height:22px;accent-color:var(--accent)}.form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:16px}.form-grid--status,.form-grid--rbac{align-items:end}.form-grid--purge{align-items:center;margin-top:16px}label{display:grid;gap:8px;color:var(--ink);font-weight:800}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:12px;background:var(--surface-solid);color:var(--ink);padding:12px 14px;outline:none}textarea{min-height:110px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.subpanel{margin-top:18px;padding:18px}.data-list,.table-list{display:grid;gap:10px;margin-top:16px}.data-row{display:flex;justify-content:space-between;gap:14px;padding:12px 14px}.toolbar-line{justify-content:space-between;margin-bottom:16px}.toolbar-line--compact{margin-bottom:0}.toolbar-line select{max-width:260px}.row-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px}.row-card div:first-child{display:grid;gap:3px;min-width:0}.row-card span,.row-card small{color:var(--muted);overflow-wrap:anywhere}.row-card--rbac{align-items:stretch;display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(130px,.6fr) minmax(250px,1fr) auto}.user-line{display:flex;align-items:center;gap:12px;min-width:0}.user-line img,.avatar-fallback{width:46px;height:46px;flex:0 0 auto;border-radius:14px}.user-line img{object-fit:cover}.avatar-fallback{display:grid;place-items:center;background:#f0dfd7;color:#9f4329;font-weight:900}.rbac-meta{display:grid;align-content:center;gap:6px;min-width:130px}.role-pill{width:fit-content;padding:6px 10px;border-radius:999px;background:#eee4de;color:#614841;font-size:12px;font-weight:900}.role-pill--admin{background:#fff1ce;color:#8a5c0d}.role-pill--super-admin{background:#dff1e4;color:#28613d}.role-pill--user{background:#e9e4f2;color:#57447c}.legal-consent-card{display:grid;align-content:center;gap:6px;min-width:0;padding:10px 12px;border:1px solid rgba(86,58,50,.12);border-radius:14px;background:#ffffff9e}.consent-pill{width:fit-content;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:900}.consent-pill--current{background:#dff1e4;color:#28613d}.consent-pill--outdated{background:#fff1ce;color:#8a5c0d}.consent-pill--missing{background:#f4d8d2;color:#9f4329}@media(max-width:980px){.row-card--rbac{grid-template-columns:1fr}}.permission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;margin:18px 0}.permission-role{display:grid;gap:16px;padding:18px;border:1px solid rgba(86,58,50,.12);border-radius:16px;background:#ffffffad}.permission-role__header{display:flex;align-items:end;justify-content:space-between;gap:12px}.permission-role__header label{flex:1}.permission-group{display:grid;gap:10px}.permission-group h3{margin:0;color:#9f4329;font-size:15px}.permission-actions{display:grid;gap:8px}.permission-actions .toggle-card{padding:10px 12px;border:1px solid rgba(86,58,50,.1);border-radius:12px;background:#fffbf7d1}.launch-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:16px;margin-top:18px}.launch-card{display:grid;gap:16px;padding:18px;border:1px solid rgba(86,58,50,.12);border-radius:16px;background:#ffffffad}.launch-card__header{display:flex;align-items:flex-start;gap:12px}.launch-card__header>svg{flex:0 0 auto;color:#9f4329;margin-top:4px}.launch-card__header h3{margin:0}.launch-list{display:grid;gap:10px}.template-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:16px;margin-top:18px}.template-card{display:grid;gap:16px;padding:18px;border:1px solid rgba(86,58,50,.12);border-radius:16px;background:#ffffffad}.template-card__header{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,max-content);gap:12px;align-items:start}.template-card__header h3{margin:4px 0 0;overflow-wrap:anywhere}.template-card__channel{color:#9f4329;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.template-vars{display:flex;flex-wrap:wrap;gap:8px}.template-vars code{padding:6px 9px;border-radius:999px;background:#e5f1e9;color:#2f7147;font-size:12px;font-weight:800}.launch-row{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding:12px;border:1px solid rgba(86,58,50,.1);border-radius:14px;background:#fffbf7d1}.launch-row__main{display:grid;gap:6px;min-width:0}.launch-row__main strong{overflow-wrap:anywhere;line-height:1.15}.launch-row .code-pill{margin:0;padding:5px 9px;font-size:12px}.launch-row__controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(148px,max-content);align-items:end;gap:12px;min-width:0}.launch-row__soon{min-width:0;font-size:13px}.launch-row__soon input{padding:10px 11px}.launch-row__controls>.toggle-card{align-self:end;min-width:148px;min-height:44px;padding:10px 12px}.row-actions{flex-wrap:wrap;justify-content:flex-end}.row-actions button{border:0;border-radius:999px;padding:8px 12px;background:#f0dfd7;color:#743421;font-weight:800}.row-actions .danger-link{background:#f8dfdf;color:#9b2525}.json-editor{min-height:480px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:13px;line-height:1.5;white-space:pre}.json-editor--short{min-height:320px}.button-row{margin-top:14px}.button-row--split{display:flex;flex-wrap:wrap;gap:10px}.loading-row,.empty,.error-text,.code-pill{display:flex;gap:8px;align-items:center;color:#755a52;font-weight:700}.empty{padding:18px;border:1px dashed rgba(86,58,50,.2);border-radius:14px}.error-text{color:#a83232}.code-pill{width:fit-content;margin-bottom:12px;padding:8px 12px;background:#e5f1e9;border-radius:999px;color:#2f7147}.media-jobs{display:grid;gap:12px;margin-top:14px}.media-job{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:14px;padding:14px;border:1px solid rgba(86,58,50,.1);border-radius:14px;background:#ffffffb8}.media-job__main{display:grid;align-content:start;gap:6px;min-width:0}.media-job__main small,.details-grid dd{overflow-wrap:anywhere}.job-reason{margin:4px 0 0;padding:10px 12px;border-radius:12px;background:#fff7e6;color:#6d4b12;font-size:14px;line-height:1.35}.job-reason strong{color:#8a5c0d}.job-reason--error{background:#f8dfdf;color:#7f2424}.job-reason--error strong{color:#9b2525}.job-reason--ready{background:#dff1e4;color:#28613d}.job-reason--last-error{background:#f4ebe7;color:#6f3324}.job-reason--last-error strong{color:#9f442b}.media-job__meta{display:grid;gap:8px}.status-badge{width:fit-content;padding:6px 10px;border-radius:999px;background:#eee4de;color:#614841;font-size:12px;font-weight:900}.status-badge--processing,.status-badge--pending{background:#fff1ce;color:#8a5c0d}.status-badge--ready{background:#dff1e4;color:#28613d}.status-badge--error{background:#f8dfdf;color:#9b2525}.media-job details{grid-column:1 / -1}.media-job__actions{grid-column:1 / -1;display:flex;justify-content:flex-end}.media-job summary{color:#9f4329;font-weight:900;cursor:pointer}.details-grid{display:grid;grid-template-columns:120px minmax(0,1fr);gap:8px 14px;margin:12px 0 0;color:#5a423b}.details-grid dt{font-weight:900}.details-grid dd{margin:0}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.modal-backdrop{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px;background:#0f121894}.modal-card{width:min(620px,100%);max-height:calc(100vh - 40px);overflow:auto;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 24px 70px #00000047}.modal-card>header,.modal-card>footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid var(--line)}.modal-card>footer{justify-content:flex-end;border-top:1px solid var(--line);border-bottom:0}.modal-card h3,.modal-card h4,.modal-card p{margin:0}.wizard-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:0 20px}.wizard-progress span{height:4px;background:var(--line)}.wizard-progress span.is-active{background:var(--accent)}.wizard-body{display:grid;gap:14px;padding:24px 20px}.wizard-body label{display:grid;gap:6px;font-weight:800}.wizard-body textarea{resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.wizard-body small,.wizard-intro{color:var(--muted)}.setup-steps{display:grid;gap:10px;margin:0;padding-left:22px;color:#241916}.wizard-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.inline-link{display:inline-flex;align-items:center;gap:5px;width:fit-content;font-weight:800}.private-key-field{display:grid;gap:8px}.file-picker{position:relative;width:fit-content;cursor:pointer}.file-picker input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.selected-file{display:inline-flex;align-items:center;gap:6px;color:#397a51;font-weight:800;overflow-wrap:anywhere}.field-error{color:#a83232;font-weight:800}.security-note{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:9px;padding:12px;border:1px solid var(--line);background:#fff8f3}.wizard-body code{overflow-wrap:anywhere}.wizard-body dl{display:grid;gap:8px;margin:0}.wizard-body dl div{display:grid;grid-template-columns:150px 1fr;gap:12px}.wizard-body dt{color:var(--muted)}.wizard-body dd{margin:0;font-weight:800;overflow-wrap:anywhere}.panel__actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.theme-switcher{display:inline-grid;grid-template-columns:repeat(3,minmax(0,auto));align-items:center;gap:3px;padding:4px;background:var(--surface-soft);border:1px solid var(--line);border-radius:999px}.theme-switcher--floating{position:fixed;top:16px;right:16px;z-index:30}.theme-switcher button{min-width:42px;min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 10px;color:var(--muted);background:transparent;border:0;border-radius:999px;font-size:12px;font-weight:850}.theme-switcher button:hover{color:var(--ink);background:color-mix(in srgb,var(--accent) 11%,transparent)}.theme-switcher button:focus-visible{outline:0;box-shadow:0 0 0 3px var(--focus-ring)}.theme-switcher button.is-active{color:var(--accent-contrast);background:var(--accent-strong)}[data-theme=dark] .developer-metrics .is-success strong,[data-theme=asgard] .developer-metrics .is-success strong,[data-theme=dark] .pipeline-indicator--success,[data-theme=asgard] .pipeline-indicator--success,[data-theme=dark] .pipeline-progress--success .pipeline-progress__track span,[data-theme=asgard] .pipeline-progress--success .pipeline-progress__track span{color:var(--success);background:var(--success)}[data-theme=dark] .developer-metrics .is-running strong,[data-theme=asgard] .developer-metrics .is-running strong,[data-theme=dark] .pipeline-indicator--running,[data-theme=asgard] .pipeline-indicator--running,[data-theme=dark] .pipeline-progress--running .pipeline-progress__track span,[data-theme=asgard] .pipeline-progress--running .pipeline-progress__track span{color:var(--warning);background:var(--warning)}[data-theme=dark] .developer-metrics .is-failed strong,[data-theme=asgard] .developer-metrics .is-failed strong,[data-theme=dark] .pipeline-indicator--failed,[data-theme=asgard] .pipeline-indicator--failed,[data-theme=dark] .pipeline-progress--failed .pipeline-progress__track span,[data-theme=asgard] .pipeline-progress--failed .pipeline-progress__track span{color:var(--danger);background:var(--danger)}[data-theme=dark] .integration-state,[data-theme=asgard] .integration-state,[data-theme=dark] .job-reason,[data-theme=asgard] .job-reason{color:var(--warning);background:color-mix(in srgb,var(--warning) 12%,var(--surface))}[data-theme=dark] .xcode-webhook-urls,[data-theme=asgard] .xcode-webhook-urls,[data-theme=dark] .xcode-latest-signal,[data-theme=asgard] .xcode-latest-signal,[data-theme=dark] .legal-consent-card,[data-theme=asgard] .legal-consent-card,[data-theme=dark] .permission-role,[data-theme=asgard] .permission-role,[data-theme=dark] .launch-card,[data-theme=asgard] .launch-card,[data-theme=dark] .template-card,[data-theme=asgard] .template-card,[data-theme=dark] .launch-row,[data-theme=asgard] .launch-row,[data-theme=dark] .media-job,[data-theme=asgard] .media-job,[data-theme=dark] .policy-card,[data-theme=asgard] .policy-card{background:var(--surface-soft);border-color:var(--line)}[data-theme=dark] .architecture-layer--channels .architecture-layer__icon,[data-theme=asgard] .architecture-layer--channels .architecture-layer__icon,[data-theme=dark] .architecture-layer--services .architecture-layer__icon,[data-theme=asgard] .architecture-layer--services .architecture-layer__icon,[data-theme=dark] .architecture-layer--operations .architecture-layer__icon,[data-theme=asgard] .architecture-layer--operations .architecture-layer__icon,[data-theme=dark] .avatar-fallback,[data-theme=asgard] .avatar-fallback,[data-theme=dark] .row-actions button,[data-theme=asgard] .row-actions button,[data-theme=dark] .role-pill,[data-theme=asgard] .role-pill,[data-theme=dark] .status-pill,[data-theme=asgard] .status-pill,[data-theme=dark] .status-badge,[data-theme=asgard] .status-badge,[data-theme=dark] .code-pill,[data-theme=asgard] .code-pill,[data-theme=dark] .template-vars code,[data-theme=asgard] .template-vars code,[data-theme=dark] .platform-tag,[data-theme=asgard] .platform-tag{color:var(--accent);background:var(--accent-soft);border-color:var(--line)}[data-theme=dark] .role-pill--admin,[data-theme=asgard] .role-pill--admin,[data-theme=dark] .consent-pill--outdated,[data-theme=asgard] .consent-pill--outdated,[data-theme=dark] .status-badge--processing,[data-theme=asgard] .status-badge--processing,[data-theme=dark] .status-badge--pending,[data-theme=asgard] .status-badge--pending{color:var(--warning);background:color-mix(in srgb,var(--warning) 14%,var(--surface))}[data-theme=dark] .role-pill--super-admin,[data-theme=asgard] .role-pill--super-admin,[data-theme=dark] .consent-pill--current,[data-theme=asgard] .consent-pill--current,[data-theme=dark] .status-badge--ready,[data-theme=asgard] .status-badge--ready,[data-theme=dark] .job-reason--ready,[data-theme=asgard] .job-reason--ready,[data-theme=dark] .notice--success,[data-theme=asgard] .notice--success{color:#071018;background:var(--success)}[data-theme=dark] .role-pill--user,[data-theme=asgard] .role-pill--user{color:#e9ddff;background:#7154a847}[data-theme=dark] .consent-pill--missing,[data-theme=asgard] .consent-pill--missing,[data-theme=dark] .status-badge--error,[data-theme=asgard] .status-badge--error,[data-theme=dark] .job-reason--error,[data-theme=asgard] .job-reason--error,[data-theme=dark] .row-actions .danger-link,[data-theme=asgard] .row-actions .danger-link{color:#071018;background:var(--danger)}[data-theme=dark] .setup-steps,[data-theme=asgard] .setup-steps,[data-theme=dark] .details-grid,[data-theme=asgard] .details-grid,[data-theme=dark] .control-plane label,[data-theme=asgard] .control-plane label,[data-theme=dark] .control-plane fieldset,[data-theme=asgard] .control-plane fieldset,[data-theme=dark] .control-plane input,[data-theme=asgard] .control-plane input,[data-theme=dark] .control-plane select,[data-theme=asgard] .control-plane select,[data-theme=dark] .xcode-latest-signal__header strong,[data-theme=asgard] .xcode-latest-signal__header strong,[data-theme=dark] .xcode-test-summary,[data-theme=asgard] .xcode-test-summary{color:var(--ink)}[data-theme=dark] .empty,[data-theme=asgard] .empty,[data-theme=dark] .empty-inline,[data-theme=asgard] .empty-inline,[data-theme=dark] .loading-row,[data-theme=asgard] .loading-row{color:var(--muted);border-color:var(--line)}[data-theme=dark] .control-plane .scope-production,[data-theme=asgard] .control-plane .scope-production{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 45%,var(--line));background:color-mix(in srgb,var(--danger) 9%,var(--surface-solid))}[data-theme=dark] .environment-banner,[data-theme=asgard] .environment-banner{color:var(--success);background:color-mix(in srgb,var(--success) 12%,var(--surface))}[data-theme=dark] .environment-banner--production,[data-theme=asgard] .environment-banner--production{color:var(--danger);background:color-mix(in srgb,var(--danger) 12%,var(--surface))}@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;padding:18px}.nav-list{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.workspace{padding:22px 16px 44px}.topbar,.panel__header,.row-card,.toolbar-line,.media-job{align-items:stretch;flex-direction:column;grid-template-columns:1fr}.launch-row__controls{grid-template-columns:1fr}.launch-row__controls>.toggle-card{min-width:0}.session{width:100%;justify-content:space-between;border-radius:14px}.theme-switcher{width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}.theme-switcher--floating{width:auto;max-width:calc(100vw - 32px)}.global-scope{width:100%;margin-left:0;grid-template-columns:1fr}}
