@charset "UTF-8";:root{--purple-50: #faf5fe;--purple-100: #f2e6fb;--purple-200: #e4caf5;--purple-300: #cda2ec;--purple-400: #ad6fdd;--purple-500: #8a3cc9;--purple-600: #6b1cae;--purple-700: #58099d;--purple-800: #470a7e;--purple-900: #330a5a;--purple-950: #1f0738;--n-0: #ffffff;--n-50: #f8f9fb;--n-100: #f1f3f7;--n-200: #e5e8ef;--n-300: #d3d8e3;--n-400: #aab2c3;--n-500: #7c8598;--n-600: #5a6377;--n-700: #424b5e;--n-800: #2c3344;--n-900: #1a2030;--n-950: #11151f;--blue-50: #eef4fd;--blue-500: #2f6fd4;--blue-600: #245bb5;--blue-700: #1d488f;--green-50: #eaf7ef;--green-500:#1f9d57;--green-600:#178045;--green-700:#126537;--amber-50: #fdf4e6;--amber-500:#c9821a;--amber-600:#a86913;--amber-700:#84520f;--red-50: #fcecec;--red-500: #d23b3b;--red-600: #b32c2c;--red-700: #8f2222;--teal-50: #e6f6f5;--teal-500: #11978f;--teal-600: #0c7a73;--bg-app: var(--n-50);--bg-surface: var(--n-0);--bg-subtle: var(--n-100);--bg-muted: var(--n-200);--bg-inverse: var(--n-900);--fg-1: var(--n-900);--fg-2: var(--n-700);--fg-3: var(--n-500);--fg-4: var(--n-400);--fg-on-brand: #ffffff;--fg-inverse: var(--n-50);--border-1: var(--n-200);--border-2: var(--n-300);--border-strong: var(--n-400);--brand: var(--purple-700);--brand-hover: var(--purple-800);--brand-active: var(--purple-900);--brand-soft: var(--purple-50);--brand-soft-2: var(--purple-100);--brand-border: var(--purple-200);--brand-fg: var(--purple-700);--link: var(--purple-700);--link-hover: var(--purple-800);--focus-ring: var(--purple-500);--info-fg: var(--blue-700);--info-bg: var(--blue-50);--info: var(--blue-600);--success-fg: var(--green-700);--success-bg: var(--green-50);--success: var(--green-600);--warning-fg: var(--amber-700);--warning-bg: var(--amber-50);--warning: var(--amber-600);--danger-fg: var(--red-700);--danger-bg: var(--red-50);--danger: var(--red-600);--m-get: var(--blue-600);--m-post: var(--green-600);--m-put: var(--amber-600);--m-patch: var(--teal-600);--m-delete: var(--red-600);--status-published: var(--green-600);--status-draft: var(--amber-600);--status-archived: var(--n-500);--font-sans: "Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", "Cascadia Code", monospace;--text-2xs: .6875rem;--text-xs: .75rem;--text-sm: .8125rem;--text-base: .875rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.375rem;--text-2xl: 1.75rem;--text-3xl: 2.25rem;--text-4xl: 3rem;--weight-light: 300;--weight-normal: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--weight-extrabold: 800;--leading-tight: 1.15;--leading-snug: 1.3;--leading-normal:1.5;--leading-relaxed: 1.65;--tracking-tight: -.02em;--tracking-normal: 0;--tracking-wide: .04em;--tracking-caps: .08em;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-pill: 999px;--shadow-xs: 0 1px 2px rgba(26, 32, 48, .06);--shadow-sm: 0 1px 3px rgba(26, 32, 48, .08), 0 1px 2px rgba(26, 32, 48, .04);--shadow-md: 0 4px 12px rgba(26, 32, 48, .08), 0 2px 4px rgba(26, 32, 48, .04);--shadow-lg: 0 12px 28px rgba(26, 32, 48, .12), 0 4px 8px rgba(26, 32, 48, .06);--shadow-focus: 0 0 0 3px rgba(138, 60, 201, .3);--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-fast: .12s;--dur-base: .18s;--dur-slow: .28s;--tap-min: 44px}[data-theme=dark]{--bg-app: #14161c;--bg-surface: #1b1e26;--bg-subtle: #232732;--bg-muted: #2c313d;--bg-inverse: var(--n-100);--fg-1: #f3f5f9;--fg-2: #c4cad6;--fg-3: #8d96a8;--fg-4: #98a2b3;--fg-on-brand: #ffffff;--fg-inverse: var(--n-900);--border-1: #667085;--border-2: #7c8598;--border-strong: #aab2c3;--brand: var(--purple-400);--brand-hover: var(--purple-300);--brand-active: var(--purple-200);--brand-soft: rgba(173, 111, 221, .12);--brand-soft-2: rgba(173, 111, 221, .18);--brand-border: rgba(173, 111, 221, .32);--brand-fg: var(--purple-300);--link: var(--purple-300);--link-hover: var(--purple-200);--focus-ring: var(--purple-400);--info-bg: rgba(47, 111, 212, .14);--info-fg: #8fb4ee;--success-bg: rgba(31, 157, 87, .14);--success-fg: #6fcf97;--warning-bg: rgba(201, 130, 26, .16);--warning-fg: #e0b06a;--danger-bg: rgba(210, 59, 59, .16);--danger-fg: #ec8989;--shadow-xs: 0 1px 2px rgba(0,0,0,.4);--shadow-sm: 0 1px 3px rgba(0,0,0,.5);--shadow-md: 0 4px 12px rgba(0,0,0,.45);--shadow-lg: 0 12px 28px rgba(0,0,0,.55);--shadow-focus: 0 0 0 3px rgba(173, 111, 221, .4)}.t-display{font-family:var(--font-sans);font-size:var(--text-4xl);font-weight:var(--weight-extrabold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--fg-1)}.t-h1{font-family:var(--font-sans);font-size:var(--text-3xl);font-weight:var(--weight-bold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--fg-1)}.t-h2{font-family:var(--font-sans);font-size:var(--text-2xl);font-weight:var(--weight-bold);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);color:var(--fg-1)}.t-h3{font-family:var(--font-sans);font-size:var(--text-xl);font-weight:var(--weight-semibold);line-height:var(--leading-snug);color:var(--fg-1)}.t-h4{font-family:var(--font-sans);font-size:var(--text-lg);font-weight:var(--weight-semibold);line-height:var(--leading-snug);color:var(--fg-1)}.t-lead{font-family:var(--font-sans);font-size:var(--text-lg);font-weight:var(--weight-normal);line-height:var(--leading-normal);color:var(--fg-2)}.t-body{font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--weight-normal);line-height:var(--leading-normal);color:var(--fg-2)}.t-prose{font-family:var(--font-sans);font-size:var(--text-md);font-weight:var(--weight-normal);line-height:var(--leading-relaxed);color:var(--fg-2)}.t-sm{font-size:var(--text-sm);line-height:var(--leading-normal);color:var(--fg-2)}.t-caption{font-size:var(--text-xs);line-height:var(--leading-snug);color:var(--fg-3)}.t-overline{font-size:var(--text-2xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-3)}.t-code{font-family:var(--font-mono);font-size:.85em;font-weight:var(--weight-medium);color:var(--fg-1)}.t-mono{font-family:var(--font-mono)}.t-muted{color:var(--fg-3)}.t-brand{color:var(--brand-fg)}.t-tabular{font-variant-numeric:tabular-nums}.iam-surface{max-width:100%;min-width:0;width:100%}.iam-surface i[data-lucide]{display:inline-flex}.iam-surface .exp-shell{display:flex;flex-direction:column;height:100vh;overflow:hidden}.iam-surface .exp-topbar{display:flex;align-items:center;gap:18px;height:56px;flex:none;padding:0 18px;background:var(--bg-surface);border-bottom:1px solid var(--border-1);z-index:40}.iam-surface .exp-brand{display:flex;align-items:center;gap:10px}.iam-surface .exp-brand img{height:24px}.iam-surface .exp-brand .bd{width:1px;height:20px;background:var(--border-2)}.iam-surface .exp-brand .pw{font-size:13px;font-weight:700;color:var(--fg-1);line-height:1.1}.iam-surface .exp-brand .pw small{display:block;font-size:9px;font-weight:700;letter-spacing:.14em;color:var(--fg-3);text-transform:uppercase}.iam-surface .exp-nav{display:flex;gap:4px}.iam-surface .exp-nav a{padding:7px 12px;border-radius:var(--radius-md);font-size:13px;font-weight:600;color:var(--fg-3);cursor:pointer}.iam-surface .exp-nav a:hover{background:var(--bg-subtle);color:var(--fg-1)}.iam-surface .exp-nav a.active{color:var(--brand-fg);background:var(--brand-soft)}.iam-surface .domain-switch{margin-left:auto}.iam-surface .domain-switch button{display:flex;align-items:center;gap:8px;height:36px;padding:0 12px;background:var(--bg-subtle);border:1px solid var(--border-1);border-radius:var(--radius-md);font-size:13px;font-weight:600;color:var(--fg-1);cursor:pointer}.iam-surface .domain-switch button:hover{border-color:var(--border-2)}.iam-surface .domain-switch i.lead{width:15px;height:15px;color:var(--brand)}.iam-surface .domain-switch i.chev{width:14px;height:14px;color:var(--fg-3)}.iam-surface .exp-top-actions{display:flex;align-items:center;gap:8px}.iam-surface .exp-icon-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);border:1px solid var(--border-1);background:var(--bg-surface);color:var(--fg-2);cursor:pointer}.iam-surface .exp-icon-btn:hover{background:var(--bg-subtle);color:var(--fg-1)}.iam-surface .exp-icon-btn i{width:16px;height:16px}.iam-surface .exp-signout{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 13px;background:var(--bg-surface);border:1px solid var(--border-2);border-radius:var(--radius-md);font-size:13px;font-weight:600;color:var(--fg-1);cursor:pointer}.iam-surface .exp-signout:hover{background:var(--bg-subtle)}.iam-surface .exp-signout i{width:15px;height:15px}.iam-surface .exp-body{flex:1;display:flex;min-height:0}.iam-surface .exp-rail{width:248px;flex:none;background:var(--bg-surface);border-right:1px solid var(--border-1);display:flex;flex-direction:column;min-height:0}.iam-surface .module-switch{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:14px}.iam-surface .module-btn{display:flex;align-items:center;justify-content:center;gap:6px;height:36px;border:1px solid var(--border-2);border-radius:var(--radius-md);background:var(--bg-surface);font-size:12.5px;font-weight:600;color:var(--fg-2);cursor:pointer}.iam-surface .module-btn:hover{background:var(--bg-subtle);color:var(--fg-1)}.iam-surface .module-btn.active{background:var(--brand);border-color:var(--brand);color:#fff}.iam-surface .module-btn i{width:14px;height:14px}.iam-surface .rail-nav{flex:1;overflow-y:auto;padding:4px 10px 18px}.iam-surface .rail-sec{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-4);padding:12px 10px 6px}.iam-surface .rail-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-md);font-size:13px;font-weight:500;color:var(--fg-2);cursor:pointer}.iam-surface .rail-item:hover{background:var(--bg-subtle);color:var(--fg-1)}.iam-surface .rail-item.active{background:var(--brand-soft);color:var(--brand-fg);font-weight:600;box-shadow:inset 2px 0 0 var(--brand)}.iam-surface .rail-item i{width:16px;height:16px;color:var(--fg-3)}.iam-surface .rail-item.active i{color:var(--brand)}.iam-surface .rail-item .ct{margin-left:auto;font-size:11px;font-weight:600;color:var(--fg-4);font-variant-numeric:tabular-nums}.iam-surface .rail-item.active .ct{color:var(--brand-fg)}.iam-surface .exp-main{flex:1;overflow-y:auto;min-width:0;padding:24px 28px 50px}.iam-surface .exp-page-head{margin-bottom:20px}.iam-surface .exp-page-head h1{margin:0;font-size:24px;font-weight:800;letter-spacing:-.02em;color:var(--fg-1)}.iam-surface .exp-page-head p{margin:5px 0 0;font-size:14px;color:var(--fg-3)}.iam-surface .dash-section{background:var(--bg-surface);border:1px solid var(--border-1);border-radius:var(--radius-xl);padding:6px;margin-bottom:16px}.iam-surface .dash-section-head{display:flex;align-items:center;gap:9px;padding:12px 14px 10px}.iam-surface .dash-section-head i{width:16px;height:16px;color:var(--brand)}.iam-surface .dash-section-head .t{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-2)}.iam-surface .dash-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(176px,1fr));gap:8px;padding:0 6px 6px}.iam-surface .dash-card{display:flex;align-items:center;gap:12px;padding:13px 14px;border:1px solid var(--border-1);border-radius:var(--radius-lg);background:var(--bg-app);cursor:pointer;transition:border-color var(--dur-fast),box-shadow var(--dur-fast)}.iam-surface .dash-card:hover{border-color:var(--brand-border);box-shadow:var(--shadow-sm)}.iam-surface .dash-card .di{width:34px;height:34px;flex:none;border-radius:var(--radius-md);background:var(--brand-soft);color:var(--brand-fg);display:flex;align-items:center;justify-content:center}.iam-surface .dash-card .di i{width:17px;height:17px}.iam-surface .dash-card .dv{font-size:20px;font-weight:800;color:var(--fg-1);line-height:1;font-variant-numeric:tabular-nums}.iam-surface .dash-card .dl{font-size:11px;font-weight:600;color:var(--fg-3);margin-top:3px}.iam-surface .page{max-width:100%;min-width:0;width:100%}.iam-surface .panel-card{background:var(--bg-surface);border:1px solid var(--border-1);border-radius:var(--radius-xl);max-width:100%;min-width:0;overflow:hidden;width:100%}.iam-surface .panel-card.eager-list-card{display:grid;gap:16px;overflow:visible;padding:22px}.iam-surface .panel-card.eager-list-card>.table-wrap{background:var(--bg-surface);border:1px solid var(--border-1);border-radius:var(--radius-md);overflow:hidden}.iam-surface .panel-card.eager-list-card .table-scroll{max-width:100%;min-width:0;overflow-x:auto;width:100%}.iam-surface .panel-card.eager-list-card .data-table{min-width:100%;width:max-content}.iam-surface .table-topbar{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border-1)}.iam-surface .search-seg{display:flex;background:var(--bg-subtle);border:1px solid var(--border-1);border-radius:var(--radius-md);padding:3px;gap:2px}.iam-surface .search-seg button{padding:5px 12px;border:0;background:transparent;font-size:12.5px;font-weight:600;color:var(--fg-3);cursor:pointer;border-radius:var(--radius-sm)}.iam-surface .search-seg button.active{background:var(--bg-surface);color:var(--fg-1);box-shadow:var(--shadow-xs)}.iam-surface .table-search{flex:1;display:flex;align-items:center;gap:9px;height:38px;background:var(--bg-subtle);border:1px solid var(--border-1);border-radius:var(--radius-md);padding:0 12px}.iam-surface .table-search:focus-within{background:var(--bg-surface);border-color:var(--focus-ring);box-shadow:var(--shadow-focus)}.iam-surface .table-search i{width:16px;height:16px;color:var(--fg-3)}.iam-surface .table-search input{flex:1;border:0;outline:0;background:transparent;font-size:13.5px;color:var(--fg-1)}.iam-surface .table-search input::placeholder{color:var(--fg-4)}.iam-surface .result-count{font-size:13px;color:var(--fg-3);white-space:nowrap;font-variant-numeric:tabular-nums}.iam-surface .result-count b{color:var(--fg-1);font-weight:700}.iam-surface .table-actions{display:flex;align-items:center;gap:6px}.iam-surface .ta-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);border:1px solid var(--border-2);background:var(--bg-surface);color:var(--fg-2);cursor:pointer}.iam-surface .ta-btn:hover{background:var(--bg-subtle);color:var(--fg-1)}.iam-surface .ta-btn i{width:16px;height:16px}.iam-surface .ta-btn.brand{background:var(--brand);border-color:var(--brand);color:#fff}.iam-surface .ta-btn.brand:hover{background:var(--brand-hover)}.iam-surface .ta-btn:disabled{opacity:.4;cursor:not-allowed}.iam-surface .sel-count{font-size:12.5px;font-weight:600;color:var(--brand-fg);white-space:nowrap}.iam-surface .adv-bar{display:flex;align-items:center;gap:8px;padding:10px 16px;background:var(--bg-subtle);border-bottom:1px solid var(--border-1);font-family:var(--font-mono);font-size:12.5px;color:var(--fg-2)}.iam-surface .adv-bar .chip{background:var(--bg-surface);border:1px solid var(--border-2);border-radius:var(--radius-sm);padding:3px 8px}.iam-surface .adv-bar .chip b{color:var(--brand-fg)}.iam-surface .table-wrap,.iam-surface .table-scroll{max-width:100%;min-width:0;overflow-x:auto;width:100%}.iam-surface .data-table{width:100%;border-collapse:collapse;font-size:13px}.iam-surface .data-table th{text-align:left;padding:9px 12px;background:var(--bg-subtle);border-bottom:1px solid var(--border-2);position:sticky;top:0}.iam-surface .th-sort,.iam-surface .table-sort{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;cursor:pointer;color:var(--fg-1);font:inherit;font-size:13px;font-weight:700;letter-spacing:0;padding:0;text-align:left}.iam-surface .th-sort:hover,.iam-surface .table-sort:hover{color:var(--brand-fg)}.iam-surface .th-sort:focus-visible,.iam-surface .table-sort:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:var(--radius-sm)}.iam-surface .th-sort.sort-active,.iam-surface .table-sort.sort-active{color:var(--brand-fg)}.iam-surface .table-sort.sort-active:after{content:"\25b2";font-size:9px;line-height:1;margin-left:1px}.iam-surface .table-sort.sort-active.sort-desc:after{content:"\25bc"}.iam-surface .th-sort i{width:13px;height:13px}.iam-surface .data-table th.fit,.iam-surface .data-table td.fit{width:1px;white-space:nowrap}.iam-surface .filter-row th{padding:7px 12px;background:var(--bg-surface);border-bottom:1px solid var(--border-1)}.iam-surface .filter-input,.iam-surface .data-table thead input,.iam-surface .data-table thead select{width:100%;height:30px;padding:0 9px;border:1px solid var(--border-2);border-radius:var(--radius-sm);font-size:12.5px;background:var(--bg-surface);color:var(--fg-1)}.iam-surface .filter-input::placeholder,.iam-surface .data-table thead input::placeholder{color:var(--fg-4)}.iam-surface .filter-input:focus,.iam-surface .data-table thead input:focus,.iam-surface .data-table thead select:focus{outline:0;border-color:var(--focus-ring);box-shadow:var(--shadow-focus)}.iam-surface select.filter-input,.iam-surface .data-table thead select{-webkit-appearance:none;appearance:none}.iam-surface .data-table tbody td{padding:11px 12px;border-bottom:1px solid var(--border-1);color:var(--fg-2);vertical-align:middle}.iam-surface .data-table tbody tr{cursor:pointer}.iam-surface .data-table tbody tr:hover td{background:var(--bg-subtle)}.iam-surface .data-table tbody tr.selected td{background:var(--brand-soft)}.iam-surface .data-table tbody tr.selected td:first-child{box-shadow:inset 2px 0 0 var(--brand)}.iam-surface .cell-name{font-family:var(--font-mono);font-weight:600;color:var(--fg-1)}.iam-surface .cell-link{color:var(--link);font-weight:500}.iam-surface .cell-link:hover{text-decoration:underline}.iam-surface .cell-muted{color:var(--fg-3)}.iam-surface .row-del{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);border:1px solid var(--border-1);background:var(--bg-surface);color:var(--fg-3);cursor:pointer}.iam-surface .row-del:hover{background:var(--danger-bg);color:var(--danger-fg);border-color:var(--red-500)}.iam-surface .row-del i{width:14px;height:14px}.iam-surface .cbx{width:16px;height:16px;border-radius:4px;border:1.5px solid var(--border-strong);background:var(--bg-surface);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex:none}.iam-surface .cbx.on{background:var(--brand);border-color:var(--brand)}.iam-surface .cbx i{width:12px;height:12px;color:#fff}.iam-surface .pill{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:700;letter-spacing:.02em;padding:3px 8px;border-radius:var(--radius-pill)}.iam-surface .pill.published{background:var(--success-bg);color:var(--success-fg)}.iam-surface .pill.draft{background:var(--warning-bg);color:var(--warning-fg)}.iam-surface .pill.archived{background:var(--bg-subtle);color:var(--fg-3)}.iam-surface .pill.public{background:var(--brand-soft);color:var(--brand-fg)}.iam-surface .pill.domain{background:var(--info-bg);color:var(--info-fg)}.iam-surface .pill.private{background:var(--bg-subtle);color:var(--fg-2);border:1px solid var(--border-2)}.iam-surface .pill i{width:11px;height:11px}.iam-surface .sentinel{padding:12px 16px;font-size:12px;color:var(--fg-4);border-top:1px solid var(--border-1)}.iam-surface .detail-toolbar{display:flex;align-items:center;gap:14px;padding:16px;border-bottom:1px solid var(--border-1)}.iam-surface .back-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);border:1px solid var(--border-2);background:var(--bg-surface);color:var(--fg-2);cursor:pointer;flex:none}.iam-surface .back-btn:hover{background:var(--bg-subtle);color:var(--fg-1)}.iam-surface .back-btn i{width:17px;height:17px}.iam-surface .detail-meta{flex:1;min-width:0}.iam-surface .detail-meta h2{margin:0;font-size:18px;font-weight:700;color:var(--fg-1);display:flex;align-items:center;gap:10px}.iam-surface .detail-meta .id{font-family:var(--font-mono);font-size:11.5px;color:var(--fg-3);margin-top:3px}.iam-surface .detail-toolbar .inline-actions{display:flex;gap:8px}.iam-surface .tabs{display:flex;gap:2px;padding:0 16px;border-bottom:1px solid var(--border-1);background:var(--bg-surface)}.iam-surface .tab{padding:11px 14px;font-size:13px;font-weight:600;color:var(--fg-3);cursor:pointer;border:0;background:none;border-bottom:2px solid transparent;margin-bottom:-1px}.iam-surface .tab:hover{color:var(--fg-1)}.iam-surface .tab.active{color:var(--brand-fg);border-bottom-color:var(--brand)}.iam-surface .tab.internals{color:var(--fg-4)}.iam-surface .tab.internals.active{color:var(--brand-fg)}.iam-surface .detail-body{padding:22px;display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px}@media (max-width: 980px){.iam-surface .detail-body{grid-template-columns:1fr}}.iam-surface .user-create-body{grid-template-columns:minmax(0,720px)}.iam-surface .form-grid{display:grid;gap:16px;align-content:start}.iam-surface .form-grid label{display:block;font-size:12px;font-weight:600;color:var(--fg-2);margin-bottom:6px}.iam-surface .form-grid .text-input,.iam-surface .form-grid textarea,.iam-surface .form-grid select{width:100%;padding:9px 12px;border:1px solid var(--border-2);border-radius:var(--radius-md);font-size:14px;color:var(--fg-1);background:var(--bg-surface);font-family:inherit}.iam-surface .form-grid textarea{min-height:120px;resize:vertical;line-height:1.55}.iam-surface .form-grid .text-input:focus,.iam-surface .form-grid textarea:focus,.iam-surface .form-grid select:focus{outline:0;border-color:var(--focus-ring);box-shadow:var(--shadow-focus)}.iam-surface .form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.iam-surface .form-actions{display:flex;gap:10px;margin-top:4px}.iam-surface .btn-save{display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 16px;background:var(--brand);color:#fff;border:0;border-radius:var(--radius-md);font-size:13px;font-weight:600;cursor:pointer}.iam-surface .btn-save:hover{background:var(--brand-hover)}.iam-surface .btn-ghost{display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 16px;background:var(--bg-surface);color:var(--fg-1);border:1px solid var(--border-2);border-radius:var(--radius-md);font-size:13px;font-weight:600;cursor:pointer}.iam-surface .btn-ghost:hover{background:var(--bg-subtle)}.iam-surface .btn-save i,.iam-surface .btn-ghost i{width:15px;height:15px}.iam-surface .password-field{position:relative;display:block}.iam-surface .password-field .text-input{padding-right:42px}.iam-surface .inline-icon-button{position:absolute;top:50%;right:6px;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--fg-3);cursor:pointer;transform:translateY(-50%)}.iam-surface .inline-icon-button:hover,.iam-surface .inline-icon-button:focus-visible{background:var(--bg-subtle);border-color:var(--border-2);color:var(--fg-1);outline:none}.iam-surface .inline-icon-button i,.iam-surface .inline-icon-button app-icon{width:15px;height:15px}.iam-surface .audit-card{border:1px solid var(--border-1);border-radius:var(--radius-lg);padding:16px;background:var(--bg-app);align-self:start}.iam-surface .audit-card h4{margin:0 0 12px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3)}.iam-surface .audit-grid{margin:0;display:flex;flex-direction:column;gap:11px}.iam-surface .audit-grid>div{display:flex;flex-direction:column;gap:2px}.iam-surface .audit-grid dt{font-size:11px;color:var(--fg-3)}.iam-surface .audit-grid dd{margin:0;font-size:13px;font-weight:600;color:var(--fg-1)}.iam-surface .internals-notice{display:flex;gap:11px;background:var(--warning-bg);border:1px solid color-mix(in srgb,var(--warning) 24%,transparent);border-radius:var(--radius-lg);padding:13px 15px;margin-bottom:18px;font-size:13px;color:var(--warning-fg)}.iam-surface .internals-notice i{width:17px;height:17px;flex:none;margin-top:1px}.iam-surface .sub-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:12px}.iam-surface .sub-toolbar .result-count{margin-right:auto}.iam-surface .menu-pop{position:absolute;min-width:210px;background:var(--bg-surface);border:1px solid var(--border-1);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:6px;z-index:60}.iam-surface .menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 11px;border:0;background:transparent;color:var(--fg-1);font-size:13px;font-weight:500;cursor:pointer;border-radius:var(--radius-sm);text-align:left}.iam-surface .menu-item:hover{background:var(--bg-subtle)}.iam-surface .menu-item i{width:15px;height:15px;color:var(--fg-3)}.iam-surface .menu-item label{font-size:13px;font-weight:500;color:var(--fg-1);cursor:pointer}@media (max-width: 860px){.iam-surface .exp-rail{position:fixed;top:56px;bottom:0;left:0;z-index:30;box-shadow:var(--shadow-lg);transform:translate(-100%);transition:transform var(--dur-base) var(--ease-out)}.iam-surface .exp-rail.open{transform:translate(0)}.iam-surface .exp-nav,.iam-surface .domain-switch,.iam-surface .exp-search{display:none}.iam-surface .exp-main{padding:16px}.iam-surface .mobile-only{display:flex!important}}.iam-surface .mobile-only{display:none}.iam-surface .exp-search{flex:1;max-width:520px;margin:0 auto}.iam-surface .exp-search-box{display:flex;align-items:center;gap:9px;height:36px;background:var(--bg-subtle);border:1px solid var(--border-1);border-radius:var(--radius-md);padding:0 12px;cursor:text}.iam-surface .exp-search-box:hover{border-color:var(--border-2)}.iam-surface .exp-search-box.focused{background:var(--bg-surface);border-color:var(--focus-ring);box-shadow:var(--shadow-focus)}.iam-surface .exp-search-box i{width:16px;height:16px;color:var(--fg-3)}.iam-surface .exp-search-box input{flex:1;border:0;outline:0;background:transparent;font-size:13.5px;color:var(--fg-1)}.iam-surface .exp-search-box input::placeholder{color:var(--fg-4)}.iam-surface .exp-search-box kbd{font-family:var(--font-mono);font-size:10px;color:var(--fg-3);background:var(--bg-surface);border:1px solid var(--border-2);border-radius:4px;padding:2px 5px}.iam-surface .exp-account{display:flex;align-items:center;gap:6px;cursor:pointer;padding:3px 6px 3px 3px;border-radius:var(--radius-pill);border:1px solid var(--border-1)}.iam-surface .exp-account:hover{background:var(--bg-subtle)}.iam-surface .exp-avatar{width:28px;height:28px;border-radius:50%;background:var(--brand-soft);color:var(--brand-fg);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px}.iam-surface .scope{position:relative;padding:14px 14px 10px;border-bottom:1px solid var(--border-1)}.iam-surface .scope-btn{display:flex;align-items:center;gap:10px;width:100%;height:46px;padding:0 11px;background:var(--bg-subtle);border:1px solid var(--border-1);border-radius:var(--radius-md);cursor:pointer;text-align:left}.iam-surface .scope-btn:hover{border-color:var(--border-2)}.iam-surface .scope-lead{width:30px;height:30px;flex:none;border-radius:var(--radius-sm);background:var(--brand-soft);color:var(--brand-fg);display:flex;align-items:center;justify-content:center}.iam-surface .scope-lead i{width:16px;height:16px}.iam-surface .scope-meta{flex:1;min-width:0}.iam-surface .scope-lbl{display:block;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3)}.iam-surface .scope-meta b{font-size:13px;font-weight:600;color:var(--fg-1)}.iam-surface .scope-chev{width:15px;height:15px;color:var(--fg-3);flex:none}.iam-surface .rail-group{margin-bottom:4px}.iam-surface .rail-sec-btn{display:flex;align-items:center;gap:4px;width:100%;border:0;background:transparent;cursor:pointer;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-4);padding:12px 8px 6px}.iam-surface .rail-sec-btn:hover{color:var(--fg-2)}.iam-surface .rail-sec-btn i{width:13px;height:13px}.iam-surface .rail-foot{display:flex;align-items:flex-start;gap:7px;margin:14px 8px 0;padding:10px 11px;background:var(--bg-subtle);border-radius:var(--radius-md);font-size:11.5px;line-height:1.45;color:var(--fg-3)}.iam-surface .rail-foot i{color:var(--fg-4);flex:none;margin-top:2px}.iam-surface .ov-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.iam-surface .ov-quick{display:flex;gap:10px;flex:none}.iam-surface .ov-attention{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.iam-surface .attention-card{display:flex;align-items:center;gap:13px;padding:16px;text-align:left;cursor:pointer;background:var(--bg-surface);border:1px solid var(--border-1);border-radius:var(--radius-lg);transition:border-color var(--dur-fast),box-shadow var(--dur-fast)}.iam-surface .attention-card:hover{border-color:var(--border-2);box-shadow:var(--shadow-sm)}.iam-surface .attention-card .ac-icon{width:40px;height:40px;flex:none;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center}.iam-surface .attention-card .ac-icon i{width:19px;height:19px}.iam-surface .attention-card.warning .ac-icon{background:var(--warning-bg);color:var(--warning-fg)}.iam-surface .attention-card.neutral .ac-icon{background:var(--bg-subtle);color:var(--fg-2)}.iam-surface .attention-card.info .ac-icon{background:var(--info-bg);color:var(--info-fg)}.iam-surface .ac-body{flex:1;min-width:0;display:flex;flex-direction:column}.iam-surface .ac-value{font-size:22px;font-weight:800;color:var(--fg-1);line-height:1;font-variant-numeric:tabular-nums}.iam-surface .ac-label{font-size:13px;font-weight:600;color:var(--fg-1);margin-top:4px}.iam-surface .ac-hint{font-size:11.5px;color:var(--fg-3);margin-top:1px}.iam-surface .attention-card .ac-arrow{width:17px;height:17px;color:var(--fg-4);flex:none}.iam-surface .attention-card:hover .ac-arrow{color:var(--brand)}.iam-surface .ov-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:16px;align-items:start}@media (max-width: 1080px){.iam-surface .ov-grid,.iam-surface .ov-attention{grid-template-columns:1fr}}.iam-surface .ov-panel-head{display:flex;align-items:center;justify-content:space-between;padding:15px 16px;border-bottom:1px solid var(--border-1)}.iam-surface .ov-panel-head h3{margin:0;font-size:14px;font-weight:700;color:var(--fg-1)}.iam-surface .link-btn{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;cursor:pointer;font-size:12.5px;font-weight:600;color:var(--brand-fg)}.iam-surface .link-btn:hover{color:var(--brand-hover)}.iam-surface .link-btn i{width:14px;height:14px}.iam-surface .ov-grid .data-table th{position:static}.iam-surface .activity-feed{padding:8px 16px 16px}.iam-surface .activity-row{display:flex;gap:11px;padding:12px 0;border-bottom:1px solid var(--border-1)}.iam-surface .activity-row:last-child{border-bottom:0}.iam-surface .activity-icon{width:30px;height:30px;flex:none;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center}.iam-surface .activity-icon i{width:15px;height:15px}.iam-surface .activity-icon.success{background:var(--success-bg);color:var(--success-fg)}.iam-surface .activity-icon.info{background:var(--info-bg);color:var(--info-fg)}.iam-surface .activity-icon.neutral{background:var(--bg-subtle);color:var(--fg-2)}.iam-surface .activity-icon.muted{background:var(--bg-subtle);color:var(--fg-3)}.iam-surface .activity-body{flex:1;min-width:0}.iam-surface .activity-main{font-size:13px;color:var(--fg-2);line-height:1.45}.iam-surface .activity-main b{color:var(--fg-1);font-weight:600}.iam-surface .activity-target{color:var(--fg-1);font-weight:500}.iam-surface .activity-when{font-size:11.5px;color:var(--fg-3);margin-top:2px}.iam-surface .exp-scrim{position:fixed;inset:56px 0 0;background:#1a203066;z-index:25}.iam-surface .surface-selfcare{--surface-accent: var(--purple-700);--surface-soft: var(--purple-50)}.iam-surface .surface-admin{--surface-accent: var(--n-700);--surface-soft: var(--n-100)}.iam-surface .surface-explorer{--surface-accent: var(--teal-600);--surface-soft: var(--teal-50)}.iam-surface .exp-topbar{gap:14px}.iam-surface .tb-context{display:flex;align-items:center;gap:10px;min-width:0}.iam-surface .tb-divider{width:1px;height:22px;background:var(--border-2);flex:none}.iam-surface .tb-spacer{flex:1}.iam-surface .surface-tabs{display:flex;gap:2px}.iam-surface .surface-tab{display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 13px;border-radius:var(--radius-md);font-size:13px;font-weight:600;color:var(--fg-3);cursor:pointer;border:1px solid transparent;background:transparent;white-space:nowrap}.iam-surface .surface-tab:hover{background:var(--bg-subtle);color:var(--fg-1)}.iam-surface .surface-tab.active{color:var(--fg-1);background:var(--bg-subtle);border-color:var(--border-2)}.iam-surface .surface-tab.active i{color:var(--surface-accent, var(--brand))}.iam-surface .surface-tab i{width:15px;height:15px;color:var(--fg-4)}.iam-surface .surface-tab .st-key{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-4)}.iam-surface .src-state{display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 11px;border-radius:var(--radius-pill);border:1px solid var(--border-2);background:var(--bg-surface);font-size:12px;font-weight:600;color:var(--fg-2);cursor:pointer;white-space:nowrap}.iam-surface .src-state:hover{background:var(--bg-subtle)}.iam-surface .src-state .dot{width:8px;height:8px;border-radius:50%;flex:none}.iam-surface .src-state.live .dot{background:var(--success);box-shadow:0 0 0 3px var(--success-bg)}.iam-surface .src-state.stale{color:var(--warning-fg);border-color:color-mix(in srgb,var(--warning) 35%,transparent);background:var(--warning-bg)}.iam-surface .src-state.stale .dot{background:var(--warning)}.iam-surface .src-state.down{color:var(--danger-fg);border-color:color-mix(in srgb,var(--danger) 35%,transparent);background:var(--danger-bg)}.iam-surface .src-state.down .dot{background:var(--danger)}.iam-surface .ctx-banner{display:flex;align-items:center;gap:0;flex-wrap:wrap;padding:8px 18px;min-height:42px;background:var(--bg-surface);border-bottom:1px solid var(--border-1)}.iam-surface .ctx-item{display:flex;align-items:center;gap:8px;padding:0 16px;position:relative}.iam-surface .ctx-item+.ctx-item:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:1px;height:18px;background:var(--border-1)}.iam-surface .ctx-item:first-child{padding-left:0}.iam-surface .ctx-item i{width:15px;height:15px;color:var(--fg-4)}.iam-surface .ctx-lbl{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-4)}.iam-surface .ctx-val{font-size:13px;font-weight:600;color:var(--fg-1)}.iam-surface .ctx-val.mono{font-family:var(--font-mono);font-size:12px}.iam-surface .ctx-role{font-size:11px;font-weight:700;padding:2px 7px;border-radius:var(--radius-sm);background:var(--brand-soft);color:var(--brand-fg);letter-spacing:.02em;white-space:nowrap}.iam-surface .ctx-role.operator{background:var(--info-bg);color:var(--info-fg)}.iam-surface .ctx-role.user{background:var(--bg-subtle);color:var(--fg-2)}.iam-surface .ctx-banner .ctx-right{margin-left:auto;display:flex;align-items:center;gap:10px}.iam-surface .page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px;flex-wrap:wrap}.iam-surface .page-head .ph-left{min-width:0}.iam-surface .page-eyebrow{display:inline-flex;align-items:center;gap:6px;font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--surface-accent, var(--fg-3));margin-bottom:7px}.iam-surface .page-eyebrow i{width:13px;height:13px}.iam-surface .page-head h1{margin:0;font-size:23px;font-weight:800;letter-spacing:-.02em;color:var(--fg-1)}.iam-surface .page-head p.sub{margin:6px 0 0;font-size:13.5px;color:var(--fg-3);max-width:64ch}.iam-surface .page-actions{display:flex;align-items:center;gap:8px;flex:none;flex-wrap:wrap}.iam-surface .btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:36px;padding:0 14px;border-radius:var(--radius-sm);font-size:13px;font-weight:600;cursor:pointer;border:1px solid transparent;white-space:nowrap;text-decoration:none;transition:background var(--dur-fast),border-color var(--dur-fast)}.iam-surface .btn:hover{text-decoration:none}.iam-surface .btn i,.iam-surface .btn app-icon{width:15px;height:15px}.iam-surface .btn-primary{background:var(--brand);color:#fff}.iam-surface .btn-primary:hover{background:var(--brand-hover)}.iam-surface .btn-primary:active{background:var(--brand-active)}.iam-surface .btn-secondary{background:var(--bg-surface);color:var(--fg-1);border-color:var(--border-2)}.iam-surface .btn-secondary:hover{background:var(--bg-subtle)}.iam-surface .btn-ghost2{background:transparent;color:var(--fg-2)}.iam-surface .btn-ghost2:hover{background:var(--bg-subtle);color:var(--fg-1)}.iam-surface .btn-danger{background:var(--danger);color:#fff}.iam-surface .btn-danger:hover{background:var(--red-700)}.iam-surface .btn-danger-outline{background:var(--bg-surface);color:var(--danger-fg);border-color:color-mix(in srgb,var(--danger) 40%,transparent)}.iam-surface .btn-danger-outline:hover{background:var(--danger-bg)}.iam-surface .btn:disabled{opacity:.5;cursor:not-allowed}.iam-surface .btn.sm{height:30px;padding:0 11px;font-size:12.5px}.iam-surface .btn.sm i,.iam-surface .btn.sm app-icon{width:14px;height:14px}.iam-surface .btn.block{width:100%}.iam-surface .btn-link{border:0;background:transparent;color:var(--link);font-weight:600;font-size:13px;cursor:pointer;padding:0;display:inline-flex;align-items:center;gap:5px}.iam-surface .btn-link:hover{color:var(--link-hover);text-decoration:underline}.iam-surface .btn-link i{width:14px;height:14px}.iam-surface .section{background:var(--bg-surface);border:1px solid var(--border-1);border-radius:var(--radius-md);margin-bottom:16px}.iam-surface .section-head{display:flex;align-items:center;gap:10px;padding:13px 16px;border-bottom:1px solid var(--border-1)}.iam-surface .section-head h2{margin:0;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--fg-2)}.iam-surface .section-head .count{font-size:11px;font-weight:700;color:var(--fg-4);font-variant-numeric:tabular-nums;background:var(--bg-subtle);border-radius:var(--radius-pill);padding:2px 8px}.iam-surface .section-head .sh-right{margin-left:auto;display:flex;align-items:center;gap:8px}.iam-surface .section-body{padding:16px}.iam-surface .section-body.flush{padding:0}.iam-surface .app-group+.app-group{margin-top:6px}.iam-surface .app-row{display:flex;align-items:center;gap:14px;padding:13px 16px;border-bottom:1px solid var(--border-1)}.iam-surface .app-row:last-child{border-bottom:0}.iam-surface .app-row:hover{background:var(--bg-subtle)}.iam-surface .app-tile{width:38px;height:38px;flex:none;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:13px;font-weight:700;background:var(--bg-subtle);color:var(--fg-2);border:1px solid var(--border-1)}.iam-surface .app-tile.granted{background:var(--brand-soft);color:var(--brand-fg);border-color:var(--brand-border)}.iam-surface .app-tile.disabled{opacity:.6}.iam-surface .app-main{flex:1;min-width:0}.iam-surface .app-name{font-size:14px;font-weight:700;color:var(--fg-1);display:flex;align-items:center;gap:8px;flex-wrap:wrap}.iam-surface .app-meta{font-size:12px;color:var(--fg-3);margin-top:3px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.iam-surface .app-meta>span{white-space:nowrap}.iam-surface .app-meta .mono{font-family:var(--font-mono);font-size:11.5px}.iam-surface .app-meta .sep{color:var(--border-2)}.iam-surface .app-state{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:5px;min-width:0}.iam-surface .app-state .last{font-size:11px;color:var(--fg-4);white-space:nowrap}.iam-surface .app-action{flex:none}@media (max-width: 720px){.iam-surface .app-row{flex-wrap:wrap}.iam-surface .app-state{align-items:flex-start;flex-direction:row;align-items:center;width:100%;order:3}.iam-surface .app-action{width:100%;order:4}.iam-surface .app-action .btn{width:100%}}.iam-surface .chip{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;letter-spacing:.01em;padding:3px 8px;border-radius:var(--radius-pill);white-space:nowrap}.iam-surface .chip i{width:11px;height:11px}.iam-surface .chip.granted{background:var(--success-bg);color:var(--success-fg)}.iam-surface .chip.pending{background:var(--warning-bg);color:var(--warning-fg)}.iam-surface .chip.requestable{background:var(--info-bg);color:var(--info-fg)}.iam-surface .chip.unavailable{background:var(--bg-subtle);color:var(--fg-3);border:1px solid var(--border-2)}.iam-surface .chip.denied{background:var(--danger-bg);color:var(--danger-fg)}.iam-surface .chip.neutral{background:var(--bg-subtle);color:var(--fg-2)}.iam-surface .chip.brand{background:var(--brand-soft);color:var(--brand-fg)}.iam-surface .chip.info{background:var(--info-bg);color:var(--info-fg)}.iam-surface .chip.outline{background:var(--bg-surface);color:var(--fg-2);border:1px solid var(--border-2)}.iam-surface .chip.mono{font-family:var(--font-mono);font-weight:600;letter-spacing:0}.iam-surface .token{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-sans);font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;padding:3px 7px;border-radius:var(--radius-sm)}.iam-surface .token.granted,.iam-surface .token.approved,.iam-surface .token.enabled,.iam-surface .token.active,.iam-surface .token.published{background:var(--success-bg);color:var(--success-fg)}.iam-surface .token.pending,.iam-surface .token.draft,.iam-surface .token.review{background:var(--warning-bg);color:var(--warning-fg)}.iam-surface .token.denied,.iam-surface .token.revoked,.iam-surface .token.disabled,.iam-surface .token.expired{background:var(--danger-bg);color:var(--danger-fg)}.iam-surface .token.neutral,.iam-surface .token.closed{background:var(--bg-subtle);color:var(--fg-3)}.iam-surface .token.info{background:var(--info-bg);color:var(--info-fg)}.iam-surface .risk{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700}.iam-surface .risk i{width:13px;height:13px}.iam-surface .risk.high{color:var(--danger-fg)}.iam-surface .risk.medium{color:var(--warning-fg)}.iam-surface .risk.low{color:var(--fg-3)}.iam-surface .age{font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}.iam-surface .age.breach{color:var(--danger-fg)}.iam-surface .age.warn{color:var(--warning-fg)}.iam-surface .age.ok{color:var(--fg-2)}.iam-surface .idkind{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;padding:3px 9px;border-radius:var(--radius-sm)}.iam-surface .idkind i{width:13px;height:13px}.iam-surface .idkind.service{background:var(--teal-50);color:var(--teal-600);border:1px solid color-mix(in srgb,var(--teal-600) 22%,transparent)}.iam-surface .idkind.apikey{background:var(--brand-soft);color:var(--brand-fg);border:1px solid var(--brand-border)}.iam-surface .stat-strip{display:flex;gap:0;border:1px solid var(--border-1);border-radius:var(--radius-md);overflow:hidden;background:var(--bg-surface);margin-bottom:16px}.iam-surface .stat-cell{flex:1;padding:12px 16px;border-right:1px solid var(--border-1);min-width:0}.iam-surface .stat-cell:last-child{border-right:0}.iam-surface .stat-cell.clickable{cursor:pointer}.iam-surface .stat-cell.clickable:hover{background:var(--bg-subtle)}.iam-surface .stat-cell.active{background:var(--brand-soft);box-shadow:inset 0 -2px 0 var(--brand)}.iam-surface .stat-val{font-size:20px;font-weight:800;color:var(--fg-1);line-height:1;font-variant-numeric:tabular-nums;display:flex;align-items:baseline;gap:7px}.iam-surface .stat-val .unit{font-size:12px;font-weight:600;color:var(--fg-3)}.iam-surface .stat-lbl{font-size:11.5px;font-weight:600;color:var(--fg-3);margin-top:6px}.iam-surface .stat-cell.warn .stat-val{color:var(--warning-fg)}.iam-surface .stat-cell.danger .stat-val{color:var(--danger-fg)}@media (max-width: 720px){.iam-surface .stat-strip{flex-wrap:wrap}.iam-surface .stat-cell{flex:1 1 50%;border-bottom:1px solid var(--border-1)}}.iam-surface .filter-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 16px;border-bottom:1px solid var(--border-1);background:var(--bg-surface)}.iam-surface .filter-bar .fb-search{flex:1;min-width:180px;display:flex;align-items:center;gap:8px;height:34px;background:var(--bg-subtle);border:1px solid var(--border-1);border-radius:var(--radius-sm);padding:0 11px}.iam-surface .filter-bar .fb-search:focus-within{background:var(--bg-surface);border-color:var(--focus-ring);box-shadow:var(--shadow-focus)}.iam-surface .filter-bar .fb-search i{width:15px;height:15px;color:var(--fg-3)}.iam-surface .filter-bar .fb-search input{flex:1;border:0;outline:0;background:transparent;font-size:13px;color:var(--fg-1);min-width:0}.iam-surface .fb-select{height:34px;padding:0 30px 0 11px;border:1px solid var(--border-2);border-radius:var(--radius-sm);background:var(--bg-surface);font-size:12.5px;font-weight:600;color:var(--fg-2);cursor:pointer;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%237c8598' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center}.iam-surface .fb-select:focus{outline:0;border-color:var(--focus-ring);box-shadow:var(--shadow-focus)}.iam-surface .fb-reset{margin-left:auto}.iam-surface .data-table.fixed{table-layout:auto}.iam-surface .data-table td .stack{display:flex;flex-direction:column;gap:2px}.iam-surface .data-table td .stack .top{font-weight:600;color:var(--fg-1)}.iam-surface .data-table td .stack .sub{font-size:11.5px;color:var(--fg-3)}.iam-surface .data-table tbody tr.norow:hover td{background:transparent;cursor:default}.iam-surface .cell-actions{display:flex;align-items:center;gap:6px;justify-content:flex-end}.iam-surface .cell-id{font-family:var(--font-mono);font-size:11.5px;color:var(--fg-3)}.iam-surface .avatar-sm{width:26px;height:26px;border-radius:50%;background:var(--brand-soft);color:var(--brand-fg);display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:10.5px;flex:none}.iam-surface .id-cell{display:flex;align-items:center;gap:10px;min-width:0}.iam-surface .id-cell .id-name{font-weight:600;color:var(--fg-1);white-space:nowrap}.iam-surface .id-cell .id-sub{font-size:11.5px;color:var(--fg-3);white-space:nowrap}.iam-surface .drawer-scrim{position:fixed;inset:0;background:#1a20306b;z-index:70;animation:fade var(--dur-base) var(--ease-out)}@keyframes fade{0%{opacity:0}to{opacity:1}}.iam-surface .drawer{position:fixed;top:0;right:0;bottom:0;width:min(560px,100vw);background:var(--bg-surface);z-index:71;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;animation:slidein var(--dur-base) var(--ease-out)}.iam-surface .drawer.wide{width:min(720px,100vw)}.iam-surface .rail-foot i{width:14px;height:14px}@keyframes slidein{0%{transform:translate(10px)}to{transform:translate(0)}}.iam-surface .drawer-head{display:flex;align-items:flex-start;gap:12px;padding:16px 18px;border-bottom:1px solid var(--border-1);flex:none}.iam-surface .drawer-head .dh-main{flex:1;min-width:0}.iam-surface .drawer-head h3{margin:0;font-size:16px;font-weight:700;color:var(--fg-1)}.iam-surface .drawer-head .dh-sub{font-size:12px;color:var(--fg-3);margin-top:3px}.iam-surface .drawer-close{width:32px;height:32px;flex:none;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);border:1px solid var(--border-2);background:var(--bg-surface);color:var(--fg-3);cursor:pointer}.iam-surface .drawer-close:hover{background:var(--bg-subtle);color:var(--fg-1)}.iam-surface .drawer-close i{width:16px;height:16px}.iam-surface .drawer-body{flex:1;overflow-y:auto;padding:18px}.iam-surface .drawer-foot{flex:none;padding:14px 18px;border-top:1px solid var(--border-1);display:flex;align-items:center;gap:10px;background:var(--bg-surface)}.iam-surface .drawer-foot .spacer{flex:1}.iam-surface .dblock{margin-bottom:20px}.iam-surface .dblock-title{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3);margin:0 0 9px}.iam-surface .kv{display:grid;grid-template-columns:130px 1fr;gap:6px 14px;font-size:13px}.iam-surface .kv dt{color:var(--fg-3)}.iam-surface .kv dd{margin:0;color:var(--fg-1);font-weight:600}.iam-surface .kv dd.mono{font-family:var(--font-mono);font-size:12px;font-weight:500}.iam-surface .entity-head{display:flex;align-items:flex-start;gap:16px;padding:18px 0 16px;border-bottom:1px solid var(--border-1);margin-bottom:0;flex-wrap:wrap}.iam-surface .entity-avatar{width:52px;height:52px;flex:none;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:18px;background:var(--brand-soft);color:var(--brand-fg)}.iam-surface .entity-avatar.machine{background:var(--teal-50);color:var(--teal-600);font-family:var(--font-mono);font-size:15px}.iam-surface .entity-avatar.app{background:var(--bg-subtle);color:var(--fg-2);font-family:var(--font-mono);font-size:15px;border:1px solid var(--border-1)}.iam-surface .entity-info{flex:1 1 360px;min-width:0}.iam-surface .entity-info h1{margin:0;font-size:21px;font-weight:800;letter-spacing:-.02em;color:var(--fg-1);display:flex;align-items:center;gap:10px;flex-wrap:wrap;row-gap:7px;min-width:0}.iam-surface .entity-info h1 .e-title{min-width:0;overflow-wrap:anywhere}.iam-surface .entity-sub{display:flex;align-items:center;gap:8px;flex-wrap:wrap;row-gap:5px;margin-top:8px;font-size:12.5px;color:var(--fg-3)}.iam-surface .entity-sub .mono{font-family:var(--font-mono);font-size:11.5px;overflow-wrap:anywhere}.iam-surface .entity-sub .sep{color:var(--border-2)}.iam-surface .entity-sub .e-meta{display:inline-flex;align-items:center;gap:6px;background:var(--bg-subtle);border:1px solid var(--border-1);border-radius:var(--radius-pill);padding:2px 9px;white-space:nowrap;max-width:100%}.iam-surface .entity-sub .e-meta i{width:12px;height:12px;color:var(--fg-4);flex:none}.iam-surface .entity-sub .e-meta .mono{overflow:hidden;text-overflow:ellipsis}.iam-surface .entity-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto;flex-wrap:wrap;margin-left:auto}.iam-surface .back-link{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--fg-3);cursor:pointer;background:none;border:0;padding:0;margin-bottom:12px;white-space:nowrap}.iam-surface .back-link:hover{color:var(--fg-1)}.iam-surface .back-link i{width:15px;height:15px}.iam-surface .tabs.scroll{overflow-x:auto;overflow-y:hidden}.iam-surface .matrix-wrap{overflow-x:auto}.iam-surface .matrix-legend{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:13px 16px;border-bottom:1px solid var(--border-1);color:var(--fg-3);font-size:12.5px}.iam-surface .matrix-legend>span{display:inline-flex;align-items:center;gap:7px}.iam-surface .matrix{width:100%;border-collapse:collapse;font-size:13px}.iam-surface .matrix th{text-align:left;padding:9px 12px;background:var(--bg-subtle);border-bottom:1px solid var(--border-2);font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--fg-3);white-space:nowrap}.iam-surface .matrix th.center,.iam-surface .matrix td.center{text-align:center}.iam-surface .matrix td{padding:11px 12px;border-bottom:1px solid var(--border-1);vertical-align:middle}.iam-surface .matrix td.inherited{background:color-mix(in srgb,var(--bg-subtle) 58%,transparent)}.iam-surface .matrix tbody tr:hover td{background:var(--bg-subtle)}.iam-surface .matrix .subj{display:flex;align-items:center;gap:10px}.iam-surface .matrix .subj-main{display:flex;flex-direction:column;gap:2px;min-width:0}.iam-surface .matrix .subj-summary{color:var(--fg-4);font-size:11.5px;font-weight:500;text-transform:none;letter-spacing:0}.iam-surface .src-chip{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;padding:3px 8px;border-radius:var(--radius-sm)}.iam-surface .src-chip i{width:11px;height:11px}.iam-surface .src-chip.direct{background:var(--brand-soft);color:var(--brand-fg)}.iam-surface .src-chip.group{background:var(--info-bg);color:var(--info-fg)}.iam-surface .src-chip.role{background:var(--teal-50);color:var(--teal-600)}.iam-surface .src-chip.service{background:var(--teal-50);color:var(--teal-600);border:1px solid color-mix(in srgb,var(--teal-600) 22%,transparent)}.iam-surface .src-chip.inherited{background:var(--bg-subtle);color:var(--fg-2)}.iam-surface .src-none{color:var(--fg-4);font-size:16px;line-height:1}.iam-surface .src-yes{color:var(--success)}.iam-surface .src-yes i{width:16px;height:16px}.iam-surface .src-cell-source{display:block;margin-top:4px;font-size:10px;font-weight:700;color:var(--brand-fg);text-transform:uppercase;letter-spacing:.04em}.iam-surface .src-cell-source.inherited{color:var(--fg-2)}.iam-surface .timeline{position:relative;padding-left:4px}.iam-surface .tl-item{display:flex;gap:13px;padding-bottom:18px;position:relative}.iam-surface .tl-item:last-child{padding-bottom:0}.iam-surface .tl-rail{flex:none;display:flex;flex-direction:column;align-items:center}.iam-surface .tl-dot{width:13px;height:13px;border-radius:50%;border:2.5px solid var(--bg-surface);background:var(--fg-4);box-shadow:0 0 0 1px var(--border-2);z-index:1;margin-top:2px}.iam-surface .tl-dot.success{background:var(--success)}.iam-surface .tl-dot.warning{background:var(--warning)}.iam-surface .tl-dot.danger{background:var(--danger)}.iam-surface .tl-dot.brand{background:var(--brand)}.iam-surface .tl-dot.info{background:var(--info)}.iam-surface .tl-line{flex:1;width:2px;background:var(--border-1);margin-top:2px}.iam-surface .tl-item:last-child .tl-line{display:none}.iam-surface .tl-body{flex:1;min-width:0;padding-bottom:2px}.iam-surface .tl-main{font-size:13px;color:var(--fg-1);line-height:1.45}.iam-surface .tl-main b{font-weight:700}.iam-surface .tl-main .actor{color:var(--brand-fg);font-weight:600}.iam-surface .tl-meta{font-size:11.5px;color:var(--fg-3);margin-top:3px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.iam-surface .tl-meta .mono{font-family:var(--font-mono)}.iam-surface .tl-reason{margin-top:6px;font-size:12.5px;color:var(--fg-2);background:var(--bg-subtle);border-radius:var(--radius-sm);padding:8px 11px;border-left:2px solid var(--border-2)}.iam-surface .field{margin-bottom:16px}.iam-surface .field>label{display:block;font-size:12.5px;font-weight:600;color:var(--fg-1);margin-bottom:6px}.iam-surface .field .hint{font-size:11.5px;color:var(--fg-3);margin-top:5px;line-height:1.45}.iam-surface .field .req{color:var(--danger-fg)}.iam-surface .field .opt{color:var(--fg-4);font-weight:500}.iam-surface .input,.iam-surface .textarea,.iam-surface .select{width:100%;padding:9px 11px;border:1px solid var(--border-2);border-radius:var(--radius-sm);font-size:13.5px;color:var(--fg-1);background:var(--bg-surface);font-family:inherit}.iam-surface .textarea{min-height:96px;resize:vertical;line-height:1.5}.iam-surface .select{-webkit-appearance:none;appearance:none;padding-right:32px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%237c8598' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.iam-surface .input:focus,.iam-surface .textarea:focus,.iam-surface .select:focus{outline:0;border-color:var(--focus-ring);box-shadow:var(--shadow-focus)}.iam-surface .input.error,.iam-surface .textarea.error,.iam-surface .select.error{border-color:var(--danger)}.iam-surface .input.error:focus,.iam-surface .textarea.error:focus{box-shadow:0 0 0 3px var(--danger-bg)}.iam-surface .field-error{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--danger-fg);margin-top:6px}.iam-surface .field-error i{width:13px;height:13px}.iam-surface .char-count{font-size:11px;color:var(--fg-4);float:right;font-variant-numeric:tabular-nums}.iam-surface .password-field{position:relative;display:flex;align-items:center}.iam-surface .password-field .input,.iam-surface .password-field .text-input{padding-right:42px}.iam-surface .inline-icon-button{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:30px;height:30px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--fg-3);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.iam-surface .inline-icon-button:hover{background:var(--bg-subtle);color:var(--fg-1)}.iam-surface .inline-icon-button:focus-visible{outline:2px solid color-mix(in srgb,var(--brand) 40%,transparent);outline-offset:1px}.iam-surface .inline-icon-button:disabled{cursor:not-allowed;opacity:.45}.iam-surface .inline-icon-button app-icon{width:15px;height:15px}.iam-surface .change-password-form{display:flex;flex-direction:column;gap:14px}.iam-surface .change-password-form .field{margin-bottom:0}.iam-surface .change-password-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.iam-surface .password-policy{border:1px solid var(--border-1);border-radius:var(--radius-sm);background:var(--bg-subtle);padding:12px 13px}.iam-surface .password-policy-title{font-size:12.5px;font-weight:700;color:var(--fg-1);margin-bottom:8px}.iam-surface .password-policy-list{list-style:none;display:grid;gap:7px;margin:0;padding:0}.iam-surface .password-policy-row{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--fg-3)}.iam-surface .password-policy-row app-icon{width:14px;height:14px;flex:none}.iam-surface .password-policy-row.valid{color:var(--success-fg)}.iam-surface .password-policy-row.invalid{color:var(--danger-fg)}.iam-surface .password-policy-row.pending{color:var(--fg-4)}.iam-surface .password-policy-help{margin-top:9px;font-size:11.5px;color:var(--fg-3);line-height:1.45}@media (max-width: 620px){.iam-surface .change-password-grid{grid-template-columns:1fr}}.iam-surface .choice-list{display:flex;flex-direction:column;gap:8px}.iam-surface .choice{display:flex;align-items:flex-start;gap:11px;width:100%;padding:12px 13px;border:1px solid var(--border-2);border-radius:var(--radius-sm);background:var(--bg-surface);color:inherit;cursor:pointer;font:inherit;text-align:left}.iam-surface .choice:hover{border-color:var(--border-strong)}.iam-surface .choice:focus-visible{outline:2px solid color-mix(in srgb,var(--brand) 40%,transparent);outline-offset:2px}.iam-surface .choice.sel{border-color:var(--brand);background:var(--brand-soft)}.iam-surface .choice .radio{width:17px;height:17px;border-radius:50%;border:2px solid var(--border-strong);flex:none;margin-top:1px;position:relative}.iam-surface .choice.sel .radio{border-color:var(--brand)}.iam-surface .choice.sel .radio:after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--brand)}.iam-surface .choice .c-body{flex:1;min-width:0}.iam-surface .choice .c-title{font-size:13.5px;font-weight:700;color:var(--fg-1)}.iam-surface .choice .c-desc{font-size:12px;color:var(--fg-3);margin-top:3px;line-height:1.45}.iam-surface .perm-chooser{border:1px solid var(--border-2);border-radius:var(--radius-sm)}.iam-surface .perm-search{display:flex;align-items:center;gap:8px;padding:9px 11px;border-bottom:1px solid var(--border-1)}.iam-surface .perm-search i{width:15px;height:15px;color:var(--fg-3)}.iam-surface .perm-search input{flex:1;border:0;outline:0;background:transparent;font-size:13px}.iam-surface .perm-list{max-height:230px;overflow-y:auto}.iam-surface .perm-item{display:flex;align-items:center;gap:11px;width:100%;padding:9px 12px;border:0;border-bottom:1px solid var(--border-1);background:transparent;color:inherit;cursor:pointer;font:inherit;text-align:left}.iam-surface .perm-item:last-child{border-bottom:0}.iam-surface .perm-item:hover{background:var(--bg-subtle)}.iam-surface .perm-item:focus-visible{outline:2px solid color-mix(in srgb,var(--brand) 35%,transparent);outline-offset:-2px}.iam-surface .perm-code{font-family:var(--font-mono);font-size:12.5px;font-weight:600;color:var(--fg-1)}.iam-surface .perm-desc{font-size:11.5px;color:var(--fg-3);margin-top:1px}.iam-surface .perm-foot{padding:9px 12px;border-top:1px solid var(--border-1);font-size:12px;color:var(--fg-3);display:flex;align-items:center;justify-content:space-between}.iam-surface .chip-set{display:flex;flex-wrap:wrap;gap:6px}.iam-surface .chip-rm{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:11.5px;font-weight:600;padding:4px 6px 4px 9px;border-radius:var(--radius-sm);background:var(--brand-soft);color:var(--brand-fg)}.iam-surface .chip-rm button{border:0;background:transparent;color:var(--brand-fg);cursor:pointer;display:inline-flex;padding:0;opacity:.7}.iam-surface .chip-rm button:hover{opacity:1}.iam-surface .chip-rm button i{width:13px;height:13px}.iam-surface .banner{display:flex;align-items:flex-start;gap:11px;padding:12px 14px;border-radius:var(--radius-sm);font-size:13px;line-height:1.5;margin-bottom:16px;border:1px solid transparent}.iam-surface .banner i.lead{width:17px;height:17px;flex:none;margin-top:1px}.iam-surface .banner .b-body{flex:1;min-width:0}.iam-surface .banner .b-title{font-weight:700}.iam-surface .banner .b-actions{margin-top:9px;display:flex;gap:8px}.iam-surface .banner.info{background:var(--info-bg);color:var(--info-fg);border-color:color-mix(in srgb,var(--info) 22%,transparent)}.iam-surface .banner.success{background:var(--success-bg);color:var(--success-fg);border-color:color-mix(in srgb,var(--success) 22%,transparent)}.iam-surface .banner.warning{background:var(--warning-bg);color:var(--warning-fg);border-color:color-mix(in srgb,var(--warning) 26%,transparent)}.iam-surface .banner.danger{background:var(--danger-bg);color:var(--danger-fg);border-color:color-mix(in srgb,var(--danger) 26%,transparent)}.iam-surface .banner.neutral{background:var(--bg-subtle);color:var(--fg-2);border-color:var(--border-1)}.iam-surface .banner .b-body b{color:inherit}.iam-surface .secret-box{border:1px solid color-mix(in srgb,var(--warning) 34%,transparent);border-radius:var(--radius-md);background:var(--bg-surface);overflow:hidden}.iam-surface .secret-head{display:flex;align-items:center;gap:9px;padding:11px 14px;background:var(--warning-bg);color:var(--warning-fg);font-size:12.5px;font-weight:700}.iam-surface .secret-head i{width:16px;height:16px}.iam-surface .secret-row{display:flex;align-items:stretch;gap:0;padding:14px;gap:10px}.iam-surface .secret-val{flex:1;min-width:0;font-family:var(--font-mono);font-size:13px;color:var(--fg-1);background:var(--bg-subtle);border:1px solid var(--border-2);border-radius:var(--radius-sm);padding:11px 12px;word-break:break-all;line-height:1.5}.iam-surface .secret-meta{padding:0 14px 14px}.iam-surface .secret-actions{display:flex;justify-content:flex-end;padding:0 14px 14px}.iam-surface .copy-btn{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 13px;border-radius:var(--radius-sm);border:1px solid var(--border-2);background:var(--bg-surface);color:var(--fg-1);font-size:12.5px;font-weight:600;cursor:pointer;flex:none;white-space:nowrap}.iam-surface .copy-btn:hover{background:var(--bg-subtle)}.iam-surface .copy-btn.done{color:var(--success-fg);border-color:color-mix(in srgb,var(--success) 40%,transparent)}.iam-surface .copy-btn i{width:14px;height:14px}.iam-surface .code-block{font-family:var(--font-mono);font-size:12px;color:var(--fg-2);background:var(--bg-subtle);border:1px solid var(--border-1);border-radius:var(--radius-sm);padding:11px 13px;line-height:1.6;overflow-x:auto;white-space:pre}.iam-surface .code-block .k{color:var(--teal-600)}.iam-surface .code-block .v{color:var(--fg-1)}.iam-surface .state-panel{display:flex;flex-direction:column;align-items:center;text-align:center;padding:52px 24px;max-width:440px;margin:0 auto}.iam-surface .state-icon{width:52px;height:52px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;margin-bottom:16px}.iam-surface .state-icon i{width:24px;height:24px}.iam-surface .state-icon.neutral{background:var(--bg-subtle);color:var(--fg-3)}.iam-surface .state-icon.forbidden{background:var(--danger-bg);color:var(--danger-fg)}.iam-surface .state-icon.warning{background:var(--warning-bg);color:var(--warning-fg)}.iam-surface .state-panel h3{margin:0 0 7px;font-size:16px;font-weight:700;color:var(--fg-1)}.iam-surface .state-panel p{margin:0;font-size:13px;color:var(--fg-3);line-height:1.55}.iam-surface .state-panel .perm-needed{margin-top:12px;font-family:var(--font-mono);font-size:12px;font-weight:600;color:var(--fg-2);background:var(--bg-subtle);border:1px solid var(--border-1);border-radius:var(--radius-sm);padding:6px 10px}.iam-surface .state-panel .state-action{margin-top:18px}.iam-surface .skeleton{background:linear-gradient(90deg,var(--bg-subtle) 25%,var(--bg-muted) 37%,var(--bg-subtle) 63%);background-size:400% 100%;animation:shimmer 1.4s ease infinite;border-radius:var(--radius-sm)}@keyframes shimmer{0%{background-position:100% 0}to{background-position:0 0}}@media (prefers-reduced-motion: reduce){.iam-surface .skeleton{animation:none}}.iam-surface .sk-row{display:flex;align-items:center;gap:14px;padding:13px 16px;border-bottom:1px solid var(--border-1)}.iam-surface .sk-row:last-child{border-bottom:0}.iam-surface .confirm-type{margin-top:6px}.iam-surface .confirm-type code{font-family:var(--font-mono);font-weight:700;color:var(--danger-fg);background:var(--danger-bg);padding:1px 6px;border-radius:4px}.iam-surface .split{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}@media (max-width: 1040px){.iam-surface .split{grid-template-columns:1fr}}.iam-surface .aside-block{border:1px solid var(--border-1);border-radius:var(--radius-md);background:var(--bg-surface);margin-bottom:14px}.iam-surface .aside-block h4{margin:0;padding:12px 14px;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3);border-bottom:1px solid var(--border-1)}.iam-surface .aside-body{padding:14px}.iam-surface .dl{display:grid;grid-template-columns:auto 1fr;gap:8px 14px;font-size:12.5px;align-items:baseline}.iam-surface .dl dt{color:var(--fg-3);white-space:nowrap}.iam-surface .dl dd{margin:0;color:var(--fg-1);font-weight:600;text-align:right}.iam-surface .dl dd.mono{font-family:var(--font-mono);font-size:11.5px;font-weight:500}.iam-surface .toast-wrap{position:fixed;bottom:22px;left:50%;transform:translate(-50%);z-index:90;display:flex;flex-direction:column;gap:8px;align-items:center}.iam-surface .toast{display:flex;align-items:center;gap:10px;padding:11px 16px;border-radius:var(--radius-md);background:var(--n-900);color:#fff;font-size:13px;font-weight:600;box-shadow:var(--shadow-lg);animation:toastin var(--dur-base) var(--ease-out);max-width:90vw}.iam-surface .toast i{width:16px;height:16px;flex:none}.iam-surface .toast.success i{color:#6fcf97}.iam-surface .toast.danger i{color:#ec8989}@keyframes toastin{0%{transform:translateY(10px);opacity:0}to{transform:none;opacity:1}}.iam-surface .mobile-surface{display:none}@media (max-width: 860px){.iam-surface .surface-tabs{display:none}.iam-surface .exp-topbar{gap:8px}.iam-surface .exp-brand .pw{white-space:nowrap}.iam-surface .exp-brand .pw small{display:none}.iam-surface .src-state{padding:0 9px}.iam-surface .src-state .label-full{display:none}.iam-surface .ctx-banner{padding:7px 14px;gap:0;overflow-x:auto;flex-wrap:nowrap}.iam-surface .ctx-item{padding:0 12px}.iam-surface .ctx-val,.iam-surface .ctx-lbl{white-space:nowrap}.iam-surface .ctx-banner .ctx-right{margin-left:auto;flex:none;padding-left:12px}.iam-surface .mobile-surface{display:flex;gap:4px;padding:8px 14px;border-bottom:1px solid var(--border-1);background:var(--bg-surface);overflow-x:auto}.iam-surface .mobile-surface .surface-tab{flex:1;justify-content:center}.iam-surface .split{grid-template-columns:1fr}.iam-surface .drawer{width:100vw}.iam-surface .entity-head{gap:12px}.iam-surface .entity-actions{width:100%}.iam-surface .entity-actions .btn{flex:1 1 auto}}.iam-surface i[data-icon]{display:inline-flex;align-items:center;justify-content:center;flex:none;width:16px;height:16px;line-height:0;vertical-align:-.15em}.iam-surface i[data-icon] svg{width:100%;height:100%;display:block}.iam-surface .switch{position:relative;width:38px;height:22px;border-radius:var(--radius-pill);background:var(--border-strong);border:0;cursor:pointer;flex:none;transition:background var(--dur-fast);padding:0}.iam-surface .switch:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:var(--shadow-sm);transition:transform var(--dur-fast)}.iam-surface .switch.on{background:var(--brand)}.iam-surface .switch.on:after{transform:translate(16px)}.iam-surface .switch:disabled{opacity:.45;cursor:not-allowed}.iam-surface .switch-row{display:flex;align-items:flex-start;gap:14px;padding:13px 0;border-bottom:1px solid var(--border-1)}.iam-surface .switch-row:last-child{border-bottom:0}.iam-surface .switch-row .sr-body{flex:1;min-width:0}.iam-surface .switch-row .sr-title{font-size:13.5px;font-weight:600;color:var(--fg-1)}.iam-surface .switch-row .sr-desc{font-size:12px;color:var(--fg-3);margin-top:3px;line-height:1.45}.iam-surface .seg{display:inline-flex;background:var(--bg-subtle);border:1px solid var(--border-1);border-radius:var(--radius-sm);padding:2px;gap:2px}.iam-surface .seg button{border:0;background:transparent;font-size:12.5px;font-weight:600;color:var(--fg-3);padding:6px 13px;border-radius:5px;cursor:pointer;white-space:nowrap}.iam-surface .seg button.on{background:var(--bg-surface);color:var(--fg-1);box-shadow:var(--shadow-xs)}.iam-surface .profile-head{display:flex;align-items:center;gap:18px;padding:4px 0 18px;flex-wrap:wrap}.iam-surface .avatar-lg{width:76px;height:76px;border-radius:var(--radius-lg);flex:none;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:27px;background:var(--brand-soft);color:var(--brand-fg);overflow:hidden;position:relative}.iam-surface .avatar-lg img{width:100%;height:100%;object-fit:cover}.iam-surface .avatar-edit-btn{position:absolute;right:-6px;bottom:-6px;width:28px;height:28px;border-radius:50%;border:2px solid var(--bg-surface);background:var(--n-800);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}.iam-surface .avatar-edit-btn i{width:14px;height:14px}.iam-surface .profile-head .ph-info{flex:1;min-width:0}.iam-surface .profile-head .ph-info h1{margin:0;font-size:22px;font-weight:800;letter-spacing:-.02em}.iam-surface .profile-head .ph-info .ph-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:6px;font-size:13px;color:var(--fg-3)}.iam-surface .profile-head .ph-meta .sep{color:var(--border-2)}.iam-surface .profile-page{position:relative}.iam-surface .profile-back-button{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;margin-bottom:12px;border:1px solid var(--border-1);border-radius:var(--radius-sm);color:var(--fg-2);background:var(--bg-surface);text-decoration:none}.iam-surface .profile-back-button:hover,.iam-surface .profile-back-button:focus-visible{color:var(--fg-1);background:var(--bg-subtle);box-shadow:var(--shadow-focus)}.iam-surface .profile-back-button app-icon{width:16px;height:16px}.iam-surface .profile-photo-row{display:flex;align-items:center;gap:14px;min-width:0}.iam-surface .profile-photo-preview{width:56px;height:56px;font-size:19px;border-radius:var(--radius-md)}.iam-surface .profile-photo-main{min-width:0;display:flex;flex-direction:column;gap:8px}.iam-surface .profile-photo-title{font-size:13.5px;font-weight:700;color:var(--fg-1)}.iam-surface .profile-photo-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.iam-surface .profile-photo-actions label.btn{cursor:pointer}.iam-surface .profile-field-list{display:flex;flex-direction:column}.iam-surface .profile-field-row{width:100%;min-height:44px;display:grid;grid-template-columns:minmax(132px,.28fr) minmax(0,1fr) 22px;align-items:center;gap:12px;padding:9px 16px;border:0;border-bottom:1px solid var(--border-1);background:transparent;color:inherit;text-align:left}.iam-surface .profile-field-row:last-child{border-bottom:0}.iam-surface button.profile-field-row{cursor:pointer}.iam-surface button.profile-field-row:hover,.iam-surface button.profile-field-row:focus-visible{background:var(--bg-subtle);outline:0}.iam-surface .profile-field-row.readonly{cursor:default;color:var(--fg-2)}.iam-surface .profile-field-row.editing{grid-template-columns:minmax(132px,.28fr) minmax(0,1fr) auto;background:var(--bg-subtle)}.iam-surface .profile-field-row app-icon{width:15px;height:15px;color:var(--fg-3);justify-self:end}.iam-surface .profile-field-row label,.iam-surface .profile-field-label{font-size:12.5px;font-weight:700;color:var(--fg-2)}.iam-surface .profile-field-value{min-width:0;color:var(--fg-1);font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.iam-surface .profile-field-value.empty{color:var(--fg-4);font-style:italic}.iam-surface .profile-field-editor{min-width:0}.iam-surface .profile-inline-input{min-height:32px;height:32px;padding-top:5px;padding-bottom:5px;font-size:13.5px}.iam-surface .profile-inline-textarea{min-height:58px;resize:vertical;font-size:13.5px}.iam-surface .profile-field-status{font-size:12px;color:var(--fg-3);white-space:nowrap}@media (max-width: 680px){.iam-surface .profile-field-row,.iam-surface .profile-field-row.editing{grid-template-columns:1fr;gap:6px;align-items:stretch}.iam-surface .profile-field-row app-icon{display:none}}.iam-surface .field-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.iam-surface .field-grid .field.col-2{grid-column:1/-1}@media (max-width: 680px){.iam-surface .field-grid{grid-template-columns:1fr}}.iam-surface .field .lock{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:var(--fg-4);margin-left:6px}.iam-surface .field .lock i{width:12px;height:12px}.iam-surface .input:disabled,.iam-surface .select:disabled{background:var(--bg-muted);color:var(--fg-3);cursor:not-allowed}.iam-surface .input-affix{display:flex;align-items:center;gap:0;border:1px solid var(--border-2);border-radius:var(--radius-sm);background:var(--bg-surface);overflow:hidden}.iam-surface .input-affix:focus-within{border-color:var(--focus-ring);box-shadow:var(--shadow-focus)}.iam-surface .input-affix .affix{padding:0 10px;color:var(--fg-3);font-size:13px;background:var(--bg-subtle);align-self:stretch;display:flex;align-items:center;border-right:1px solid var(--border-1)}.iam-surface .input-affix input{flex:1;border:0;outline:0;padding:9px 11px;font-size:13.5px;background:transparent;min-width:0}.iam-surface .save-bar{position:sticky;bottom:0;display:flex;align-items:center;gap:12px;padding:12px 16px;margin-top:16px;background:var(--bg-surface);border:1px solid var(--border-2);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.iam-surface .save-bar .sb-msg{font-size:13px;font-weight:600;color:var(--fg-2);flex:1;display:flex;align-items:center;gap:8px}.iam-surface .save-bar .sb-msg i{width:16px;height:16px;color:var(--warning-fg)}.iam-surface .health-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.iam-surface .health-item{display:flex;align-items:flex-start;gap:11px;padding:13px 14px;border:1px solid var(--border-1);border-radius:var(--radius-md)}.iam-surface .health-item .hi-icon{width:32px;height:32px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex:none}.iam-surface .health-item .hi-icon i{width:17px;height:17px}.iam-surface .health-item.good .hi-icon{background:var(--success-bg);color:var(--success-fg)}.iam-surface .health-item.warn .hi-icon{background:var(--warning-bg);color:var(--warning-fg)}.iam-surface .health-item.info .hi-icon{background:var(--info-bg);color:var(--info-fg)}.iam-surface .health-item .hi-title{font-size:13px;font-weight:700;color:var(--fg-1)}.iam-surface .health-item .hi-sub{font-size:11.5px;color:var(--fg-3);margin-top:2px;line-height:1.4}.iam-surface .method-row{display:flex;align-items:center;gap:13px;padding:13px 16px;border-bottom:1px solid var(--border-1)}.iam-surface .method-row:last-child{border-bottom:0}.iam-surface .method-row .m-icon{width:36px;height:36px;border-radius:var(--radius-sm);background:var(--bg-subtle);color:var(--fg-2);display:flex;align-items:center;justify-content:center;flex:none}.iam-surface .method-row .m-icon i{width:18px;height:18px}.iam-surface .method-row.on .m-icon{background:var(--brand-soft);color:var(--brand-fg)}.iam-surface .method-row .m-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.iam-surface .method-row .m-title{font-size:13.5px;font-weight:600;color:var(--fg-1);line-height:1.4;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.iam-surface .method-row .m-detail{font-size:12px;color:var(--fg-3);margin-top:2px}.iam-surface .method-row .m-action{flex:none}@media (max-width: 640px){.iam-surface .method-row{flex-wrap:wrap}.iam-surface .method-row .m-action,.iam-surface .method-row .m-action .btn{width:100%}}.iam-surface .codes-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;font-family:var(--font-mono)}@media (min-width: 520px){.iam-surface .codes-grid{grid-template-columns:repeat(2,1fr)}}.iam-surface .codes-grid .code{padding:9px 12px;background:var(--bg-subtle);border:1px solid var(--border-1);border-radius:var(--radius-sm);font-size:13px;text-align:center;letter-spacing:.04em}.iam-surface .sugg{position:relative}.iam-surface .sugg-input{display:flex;align-items:center;gap:8px;height:38px;padding:0 11px;border:1px solid var(--border-2);border-radius:var(--radius-sm);background:var(--bg-surface)}.iam-surface .sugg-input:focus-within{border-color:var(--focus-ring);box-shadow:var(--shadow-focus)}.iam-surface .sugg-input>i[data-icon]{width:15px;height:15px;color:var(--fg-3);flex:none}.iam-surface .sugg-input input{flex:1;border:0;outline:0;background:transparent;font-size:13.5px;color:var(--fg-1);min-width:0}.iam-surface .sugg-clear{border:0;background:transparent;color:var(--fg-3);cursor:pointer;display:inline-flex;padding:2px;border-radius:4px}.iam-surface .sugg-clear:hover{background:var(--bg-subtle);color:var(--fg-1)}.iam-surface .sugg-clear i{width:14px;height:14px}.iam-surface .sugg-pop{position:absolute;z-index:65;top:calc(100% + 4px);left:0;right:0;background:var(--bg-surface);border:1px solid var(--border-1);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);max-height:280px;overflow-y:auto;padding:4px}.iam-surface .sugg-row{display:flex;align-items:center;gap:11px;padding:8px 10px;border-radius:var(--radius-sm);cursor:pointer}.iam-surface .sugg-row.active{background:var(--brand-soft)}.iam-surface .sugg-ic{width:28px;height:28px;flex:none;border-radius:var(--radius-sm);background:var(--bg-subtle);color:var(--fg-2);display:flex;align-items:center;justify-content:center}.iam-surface .sugg-ic i{width:15px;height:15px}.iam-surface .sugg-ic.brand{background:var(--brand-soft);color:var(--brand-fg)}.iam-surface .sugg-ic.machine,.iam-surface .sugg-ic.role{background:var(--teal-50);color:var(--teal-600)}.iam-surface .sugg-ic.group{background:var(--info-bg);color:var(--info-fg)}.iam-surface .sugg-main{flex:1;min-width:0}.iam-surface .sugg-label{font-size:13px;font-weight:600;color:var(--fg-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iam-surface .sugg-sub{font-size:11.5px;color:var(--fg-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iam-surface .sugg-meta{flex:none;font-size:11px;color:var(--fg-3);display:flex;align-items:center;gap:6px;white-space:nowrap}.iam-surface .sugg-state{display:flex;align-items:center;gap:8px;padding:14px 12px;font-size:12.5px;color:var(--fg-3);justify-content:center}.iam-surface .sugg-state i{width:15px;height:15px}.iam-surface .sugg-state.error{color:var(--danger-fg)}.iam-surface .impact{border:1px solid var(--border-2);border-radius:var(--radius-sm);overflow:hidden;margin:4px 0 2px}.iam-surface .impact-row{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;border-bottom:1px solid var(--border-1);font-size:12.5px}.iam-surface .impact-row:last-child{border-bottom:0}.iam-surface .impact-row .ir-label{color:var(--fg-2);display:flex;align-items:center;gap:8px}.iam-surface .impact-row .ir-label i{width:14px;height:14px;color:var(--fg-4)}.iam-surface .impact-row .ir-val{font-weight:700;color:var(--fg-1);font-variant-numeric:tabular-nums}.iam-surface .impact-row .ir-val.zero{color:var(--fg-4);font-weight:600}.iam-surface .assign-editor{border:1px solid var(--brand-border);border-radius:var(--radius-md);background:var(--brand-soft);padding:12px 14px}.iam-surface .assign-editor.flush-x{margin:16px 16px 0}.iam-surface .ae-head{display:flex;align-items:baseline;gap:10px;margin-bottom:9px;flex-wrap:wrap}.iam-surface .ae-head label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--brand-fg)}.iam-surface .ae-head .ae-hint{font-size:11.5px;color:var(--fg-4)}.iam-surface .assign-field{position:relative}.iam-surface .assign-box{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:5px 7px;min-height:40px;border:1px solid var(--border-2);border-radius:var(--radius-sm);background:var(--bg-surface);cursor:text}.iam-surface .assign-box.focus{border-color:var(--focus-ring);box-shadow:var(--shadow-focus)}.iam-surface .assign-box input{flex:1;min-width:130px;border:0;outline:0;background:transparent;font-size:13.5px;color:var(--fg-1);padding:5px 3px}.iam-surface .ae-chip{display:inline-flex;align-items:center;gap:6px;background:var(--brand-soft);color:var(--brand-fg);border:1px solid var(--brand-border);border-radius:var(--radius-sm);padding:3px 5px 3px 9px;font-size:12px;font-weight:600;max-width:100%}.iam-surface .ae-chip .ae-chip-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:240px}.iam-surface .ae-chip.mono{font-family:var(--font-mono);font-weight:500}.iam-surface .ae-chip.warn{background:var(--warning-bg);color:var(--warning-fg);border-color:color-mix(in srgb,var(--warning) 34%,transparent)}.iam-surface .ae-chip.hi{background:var(--danger-bg);color:var(--danger-fg);border-color:color-mix(in srgb,var(--danger) 34%,transparent)}.iam-surface .ae-chip>i[data-icon]{width:12px;height:12px;flex:none}.iam-surface .ae-chip button{border:0;background:transparent;color:currentColor;cursor:pointer;display:inline-flex;padding:1px;border-radius:3px;opacity:.75;flex:none}.iam-surface .ae-chip button:hover{opacity:1;background:#0000000f}.iam-surface .ae-chip button i{width:13px;height:13px}.iam-surface .ae-pop{position:absolute;z-index:65;top:calc(100% + 4px);left:0;right:0;background:var(--bg-surface);border:1px solid var(--border-1);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);max-height:260px;overflow-y:auto;padding:4px}.iam-surface .ae-pop.inflow{position:static;z-index:auto;margin-top:6px;max-height:none;overflow:visible;box-shadow:none;background:var(--bg-subtle)}.iam-surface .ae-pop-foot{padding:7px 10px 3px;font-size:11px}.iam-surface .ae-chip:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.iam-surface .ae-chip:focus{outline:2px solid var(--focus-ring);outline-offset:1px}.iam-surface .ae-row{display:flex;align-items:center;gap:11px;padding:8px 10px;border-radius:var(--radius-sm);cursor:pointer}.iam-surface .ae-row.active{background:var(--brand-soft)}.iam-surface .ae-row.blocked{opacity:.5;cursor:not-allowed}.iam-surface .ae-tail{flex:none;display:flex;align-items:center;gap:7px;font-size:11px;color:var(--fg-3)}.iam-surface .ae-badge{font-size:10.5px;font-weight:700;letter-spacing:.03em;padding:2px 7px;border-radius:var(--radius-pill);white-space:nowrap}.iam-surface .ae-badge.added{background:var(--bg-subtle);color:var(--fg-3)}.iam-surface .ae-badge.warn{background:var(--warning-bg);color:var(--warning-fg)}.iam-surface .ae-badge.block{background:var(--danger-bg);color:var(--danger-fg)}.iam-surface .ae-dupe{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--warning-fg)}.iam-surface .ae-dupe i{width:13px;height:13px}.iam-surface .ae-hi-warn{margin-top:10px}.iam-surface .ae-hi-warn .banner{margin-bottom:0}.iam-surface .ae-actions{display:flex;align-items:center;gap:8px;margin-top:11px}.iam-surface .ae-actions .spacer{flex:1}@media (max-width: 640px){.iam-surface .assign-editor.flush-x{margin:14px 0 0}.iam-surface .ae-chip .ae-chip-label{max-width:150px}.iam-surface .ae-actions{flex-wrap:wrap}.iam-surface .ae-actions .spacer{display:none}.iam-surface .ae-actions .btn{flex:1 1 auto}}.iam-surface .muted{color:var(--fg-3)}.iam-surface .mono{font-family:var(--font-mono)}.iam-surface .nowrap{white-space:nowrap}.iam-surface .row-gap{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.iam-surface .stack-gap{display:flex;flex-direction:column;gap:10px}.iam-surface .divider{height:1px;background:var(--border-1);margin:16px 0}.iam-surface .text-right{text-align:right}.iam-surface .spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.iam-surface .dom-cards,.iam-surface .vp-mobile .dom-table-wrap{display:none}.iam-surface .vp-mobile .dom-cards{display:flex;flex-direction:column}.iam-surface .dom-card{padding:13px 14px;border-bottom:1px solid var(--border-1);cursor:pointer;background:var(--bg-surface)}.iam-surface .dom-card:last-child{border-bottom:0}.iam-surface .dom-card:active{background:var(--bg-subtle)}.iam-surface .dom-card-head{display:flex;align-items:center;gap:10px}.iam-surface .dom-card-id{flex:1;min-width:0}.iam-surface .dom-card-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.iam-surface .dom-card-alias{font-size:11.5px;color:var(--fg-3);margin-top:8px}.iam-surface .dom-card-actions{display:flex;gap:8px;margin-top:11px}.iam-surface .dom-card-actions .btn{flex:1 1 auto}.iam-surface .rail-mobile-head{display:none}.iam-surface .vp-mobile .rail-mobile-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-bottom:1px solid var(--border-1);background:var(--bg-subtle)}.iam-surface .vp-mobile .rml-ctx{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--fg-2)}.iam-surface .vp-mobile .rml-ctx i{width:14px;height:14px;color:var(--fg-3)}.iam-surface .vp-mobile .rml-sep{color:var(--border-2)}.iam-surface .vp-mobile .rml-close{width:30px;height:30px;flex:none;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-2);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--fg-2);cursor:pointer}.iam-surface .vp-mobile .rml-close i{width:16px;height:16px}.iam-surface .vp-toggle{display:inline-flex;background:var(--bg-subtle);border:1px solid var(--border-1);border-radius:var(--radius-sm);padding:2px;gap:2px}.iam-surface .vp-toggle button{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;font-size:12px;font-weight:600;color:var(--fg-3);padding:5px 10px;border-radius:5px;cursor:pointer;white-space:nowrap}.iam-surface .vp-toggle button.on{background:var(--bg-surface);color:var(--fg-1);box-shadow:var(--shadow-xs)}.iam-surface .vp-toggle button i{width:14px;height:14px}.iam-surface .vp-host.vp-mobile{background:#2a2f3a;min-height:100vh;padding:22px 0;display:flex;justify-content:center;align-items:flex-start}.iam-surface .vp-host.vp-mobile .vp-frame{width:390px;height:calc(100vh - 44px);max-height:880px;background:var(--bg-app);border-radius:22px;box-shadow:0 12px 48px #00000073;overflow:hidden;display:flex;flex-direction:column;position:relative;transform:translateZ(0)}.iam-surface .vp-host.vp-mobile .exp-shell{height:100%;background:var(--bg-app)}.iam-surface .vp-host.vp-mobile .exp-body,.iam-surface .vp-host.vp-mobile .exp-main{background:var(--bg-app)}.iam-surface .vp-host.vp-mobile .exp-body{overflow:visible;position:relative}.iam-surface .vp-host.vp-mobile .exp-main{overflow-y:auto;-webkit-overflow-scrolling:touch}.iam-surface .vp-frame-label{position:absolute;top:-18px;left:0;font-size:11px;font-weight:600;color:#cfd6e4}.iam-surface .vp-host.vp-desktop .vp-frame{width:100%}.iam-surface .vp-mobile .exp-icon-btn.mobile-only{display:flex}.iam-surface .vp-mobile .surface-tabs{display:none}.iam-surface .vp-mobile .exp-topbar{gap:8px}.iam-surface .vp-mobile .exp-brand .pw{white-space:nowrap}.iam-surface .vp-mobile .exp-brand .pw small{display:none}.iam-surface .vp-mobile .src-state{padding:0 9px}.iam-surface .vp-mobile .src-state .label-full,.iam-surface .vp-mobile .vp-toggle,.iam-surface .vp-mobile .ctx-banner{display:none}.iam-surface .vp-mobile .mobile-surface{display:flex;gap:4px;padding:8px 14px;border-bottom:1px solid var(--border-1);background:var(--bg-surface);overflow-x:auto}.iam-surface .vp-mobile .mobile-surface .surface-tab{flex:1;justify-content:center}.iam-surface .vp-mobile .exp-rail{position:absolute;inset:0 auto 0 0;z-index:60;width:250px;max-width:84%;transform:none;box-shadow:var(--shadow-lg);background:var(--bg-surface);border-right:1px solid var(--border-1);display:none}.iam-surface .vp-host.vp-mobile .exp-rail.open{display:flex!important;transform:none!important}.iam-surface .vp-mobile .exp-main{padding:16px}.iam-surface .vp-mobile .split,.iam-surface .vp-mobile .field-grid{grid-template-columns:1fr}.iam-surface .vp-mobile .drawer{width:100%}.iam-surface .vp-mobile .entity-head{gap:12px}.iam-surface .vp-mobile .entity-actions{width:100%}.iam-surface .vp-mobile .entity-actions .btn{flex:1 1 auto}.iam-surface .vp-mobile .page-head{flex-direction:column;gap:12px}.iam-surface .vp-mobile .page-actions{width:100%}.iam-surface .vp-mobile .page-actions .btn{flex:1 1 auto}.iam-surface .vp-mobile .stat-strip{flex-wrap:wrap}.iam-surface .vp-mobile .stat-cell{flex:1 1 50%;border-bottom:1px solid var(--border-1)}.iam-surface .vp-mobile .filter-bar{gap:6px}.iam-surface .vp-mobile .filter-bar .fb-select{flex:1 1 auto}.iam-surface .vp-mobile .ae-chip .ae-chip-label{max-width:150px}.iam-surface .vp-mobile .ae-actions{flex-wrap:wrap}.iam-surface .vp-mobile .ae-actions .spacer{display:none}.iam-surface .vp-mobile .ae-actions .btn{flex:1 1 auto}.iam-surface .vp-mobile .drawer-scrim{position:absolute}.iam-surface .vp-mobile .exp-scrim{position:absolute;inset:0;z-index:45}.iam-surface .vp-mobile .method-row{flex-wrap:wrap}.iam-surface .vp-mobile .method-row .m-icon{align-self:flex-start}.iam-surface .vp-mobile .method-row .m-action{width:100%;margin-top:4px}.iam-surface .vp-mobile .method-row .m-action .btn{width:100%}.iam-surface .vp-mobile .secret-row{flex-wrap:wrap}.iam-surface .vp-mobile .secret-row .copy-btn{width:100%}.iam-surface .vp-mobile .stat-cell{padding:11px 13px}.iam-surface .vp-mobile .profile-head{flex-direction:column;align-items:flex-start;gap:12px}.iam-surface .vp-mobile .drawer-foot{flex-wrap:wrap;gap:8px}.iam-surface .vp-mobile .drawer-foot .spacer{display:none}.iam-surface .vp-mobile .drawer-foot .btn{flex:1 1 auto}.iam-surface .vp-mobile .profile-head .avatar-lg{width:60px;height:60px;font-size:22px}.iam-surface .vp-mobile .health-grid{grid-template-columns:1fr}.iam-surface .vp-mobile .matrix-wrap,.iam-surface .vp-mobile .tabs{overflow-x:auto}.iam-surface,.iam-surface *,.iam-surface *:before,.iam-surface *:after{box-sizing:border-box}.iam-surface .method-list{list-style:none;margin:0;padding:0}.iam-surface .tl-meta .sep{color:var(--border-2)}@font-face{font-family:Manrope;font-style:normal;font-weight:400 700;font-display:swap;src:url("./media/manrope-latin-73PUZEUA.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500 700;font-display:swap;src:url("./media/space-grotesk-latin-LIGEH75C.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree;font-style:normal;font-weight:300 900;font-display:swap;src:url("./media/figtree-latin-SOXVSX3R.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree;font-style:italic;font-weight:300 900;font-display:swap;src:url("./media/figtree-latin-italic-2FMRTPHW.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 700;font-display:swap;src:url("./media/jetbrains-mono-latin-2TKUHYWA.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:italic;font-weight:400 700;font-display:swap;src:url("./media/jetbrains-mono-latin-italic-RPFIBFCG.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}app-document-viewer,app-folder-index{display:block;height:100%;min-height:0}.doc-content .dev-portal-home{display:grid;gap:28px;color:#172033}.doc-content .dev-portal-home,.doc-content .dev-portal-home *,.doc-content .dev-portal-api-landing,.doc-content .dev-portal-api-landing *{box-sizing:border-box}.doc-content .dev-portal-home-hero{display:grid;gap:16px;padding:30px 0 4px;border-bottom:1px solid #d8dde8}.doc-content .dev-portal-home-title{display:flex;align-items:center;gap:14px}.doc-content .dev-portal-home-kicker{margin:0 0 4px;color:#5b2dd8;font-size:.78rem;font-weight:800;text-transform:uppercase}.doc-content .dev-portal-home h1,.doc-content .dev-portal-home h2,.doc-content .dev-portal-home h3,.doc-content .dev-portal-home p{margin:0}.doc-content .dev-portal-home h1{font-size:2.1rem;line-height:1.1;letter-spacing:0}.doc-content .dev-portal-home-lead{max-width:760px;color:#475569;font-size:1rem;line-height:1.65}.doc-content .dev-portal-home-section,.portal-home-api-section,.doc-content .dev-portal-home-section-heading,.portal-home-section-heading{display:grid}.doc-content .dev-portal-home-section{gap:16px}.portal-home-api-section{gap:12px}.doc-content .dev-portal-home-section-heading,.portal-home-section-heading{gap:6px}.portal-home-section-heading{gap:4px}.doc-content .dev-portal-home-section-heading h2,.portal-home-section-heading h2{margin:0;color:#172033;font-size:1.2rem;letter-spacing:0}.portal-home-section-heading h2{font-size:1.1rem}.doc-content .dev-portal-home-section-heading p,.portal-home-section-heading p{margin:0;color:#64748b;font-size:.92rem}.portal-home-section-heading p{font-size:.88rem}.doc-content .dev-portal-api-grid,.portal-home-api-grid{display:grid;gap:10px}.doc-content .dev-portal-api-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.portal-home-api-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.doc-content .dev-portal-api-card,.portal-home-api-card{display:grid;gap:12px;border:1px solid #d8dde8;border-radius:8px;text-decoration:none}.doc-content .dev-portal-api-card{grid-template-columns:minmax(0,1fr);align-items:start;min-height:92px;padding:12px;background:#fff;color:inherit}.portal-home-api-card{grid-template-columns:24px minmax(0,1fr) auto;align-items:center;min-height:86px;width:100%;padding:13px;background:var(--surface);color:var(--text);text-align:left;cursor:pointer;box-shadow:none}.doc-content .dev-portal-api-card:hover,.doc-content .dev-portal-api-card:focus-visible,.portal-home-api-card:hover,.portal-home-api-card:focus-visible{border-color:#8a3cc9;outline:none}.home-api-icon{color:#5b2dd8;font-size:21px}.doc-content .dev-portal-api-card-meta{display:inline-flex;margin-bottom:4px;color:#6d28d9;font-size:.7rem;font-weight:800;line-height:1;text-transform:uppercase}.doc-content .dev-portal-api-card h3{color:#172033;font-size:.92rem;line-height:1.25;letter-spacing:0}.doc-content .dev-portal-api-card p{display:-webkit-box;margin-top:4px;overflow:hidden;color:#64748b;font-size:.78rem;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:3}.home-api-copy{display:grid;min-width:0;gap:4px}.home-api-copy strong,.home-api-copy span{overflow:hidden;text-overflow:ellipsis}.home-api-copy strong{color:#172033;font-size:.92rem}.home-api-copy span{display:-webkit-box;color:#64748b;font-size:.78rem;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}.home-api-count{min-width:26px;padding:3px 7px;border-radius:999px;background:#eef2ff;color:#4f46e5;font-size:.75rem;font-weight:800;text-align:center}.doc-content .dev-portal-api-landing{display:grid;gap:18px;color:#172033}.doc-content .dev-portal-api-landing-hero{display:grid;gap:9px;padding:16px 0 14px;border-bottom:1px solid #d8dde8}.doc-content .dev-portal-api-landing-hero h1{margin:0;color:#172033;font-size:1.75rem;line-height:1.1;letter-spacing:0}.doc-content .dev-portal-api-landing-hero p{max-width:760px;margin:0;color:#475569;font-size:.94rem;line-height:1.5}.doc-content .dev-portal-api-landing-summary{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.doc-content .dev-portal-api-landing-summary span{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border:1px solid #d8dde8;border-radius:999px;background:#f8fafc;color:#475569;font-size:.78rem;font-weight:700}.doc-content .ProseMirror .dev-portal-api-landing h1,.doc-content .ProseMirror .dev-portal-api-landing h2,.doc-content .ProseMirror .dev-portal-api-landing h3,.doc-content .ProseMirror .dev-portal-api-landing p{margin:0;letter-spacing:0}.doc-content .ProseMirror .dev-portal-api-landing-hero h1{color:#172033;font-size:1.75rem;line-height:1.1}.doc-content .ProseMirror .dev-portal-home-section-heading h2{color:#5b2dd8;font-size:1.15rem;line-height:1.2}.doc-content .ProseMirror .dev-portal-home-section-heading p{color:#64748b;font-size:.88rem;line-height:1.45}.doc-content .dev-portal-api-landing-empty{display:grid;justify-items:center;gap:8px;padding:26px;border:1px dashed #cbd5e1;border-radius:8px;background:#f8fafc;color:#64748b;text-align:center}.doc-content .legacy-client-home{position:relative;display:flex;min-height:calc(100vh - 116px);overflow:hidden;color:#14213d;background:#fff}.doc-content .legacy-client-home,.doc-content .legacy-client-home *{box-sizing:border-box}.doc-content .legacy-client-home-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center}.doc-content .legacy-client-home:before,.doc-content .legacy-client-home:after{content:"";position:absolute;right:0;left:0;z-index:1;pointer-events:none}.doc-content .legacy-client-home:before{top:0;height:20%;background:linear-gradient(to bottom,#ffffffe6,#fff0)}.doc-content .legacy-client-home:after{bottom:0;height:30%;background:linear-gradient(to top,#f6f8fcf5,#fff0)}.doc-content .legacy-client-home-content{position:relative;z-index:2;display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;width:100%;padding:30px}.doc-content .legacy-client-home-title{margin:25px 0 30px 10px;font-size:3.5rem;font-weight:800;line-height:1.75rem;color:#f8f8f8;text-shadow:3px 3px 5px rgba(0,0,0,.35)}.doc-content .legacy-client-home-primary{color:#5b2dd8}.doc-content .legacy-client-home-subtitle{margin-left:25px;color:#f8f8f8}.doc-content .legacy-client-home-card{width:min(650px,calc(100vw - 96px));padding:22px;border-radius:16px;background:#fffffff5;box-shadow:0 14px 34px #0f172a42}.doc-content .legacy-client-home-card-header{display:flex;align-items:center;gap:14px;margin-bottom:12px}.doc-content .legacy-client-home-logo{width:44px;height:44px;border-radius:50%;object-fit:contain}.doc-content .legacy-client-home-card h1{margin:0;font-size:1.25rem;color:#5b2dd8}.doc-content .legacy-client-home-card-header p{margin:3px 0 0;color:#4b5563}.doc-content .legacy-client-home-card hr{margin:16px;border:0;border-top:1px solid #d7deea}.doc-content .legacy-client-home-card h2{margin:16px 0 10px;font-size:1.2rem;color:#5b2dd8}.doc-content .legacy-client-home-lead{margin:0;font-size:1.2rem;line-height:1.8rem}.doc-content .legacy-client-home-list{display:grid;gap:8px;margin:14px 0 4px;padding:0;list-style:none}.doc-content .legacy-client-home-list li{display:flex;align-items:center;gap:12px;min-height:32px;font-size:1rem}.doc-content .legacy-client-home-list app-icon{color:#5b2dd8}@media (max-width: 900px){.doc-content .legacy-client-home-content{padding:24px 18px}.doc-content .legacy-client-home-title{font-size:2.4rem;line-height:1.2}.doc-content .legacy-client-home-subtitle{margin-left:0}.doc-content .legacy-client-home-card{width:min(650px,calc(100vw - 40px))}}.doc-viewer{display:flex;flex-direction:column;gap:20px;height:100%;min-height:0;overflow:hidden}.doc-shell{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:stretch;height:100%;min-height:0;overflow:hidden;background:var(--surface)}.doc-shell.inspector-open{grid-template-columns:minmax(0,1fr) 8px minmax(260px,var(--doc-inspector-width, 330px));gap:0}.doc-viewer.source-editing{height:calc(100% + var(--portal-content-bottom-padding, 40px))}.doc-viewer.focus-editing{gap:16px}.doc-main{display:flex;flex-direction:column;gap:18px;min-width:0;min-height:0;max-width:none;overflow:auto;padding-top:0;padding-right:var(--portal-scrollbar-safe-padding);padding-bottom:40px;scrollbar-gutter:stable;background:var(--surface)}.doc-main.full-width,.folder-main.full-width{max-width:none}.doc-shell.inspector-open .doc-main{grid-column:auto;max-width:none;padding-right:max(18px,var(--portal-scrollbar-safe-padding))}.doc-main.source-editing{overflow:auto;padding-bottom:24px}.doc-loading{display:flex;flex-direction:column;gap:12px}.doc-header-skeleton{height:36px;width:60%;background:var(--glass);border-radius:6px;animation:portal-surface-skeleton-pulse 1.2s ease-in-out infinite}.doc-content-skeleton{height:18px;background:var(--glass);border-radius:4px;animation:portal-surface-skeleton-pulse 1.2s ease-in-out infinite}.doc-content-skeleton.short{width:70%}@keyframes portal-surface-skeleton-pulse{0%,to{opacity:.4}50%{opacity:.8}}.doc-error,.doc-empty,.doc-inspector-empty,.folder-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:48px 24px;text-align:center}.doc-inspector-empty{padding:28px 16px;border:1px dashed var(--border);border-radius:12px;background:var(--panel)}.error-icon,.empty-icon,.doc-inspector-empty app-icon{font-size:2.5rem;color:var(--muted);opacity:.5}.doc-error h2,.doc-empty h2,.folder-empty h2{margin:0;font-family:var(--font-heading);font-size:1.05rem}.doc-error p,.doc-empty p,.folder-empty p{margin:0;font-size:.88rem}.doc-error .btn{margin-top:8px;display:inline-flex;align-items:center;gap:6px}.doc-error .btn app-icon{font-size:18px}.doc-header,.folder-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.doc-header-info,.folder-header-info{display:flex;flex-direction:column;gap:8px;min-width:0}.folder-meta,.doc-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.doc-save-state{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.doc-editor-mode-chip{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border:1px solid color-mix(in srgb,var(--accent) 26%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--accent) 7%,var(--surface));color:var(--text);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.folder-inspector-kicker,.folder-summary-label,.folder-detail-list dt,.doc-inspector-kicker,.doc-summary-label,.doc-detail-list dt{color:var(--muted);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.doc-save-state[data-state=saving]{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 28%,var(--border))}.doc-save-state[data-state=dirty]{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 32%,var(--border));background:color-mix(in srgb,var(--accent) 7%,var(--surface))}.doc-save-state[data-state=saved]{color:#2f9d57}.doc-save-state[data-state=error]{color:#d9605a}.folder-title{margin:0;font-family:var(--font-heading);font-size:1.5rem;font-weight:600;display:flex;align-items:center;gap:8px;line-height:1.3}.folder-title-icon{font-size:24px;color:var(--accent)}.doc-meta-item,.folder-meta-item{font-size:.8rem}.status-badge{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:2px 8px;border-radius:4px;white-space:nowrap}.status-badge.draft{background:#f1c36a2e;color:var(--accent-2)}.status-badge.archived{background:#a7afc624;color:var(--muted)}.doc-actions,.folder-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;flex-shrink:0}.doc-header>.doc-actions{margin-left:auto}.doc-action-btn,.doc-list-action,.doc-banner-btn,.folder-action-btn,.folder-list-action,.doc-upload-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:0 12px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;box-shadow:none;font:inherit;font-size:.82rem;font-weight:600}.doc-upload-btn{font-size:.8rem;white-space:nowrap}.doc-action-btn:hover:not(:disabled),.doc-list-action:hover:not(:disabled),.doc-banner-btn:hover:not(:disabled),.folder-item:hover{border-color:var(--accent);box-shadow:none;transform:none}.doc-action-btn.primary{border-color:#66e3ff47;background:#66e3ff14;color:var(--accent)}.doc-action-btn.secondary,.doc-banner-btn.secondary,.folder-action-btn.secondary{background:var(--surface-strong)}.doc-action-btn.icon-only,.folder-action-btn.icon-only{width:34px;padding:0}.doc-action-btn:disabled{opacity:.35;cursor:default}.doc-action-btn app-icon,.doc-banner-btn app-icon,.folder-menu-item app-icon,.doc-menu-item app-icon{font-size:18px;color:currentColor}.portal-tooltip{position:fixed;z-index:3000;max-width:min(260px,calc(100vw - 16px));padding:5px 8px;border-radius:4px;background:#20232a;color:#fff;font-size:.78rem;font-weight:600;line-height:1.3;opacity:0;pointer-events:none;transform:translateY(-2px);transition:opacity .12s ease,transform .12s ease;white-space:normal;box-shadow:0 6px 16px #141a2a2e}.portal-tooltip.visible{opacity:1;transform:translateY(0)}.doc-menu-anchor,.folder-menu-anchor{position:relative}.doc-menu,.folder-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:20;display:grid;min-width:220px;padding:8px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow);gap:2px}.doc-menu-item,.folder-menu-item{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 10px;border:none;border-radius:8px;background:transparent;color:var(--text);font:inherit;font-size:.82rem;cursor:pointer;text-align:left}.doc-menu-item:hover,.folder-menu-item:hover{background:var(--panel)}.doc-menu-item.destructive,.doc-list-action.destructive,.folder-menu-item.destructive{color:#d9605a}.doc-draft-banner,.doc-archive-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--surface) 92%,var(--accent) 8%)}.doc-archive-banner{border-color:color-mix(in srgb,#647085 28%,var(--border));background:color-mix(in srgb,var(--surface) 94%,#647085 6%)}.doc-draft-banner strong,.doc-archive-banner strong,.doc-draft-banner p,.doc-archive-banner p,.doc-section-toolbar h3,.doc-section-toolbar p,.doc-list-item strong,.doc-list-item p{margin:0}.doc-draft-banner p,.doc-archive-banner p{font-size:.8rem;line-height:1.5}.doc-draft-actions,.doc-list-actions{display:inline-flex;flex-wrap:wrap;gap:8px}.doc-list-actions{justify-content:flex-end}.doc-content{flex:0 0 auto;min-height:420px;border:0;border-radius:0;background:transparent;overflow:visible}.folder-empty,.folder-list{flex:0 0 auto}.doc-content .ProseMirror{font:400 .95rem/1.65 var(--font-body);color:var(--text);letter-spacing:0}.doc-content:not(.editing) .ProseMirror{padding:0}.doc-content .ProseMirror a{color:var(--accent-strong);font-weight:600;text-decoration:underline;text-underline-offset:2px}.doc-content .ProseMirror a:hover{color:var(--accent)}.doc-content .markdown-admonition{display:grid;gap:8px;margin:18px 0;padding:12px 14px;border:1px solid #c8d9f1;border-left:4px solid #3670b8;border-radius:6px;background:#f5f9ff;color:#1f334d}.doc-content .markdown-admonition-title{display:flex;align-items:center;gap:8px;color:#173a63}.doc-content .markdown-admonition-content>:first-child{margin-top:0}.doc-content .markdown-admonition-content>:last-child{margin-bottom:0}.doc-content .markdown-admonition-warning{border-color:#ebd3a4;border-left-color:#a96713;background:#fff9ec;color:#523710}.doc-content .markdown-admonition-warning .markdown-admonition-title{color:#6d4208}.doc-content .markdown-admonition-alert{border-color:#efc0bb;border-left-color:#b94d45;background:#fff5f4;color:#5b2522}.doc-content .markdown-admonition-alert .markdown-admonition-title{color:#7c2e29}.doc-content .markdown-admonition-check{border-color:#bddfc6;border-left-color:#33834d;background:#f3fbf5;color:#173f25}.doc-content .markdown-admonition-check .markdown-admonition-title{color:#23643a}.doc-content .ProseMirror h1,.doc-content .ProseMirror h2,.doc-content .ProseMirror h3{color:var(--accent);font-family:var(--font-heading);font-weight:700;letter-spacing:0}.doc-content .ProseMirror h1{margin:0 0 18px;font-size:1.8rem;line-height:1.25}.doc-content .ProseMirror h2{margin:30px 0 14px;font-size:1.45rem;line-height:1.3}.doc-content .ProseMirror h3{margin:24px 0 12px;font-size:1.16rem;line-height:1.35}.doc-content .ProseMirror p{margin:0 0 12px}.doc-content .ProseMirror table{width:100%;margin:14px 0 24px;border-collapse:collapse}.doc-content .ProseMirror th,.doc-content .ProseMirror td{padding:3px 10px;border:1px solid var(--border);line-height:1.26;vertical-align:top}.doc-main.visual-editing .doc-content.editing{border:0;border-radius:0;background:transparent}.doc-main.visual-editing .doc-content.editing .ProseMirror{min-height:460px;padding:4px 0 28px}.doc-main.focus-editing .doc-content,.doc-main.focus-editing .doc-source-editor,.doc-main.focus-editing .doc-preview-panel{min-width:0}.doc-main.focus-editing .doc-preview-full .ProseMirror{padding:0 0 28px}.doc-inspector-resize-handle{position:relative;grid-column:2;align-self:stretch;width:8px;height:100%;cursor:col-resize;touch-action:none}.doc-inspector-resize-handle:after{content:"";position:absolute;top:0;bottom:0;left:3px;width:2px;border-radius:999px;background:var(--border)}.doc-inspector-resize-handle:hover:after,.doc-inspector-resize-handle:focus-visible:after,.doc-shell.resizing-inspector .doc-inspector-resize-handle:after{background:#8a3cc9}.doc-inspector-resize-handle:focus-visible{outline:none}.doc-shell.resizing-inspector{-webkit-user-select:none;user-select:none}.doc-inspector,.folder-inspector{position:relative;display:flex;flex-direction:column;gap:14px;height:100%;min-height:0;max-height:none;overflow:auto;padding:0 var(--portal-scrollbar-safe-padding) 40px 18px;scrollbar-gutter:stable;border:0;border-radius:0;background:var(--surface);box-shadow:none}.doc-inspector-header,.folder-inspector-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.doc-inspector-header h2,.folder-inspector-header h2{margin:0;font-family:var(--font-heading);font-size:1rem}.doc-inspector-close,.folder-inspector-close{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}.doc-inspector-tabs,.folder-inspector-tabs{display:flex;flex-wrap:wrap;gap:4px}.doc-inspector-tab,.folder-inspector-tab{display:inline-flex;align-items:center;justify-content:center;width:34px;min-width:34px;height:34px;padding:0;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--muted);font:inherit;cursor:pointer}.folder-inspector-tab{width:auto;min-width:64px;padding:0 10px;font-size:.78rem;font-weight:700}.doc-inspector-tab app-icon,.folder-inspector-tab app-icon{font-size:18px}.doc-inspector-tab.active,.folder-inspector-tab.active{background:var(--panel);color:var(--text);border-color:color-mix(in srgb,var(--accent) 24%,var(--border))}.doc-toc-list{display:grid;gap:2px}.doc-toc-item{display:block;width:100%;min-height:26px;padding:3px 8px;border:0;background:transparent;color:var(--text);font:inherit;font-size:.84rem;line-height:1.25;text-align:left;text-decoration:none;cursor:pointer;box-shadow:none}.doc-toc-item:hover,.doc-toc-item:focus-visible{background:var(--panel);outline:none;transform:none}.doc-toc-item.active{background:var(--panel);color:var(--accent)}.doc-toc-item.level-1{padding-left:8px;font-weight:700;color:var(--accent)}.doc-toc-item.level-2{padding-left:20px}.doc-toc-item.level-3{padding-left:32px;color:var(--muted)}.doc-inspector-section,.folder-inspector-section,.doc-list{display:grid;gap:14px}.doc-inspector-section,.folder-inspector-section{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.doc-summary-grid,.folder-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.doc-summary-card,.folder-summary-card{display:grid;gap:4px;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel)}.doc-summary-card strong{font-size:.9rem}.doc-detail-list,.folder-detail-list{display:grid;gap:12px;margin:0}.doc-detail-list div,.folder-detail-list div{display:grid;gap:4px;padding-bottom:12px;border-bottom:1px solid var(--border)}.doc-detail-list div:last-child,.folder-detail-list div:last-child{padding-bottom:0;border-bottom:none}.doc-detail-list dd,.folder-detail-list dd{margin:0;font-size:.84rem;line-height:1.5;word-break:break-word}.doc-section-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.doc-section-toolbar h3{font-size:.92rem}.doc-section-toolbar p,.doc-list-item p{font-size:.8rem;line-height:1.5}.doc-upload-btn input{display:none}.doc-list-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel)}.doc-subview{display:grid;gap:18px;min-height:420px}.doc-subview-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:14px;border-bottom:1px solid var(--border)}.doc-subview-header h2,.doc-subview-header p{margin:0}.doc-subview-header h2{color:var(--text);font-family:var(--font-heading);font-size:1.45rem;letter-spacing:0}.doc-subview-kicker{margin:0 0 4px;color:var(--accent-strong);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.doc-attachment-dropzone{display:flex;align-items:center;gap:14px;min-height:82px;padding:16px;border:1px dashed var(--border);border-radius:8px;background:var(--panel)}.doc-attachment-dropzone.active{border-color:var(--accent);background:color-mix(in srgb,var(--surface) 88%,var(--accent) 12%)}.doc-attachment-dropzone app-icon{color:var(--accent);font-size:28px}.doc-attachment-upload-list{display:grid;gap:8px}.doc-attachment-upload-item{display:grid;gap:8px;padding:12px 14px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.doc-attachment-upload-item.complete{border-color:color-mix(in srgb,var(--success, #178045) 45%,var(--border));background:color-mix(in srgb,var(--surface) 88%,var(--success-bg, #eaf7ef) 12%)}.doc-attachment-upload-item.error{border-color:color-mix(in srgb,var(--danger, #b32c2c) 48%,var(--border));background:color-mix(in srgb,var(--surface) 88%,var(--danger-bg, #fcecec) 12%)}.doc-attachment-upload-main{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:10px}.doc-attachment-upload-main app-icon{color:var(--accent)}.doc-attachment-upload-item.complete .doc-attachment-upload-main app-icon{color:var(--success, #178045)}.doc-attachment-upload-item.error .doc-attachment-upload-main app-icon{color:var(--danger, #b32c2c)}.doc-attachment-upload-main strong,.doc-attachment-upload-main p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-attachment-progress{position:relative;height:8px;overflow:hidden;border-radius:999px;background:var(--bg-alt)}.doc-attachment-progress span{display:block;width:0;height:100%;border-radius:inherit;background:var(--accent);transition:width .18s ease}.doc-attachment-upload-item.complete .doc-attachment-progress span{background:var(--success, #178045)}.doc-attachment-upload-item.error .doc-attachment-progress span{background:var(--danger, #b32c2c)}.doc-attachment-progress.indeterminate span{width:36%;animation:doc-attachment-upload-indeterminate 1.2s ease-in-out infinite}@keyframes doc-attachment-upload-indeterminate{0%{transform:translate(-120%)}to{transform:translate(280%)}}.doc-attachment-grid{display:grid;gap:10px}.doc-attachment-card{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.doc-attachment-card-main{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:12px;min-width:0}.doc-attachment-card-main strong,.doc-attachment-card-main p{margin:0;overflow:hidden;text-overflow:ellipsis}.doc-attachment-icon{color:var(--accent);font-size:24px}.doc-version-list{display:grid;gap:8px}.doc-version-item{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:6px;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.doc-version-item.active{border-color:color-mix(in srgb,var(--accent) 36%,var(--border));background:color-mix(in srgb,var(--surface) 92%,var(--accent) 8%)}.doc-version-select{display:grid;gap:3px;min-width:0;padding:0;border:0;background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.doc-version-select span{overflow:hidden;color:var(--muted);font-size:.78rem;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.doc-version-menu-anchor{position:relative}.doc-version-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:30;display:grid;min-width:178px;padding:8px;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow)}.doc-history-selected-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.doc-history-selected-header h3,.doc-history-selected-header p{margin:0}.doc-version-comment{margin:0;padding:12px 14px;border-left:4px solid var(--accent);background:var(--panel);color:var(--text)}.doc-version-preview{min-height:0}.doc-diff{display:grid;overflow:auto;scrollbar-gutter:stable;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.doc-diff-row{display:grid;grid-template-columns:52px 52px minmax(0,1fr);gap:8px;min-height:26px;padding:3px 10px;border-bottom:1px solid color-mix(in srgb,var(--border) 55%,transparent);font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace);font-size:.82rem}.doc-diff-row:last-child{border-bottom:0}.doc-diff-row.added{background:#2f9d571f}.doc-diff-row.removed{background:#d9605a1f}.doc-diff-line{color:var(--muted);text-align:right;-webkit-user-select:none;user-select:none}.doc-diff code{overflow:hidden;color:var(--text);text-overflow:ellipsis;white-space:pre}.doc-publish-comment{display:grid;gap:8px;color:var(--text);font-size:.84rem;font-weight:700}.doc-publish-comment textarea{box-sizing:border-box;width:100%;resize:vertical;min-height:96px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-strong);color:var(--text);font:inherit;font-weight:500}.folder-index{display:flex;flex-direction:column;gap:20px;min-height:0;height:100%;overflow:hidden}.folder-shell{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:stretch;height:100%;min-height:0;overflow:hidden}.folder-shell.inspector-open{grid-template-columns:minmax(0,1fr) minmax(300px,360px)}.folder-main{display:flex;flex-direction:column;gap:18px;min-width:0;min-height:0;max-width:960px;overflow:auto;padding-top:0;padding-right:var(--portal-scrollbar-safe-padding);padding-bottom:40px;scrollbar-gutter:stable}.folder-shell.inspector-open .folder-main{grid-column:auto;max-width:none}.folder-loading{display:flex;flex-direction:column;gap:8px}.folder-item-skeleton{height:56px;background:var(--glass);border-radius:var(--radius-sm);animation:portal-surface-skeleton-pulse 1.2s ease-in-out infinite}.folder-list{display:flex;flex-direction:column;gap:4px}.folder-item{display:flex;align-items:center;gap:14px;padding:14px 18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease;text-align:left;width:100%;font-family:var(--font);color:var(--text);box-shadow:none}.folder-item:hover{box-shadow:0 2px 12px #66e3ff0f}.folder-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.folder-item.draft{opacity:.6;border-style:dashed}.folder-item-icon{font-size:22px;color:var(--accent);flex-shrink:0}.folder-item-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.folder-item-name{font-size:.92rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.folder-item-meta{font-size:.78rem;display:flex;align-items:center;gap:6px}.inline-badge{font-size:.6rem;font-weight:700;text-transform:uppercase;padding:1px 5px;border-radius:3px}.inline-badge.draft{background:#f1c36a2e;color:var(--accent-2)}.folder-item-arrow{font-size:20px;color:var(--muted);flex-shrink:0;transition:color .12s ease}.folder-item:hover .folder-item-arrow{color:var(--accent)}[data-theme=light] .doc-action-btn,[data-theme=light] .doc-list-action,[data-theme=light] .doc-banner-btn,[data-theme=light] .doc-upload-btn,[data-theme=light] .doc-save-state{background:#fffffff5;color:#1a1d2e;border-color:#3c46642e}[data-theme=light] .doc-action-btn.secondary,[data-theme=light] .doc-banner-btn.secondary{background:#f0f3faf0;color:#1a1d2e}[data-theme=light] .doc-action-btn.primary{background:var(--cs-color-brand-soft, #ede8ff);color:var(--cs-color-brand, #5b2bbf);border-color:#5b2bbf3d}@media (max-width: 900px){.doc-shell.inspector-open,.folder-shell.inspector-open{grid-template-columns:minmax(0,1fr)}.doc-viewer,.doc-viewer.source-editing,.folder-index,app-document-viewer,app-folder-index,.doc-shell,.folder-shell{height:auto;overflow:visible}.doc-main,.folder-main{overflow:visible;padding-top:0;padding-bottom:0}.doc-width-toggle,.folder-width-toggle{display:none}.doc-inspector,.folder-inspector{position:static;height:auto;max-height:none;padding:0}.doc-inspector-resize-handle{display:none}}@media (max-width: 720px){.doc-header,.doc-draft-banner,.doc-archive-banner,.doc-section-toolbar,.doc-list-item,.doc-subview-header,.doc-attachment-card,.doc-history-selected-header,.folder-header,.folder-item{flex-direction:column;align-items:stretch}.doc-actions,.doc-draft-actions,.doc-list-actions,.folder-actions{justify-content:flex-start}.doc-header>.doc-actions{margin-left:0}.doc-summary-grid,.folder-summary-grid{grid-template-columns:1fr}.doc-diff-row{grid-template-columns:36px 36px minmax(0,1fr);padding-inline:6px}}.api-console-grid,.api-websocket-controls,.operation-console-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;align-items:end}.api-console-status{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border:1px solid var(--border);border-radius:999px;background:var(--panel);color:var(--muted);font-size:.72rem;font-weight:700}.api-console-status.logged-in{border-color:color-mix(in srgb,#1f8a70 46%,var(--border));background:color-mix(in srgb,#1f8a70 12%,var(--surface));color:#1f6f5b}.server-selector,.api-token-field,.api-websocket-message,.operation-console-field{display:grid;gap:6px;min-width:0;color:var(--muted);font-size:.75rem;font-weight:700}.server-selector select,.api-token-field input,.api-websocket-message input,.operation-console-field input,.operation-console-field select,.operation-console-field textarea{width:100%;min-height:36px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font:inherit;font-size:.82rem}.operation-console-field textarea{min-height:132px;resize:vertical;font-family:var(--font-mono, monospace);line-height:1.45}.server-url{overflow:hidden;display:block;padding:8px 10px;border:1px solid var(--border);border-radius:8px;color:var(--text);text-overflow:ellipsis;white-space:nowrap}.api-console-actions,.operation-console-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.api-console-note{margin:10px 0 0;font-size:.78rem}.api-websocket{display:grid;gap:12px}.api-websocket-toggle{display:inline-flex;align-items:center;gap:8px;min-height:36px;color:var(--muted);font-size:.8rem;font-weight:700}.api-websocket-reconnect{display:inline-flex;align-items:center;min-height:36px;color:var(--muted);font-size:.78rem;font-weight:700}.api-websocket-log{display:grid;gap:8px;max-height:240px;overflow:auto;padding:10px var(--portal-scrollbar-safe-padding) 10px 10px;scrollbar-gutter:stable;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.api-websocket-entry{display:grid;grid-template-columns:74px 82px minmax(0,1fr);gap:8px;align-items:start;font-size:.78rem}.api-websocket-entry.expanded{padding-bottom:8px;border-bottom:1px solid var(--border)}.api-websocket-entry span,.api-websocket-entry strong{color:var(--muted);font-size:.72rem;text-transform:uppercase}.api-websocket-entry code,.operation-console-result code{overflow-wrap:anywhere;white-space:normal}.api-websocket-message-body{display:grid;gap:6px;min-width:0}.api-websocket-expand{justify-self:start;padding:0;border:0;background:transparent;color:var(--accent);font:inherit;font-size:.74rem;font-weight:700;cursor:pointer}.api-websocket-message-body pre{max-height:180px;overflow:auto;margin:0;padding:10px var(--portal-scrollbar-safe-padding) 10px 10px;scrollbar-gutter:stable;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);white-space:pre-wrap}.api-schema-list{display:grid;gap:8px}.api-schema-card{border:1px solid var(--border);border-radius:8px;background:var(--surface)}.api-schema-toggle{display:grid;grid-template-columns:22px minmax(110px,.32fr) minmax(0,1fr);gap:8px;align-items:center;width:100%;padding:10px 12px;border:0;background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.api-schema-toggle app-icon{color:var(--muted);font-size:20px}.api-schema-toggle code{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.api-schema-properties{display:grid;gap:8px;padding:0 12px 12px 42px}.api-schema-property{display:grid;gap:4px;min-width:0;padding:8px 0;border-top:1px solid var(--border);font-size:.82rem}.api-schema-property div{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.api-schema-property-children{display:grid;gap:6px;padding-left:14px;border-left:2px solid color-mix(in srgb,var(--accent) 28%,var(--border))}.api-schema-property.child{padding:6px 0;border-top:0}.operation-console{display:grid;gap:12px;padding:12px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--surface) 94%,var(--accent) 6%)}.operation-console-head,.operation-console-result-head{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}.operation-console-head h4{margin:0}.operation-console-field span{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.operation-console-field strong{color:#b76000;font-size:.68rem;text-transform:uppercase}.operation-console-body{display:grid;gap:10px}.operation-console-error{margin:0;color:#b42318;font-size:.82rem;font-weight:700}.operation-console-result{display:grid;gap:8px;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.operation-console-result strong{color:#b42318;font-size:.78rem}.operation-console-result strong.success{color:#1f6f5b}.operation-console-result pre{max-height:220px;overflow:auto;margin:0;padding:10px var(--portal-scrollbar-safe-padding) 10px 10px;scrollbar-gutter:stable;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--text);white-space:pre-wrap}.doc-content .ProseMirror .apihome,.doc-content .ProseMirror .apihome *{box-sizing:border-box}.doc-content .ProseMirror .a1{display:grid;gap:40px;padding:8px 0 44px;font-family:var(--font-body, inherit);color:#1a2233}.doc-content .ProseMirror .a1 .a1-hero{display:grid;gap:18px;max-width:720px;padding:24px 0 6px}.doc-content .ProseMirror .a1 .a1-eyebrow{margin:0;font-size:.78rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#6b3df0}.doc-content .ProseMirror .a1 .a1-title{margin:0;font-family:var(--font-heading, inherit);font-weight:700;font-size:3rem;line-height:1.04;letter-spacing:-.02em;color:#11152a}.doc-content .ProseMirror .a1 .a1-sub{margin:0;font-size:1.1rem;line-height:1.6;color:#55607a;max-width:600px}.doc-content .ProseMirror .a1 .a1-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px}.doc-content .ProseMirror .a1 .a1-btn{display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 22px;border-radius:10px;font-weight:650;font-size:.96rem;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,color .15s ease}.doc-content .ProseMirror .a1 .a1-btn app-icon{font-size:19px}.doc-content .ProseMirror .a1 .a1-btn-primary{background:#5b2bbf;color:#fff;box-shadow:0 8px 20px #5b2bbf42}.doc-content .ProseMirror .a1 .a1-btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 26px #5b2bbf57}.doc-content .ProseMirror .a1 .a1-btn-ghost{background:#fff;color:#3a2b66;border:1px solid #e0e2ee}.doc-content .ProseMirror .a1 .a1-btn-ghost:hover{border-color:#5b2bbf;color:#5b2bbf}.doc-content .ProseMirror .a1 .a1-section{display:grid;gap:18px;border:0;background:transparent;padding:0;box-shadow:none;border-radius:0}.doc-content .ProseMirror .a1 .a1-sechead h2{margin:0 0 4px;font-family:var(--font-heading, inherit);font-size:1.35rem;font-weight:700;letter-spacing:-.01em;color:#11152a}.doc-content .ProseMirror .a1 .a1-sechead p{margin:0;color:#6a7390;font-size:.96rem}.doc-content .ProseMirror .a1 .a1-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(264px,1fr));gap:14px}.doc-content .ProseMirror .a1 .a1-card{position:relative;display:grid;gap:10px;padding:22px;border:1px solid #e7e9f2;border-radius:16px;background:#fff;text-decoration:none;color:inherit;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.doc-content .ProseMirror .a1 .a1-card:hover{border-color:#c9b8f5;box-shadow:0 14px 30px #1811361a;transform:translateY(-3px)}.doc-content .ProseMirror .a1 .a1-ic{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:#efe9ff;color:#5b2bbf;font-size:24px}.doc-content .ProseMirror .a1 .a1-meta{font-size:.67rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:#8a78c9}.doc-content .ProseMirror .a1 .a1-card h3{margin:0;font-family:var(--font-heading, inherit);font-size:1.08rem;font-weight:700;color:#13182b}.doc-content .ProseMirror .a1 .a1-card p{margin:0;font-size:.9rem;line-height:1.5;color:#5b6577}.doc-content .ProseMirror .a1 .a1-arrow{position:absolute;top:20px;right:18px;color:#c2c7d6;font-size:20px;transition:transform .16s ease,color .16s ease}.doc-content .ProseMirror .a1 .a1-card:hover .a1-arrow{color:#5b2bbf;transform:translate(3px,-3px)}.doc-content .ProseMirror .a1 .a1-foot{display:flex;align-items:center;gap:9px;margin:4px 0 0;padding:16px 0 0;border-top:1px solid #e7e9f2;color:#6a7390;font-size:.9rem}.doc-content .ProseMirror .a1 .a1-foot app-icon{font-size:19px;color:#8a78c9}.doc-content .ProseMirror .a1 .a1-foot a{color:#5b2bbf;font-weight:650;text-decoration:none}.doc-content .ProseMirror .a1 .a1-foot a:hover{text-decoration:underline}.doc-content .ProseMirror .af{gap:24px}.doc-content .ProseMirror .af .af-head{display:grid;gap:10px;padding:22px 0 4px}.doc-content .ProseMirror .af .af-title{margin:0;font-family:var(--font-heading, inherit);font-weight:700;font-size:2rem;letter-spacing:-.01em;color:#11152a}.doc-content .ProseMirror .af .af-intro{margin:0;max-width:680px;font-size:1.02rem;line-height:1.55;color:#55607a}@media (max-width: 760px){.doc-content .ProseMirror .a1 .a1-title{font-size:2.3rem}.doc-content .ProseMirror .af .af-title{font-size:1.7rem}}:root{color-scheme:light;--bg: var(--cs-color-canvas, #f7f9fc);--bg-alt: #e9ecf4;--surface: rgba(255, 255, 255, .94);--surface-solid: #ffffff;--surface-strong: rgba(255, 255, 255, .98);--panel: rgba(255, 255, 255, .72);--panel-strong: rgba(240, 243, 250, .94);--glass: rgba(23, 32, 51, .05);--text: var(--cs-color-ink, #172033);--muted: var(--cs-color-slate, #4a5568);--accent: var(--cs-color-brand, #5b2bbf);--accent-2: #9a5b00;--accent-3: var(--cs-color-brand-strong, #431899);--syntax-text: #1f2937;--syntax-keyword: #7c3aed;--syntax-string: #0f766e;--syntax-attribute: #1d4ed8;--syntax-number: #b45309;--syntax-meta: #9333ea;--syntax-title: #b91c1c;--syntax-comment: #64748b;--syntax-punctuation: #475569;--portal-diff-line-text: #172033;--portal-diff-insert-bg: #dff5eb;--portal-diff-delete-bg: #fde8e8;--portal-diff-insert-token-bg: #bfead8;--portal-diff-delete-token-bg: #f6caca;--border: var(--cs-color-border, #d8dee8);--shadow: 0 10px 26px rgba(15, 23, 42, .08);--menu-bg: var(--cs-color-surface, #ffffff);--menu-text: var(--cs-color-ink, #172033);--menu-border: var(--cs-color-border, #d8dee8);--menu-hover: #f3f4f6;--menu-icon: var(--cs-color-slate, #4a5568);--menu-shadow: 0 12px 28px rgba(15, 23, 42, .18);--input-bg: var(--surface-strong);--hover: var(--menu-hover);--accent-muted: color-mix(in srgb, var(--accent) 12%, transparent);--nav-hover: color-mix(in srgb, var(--accent) 7%, transparent);--nav-active: var(--accent-muted);--nav-active-border: color-mix(in srgb, var(--accent) 28%, transparent);--radius: var(--cs-radius-panel, 8px);--radius-sm: var(--cs-radius-control, 6px);--font-body: var(--cs-font-family, "Manrope", "Segoe UI", sans-serif);--font-heading: var(--cs-font-family, "Space Grotesk", "Manrope", "Segoe UI", sans-serif);--font: var(--font-body);--portal-scrollbar-safe-padding: 16px}[data-theme=dark]{color-scheme:dark;--bg: #0b0f1c;--bg-alt: #12172a;--surface: rgba(16, 20, 34, .9);--surface-solid: #101422;--surface-strong: rgba(22, 28, 46, .95);--panel: rgba(18, 23, 38, .82);--panel-strong: rgba(28, 35, 56, .92);--glass: rgba(255, 255, 255, .08);--text: var(--cs-color-ink, #eef1f9);--muted: var(--cs-color-slate, #a7afc6);--accent: var(--cs-color-brand, #ad6fdd);--accent-2: #f1c36a;--accent-3: var(--cs-color-brand-strong, #e4caf5);--syntax-text: #e5e7eb;--syntax-keyword: #c4b5fd;--syntax-string: #5eead4;--syntax-attribute: #93c5fd;--syntax-number: #fbbf24;--syntax-meta: #f0abfc;--syntax-title: #fca5a5;--syntax-comment: #94a3b8;--syntax-punctuation: #cbd5e1;--portal-diff-line-text: #132018;--portal-diff-insert-bg: #bfead8;--portal-diff-delete-bg: #f6caca;--portal-diff-insert-token-bg: #8fd8b9;--portal-diff-delete-token-bg: #eea5a5;--border: var(--cs-color-border, #667085);--shadow: 0 22px 52px rgba(5, 9, 22, .45);--menu-bg: #141a2a;--menu-text: #eef1f9;--menu-border: rgba(130, 140, 170, .22);--menu-hover: rgba(255, 255, 255, .08);--menu-icon: #a7afc6;--menu-shadow: 0 18px 48px rgba(3, 8, 20, .38);--input-bg: var(--surface-strong);--hover: var(--menu-hover);--accent-muted: color-mix(in srgb, var(--accent) 18%, transparent);--nav-hover: color-mix(in srgb, var(--accent) 11%, transparent);--nav-active: var(--accent-muted);--nav-active-border: color-mix(in srgb, var(--accent) 32%, transparent)}[data-theme=light]{color-scheme:light;--bg: var(--cs-color-canvas, #f7f9fc);--bg-alt: #e9ecf4;--surface: rgba(255, 255, 255, .92);--surface-solid: #ffffff;--surface-strong: rgba(245, 247, 252, .95);--panel: rgba(255, 255, 255, .85);--panel-strong: rgba(240, 243, 250, .94);--glass: rgba(0, 0, 0, .05);--text: var(--cs-color-ink, #172033);--muted: var(--cs-color-slate, #4a5568);--accent: var(--cs-color-brand, #5b2bbf);--accent-2: #9a5b00;--accent-3: var(--cs-color-brand-strong, #431899);--border: var(--cs-color-border, #d8dee8);--shadow: 0 8px 32px rgba(60, 70, 100, .1);--menu-bg: var(--cs-color-surface, #ffffff);--menu-text: var(--cs-color-ink, #172033);--menu-border: var(--cs-color-border, #d8dee8);--menu-hover: #f3f4f6;--menu-icon: var(--cs-color-slate, #4a5568);--menu-shadow: 0 12px 28px rgba(15, 23, 42, .18);--input-bg: var(--surface-strong);--hover: var(--menu-hover);--accent-muted: color-mix(in srgb, var(--accent) 12%, transparent);--nav-hover: color-mix(in srgb, var(--accent) 7%, transparent);--nav-active: var(--accent-muted);--nav-active-border: color-mix(in srgb, var(--accent) 28%, transparent)}html,body{margin:0;padding:0;font-family:var(--font);background:var(--cs-color-canvas, #f7f9fc);color:var(--text);min-height:100%}[data-theme=dark] body{background:radial-gradient(circle at top left,#1d2340,#11142a,#0a0c18)}[data-theme=light] body{background:var(--cs-color-canvas, #f7f9fc)}[data-theme=light] .topbar{background:var(--surface-solid, #fff)}[data-theme=dark] .topbar{background:#0a0c18d1}[data-theme=light] .btn,[data-theme=light] button.btn{background:linear-gradient(135deg,var(--cs-color-brand, #5b2bbf) 0%,var(--cs-color-brand-strong, #431899) 100%);color:#fff;box-shadow:0 4px 14px #5b2bbf2e}[data-theme=light] .btn:hover,[data-theme=light] button.btn:hover{box-shadow:0 6px 18px #5b2bbf3d}[data-theme=light] .btn.ghost{background:transparent;color:var(--text);box-shadow:none}[data-theme=light] .btn.ghost:hover{box-shadow:none}[data-theme=light] .table-sort{background:transparent;box-shadow:none;color:var(--text)}[data-theme=light] .table-sort:hover{box-shadow:none}[data-theme=light] .table-sort.sort-active{color:var(--accent)}[data-theme=light] .tab{background:transparent;box-shadow:none}[data-theme=light] .tab:hover{box-shadow:none}[data-theme=light] input,[data-theme=light] textarea,[data-theme=light] select{background:#ffffffe6;border-color:var(--border);color:var(--text)}[data-theme=light] input::placeholder,[data-theme=light] textarea::placeholder{color:#5a617899}[data-theme=light] .icon-button{background:#ffffffb3}[data-theme=light] .data-table thead th{background:#f0f3faf2}[data-theme=light] .data-table tbody tr:hover{background:#f0f3fa99}[data-theme=light] .list-row{background:#ffffffa6}[data-theme=light] .suggestion{background:#fff9}[data-theme=light] .table-wrap{background:#ffffffb3}[data-theme=light] .column-picker-menu{background:#fffffff5}[data-theme=light] .checkbox input{background:#ffffffe6;accent-color:var(--cs-color-brand, #5b2bbf)}[data-theme=light] .panel-actions .action{background:#fff9}[data-theme=light] .audit-card{background:#f5f7fccc}[data-theme=light] .pill{background:var(--cs-color-brand-soft, #ede8ff);color:var(--accent)}[data-theme=light] .skip-link{background:var(--accent);color:#fff}[data-theme=light] .form-error{color:#c0392b;background:#c0392b14;border-color:#c0392b4d}.top-icon-button,.account-action{display:inline-flex;align-items:center;justify-content:center;width:36px;min-width:36px;height:36px;padding:0;border:1px solid var(--border);border-radius:8px;background:var(--surface-strong);color:var(--text);font:inherit;box-shadow:none}.top-icon-button{border-color:transparent;background:transparent}.top-icon-button:hover,.top-icon-button[aria-expanded=true],.top-icon-button:focus-visible{outline:none;background:var(--panel-strong);border-color:var(--border);box-shadow:none;transform:none}.account-action:hover{background:var(--panel-strong);border-color:var(--border);box-shadow:none;transform:none}.account-action:focus-visible{outline:none;background:var(--panel-strong);border-color:#9aa4b2;box-shadow:none}.top-icon-button app-icon{font-size:19px;color:var(--muted)}.top-icon-button:hover app-icon{color:var(--text)}.account-action{border-radius:999px}.account-action-initials{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--accent);color:#fff;font-size:.7rem}.top-menu-anchor{position:relative;display:inline-flex}.top-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:40;display:grid;min-width:238px;padding:7px;border:1px solid var(--menu-border);border-radius:8px;background:var(--menu-bg);color:var(--menu-text);box-shadow:var(--menu-shadow);gap:2px}.switch-menu{min-width:282px}.topbar-leading .top-menu{left:0;right:auto}.topbar-leading .top-submenu-panel{left:calc(100% + 8px);right:auto}.account-menu{min-width:226px}.top-menu-item{display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:34px;width:100%;padding:0 9px;border:0;border-radius:6px;background:transparent;color:var(--menu-text);font:inherit;font-size:.82rem;font-weight:600;text-align:left;box-shadow:none;overflow:hidden;white-space:nowrap}.top-menu-item:hover,.top-menu-item.active{background:var(--menu-hover);color:var(--text);box-shadow:none;transform:none}.top-menu-item.destructive{color:#b83232}.top-menu-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-menu-item app-icon{color:var(--menu-icon);font-size:18px}.portal-top-navigation{display:flex;align-items:center;gap:4px;min-width:0;flex:1 1 auto;overflow:visible}.portal-top-node-anchor{position:relative;display:inline-flex;align-items:center;min-width:0;max-width:190px}.portal-top-link{display:inline-flex;align-items:center;gap:6px;min-width:0;max-width:190px;height:34px;padding:0 9px;border-radius:7px;color:var(--muted);font-size:.82rem;font-weight:650;text-decoration:none;white-space:nowrap;overflow:hidden;border:0;background:transparent;box-shadow:none;font-family:inherit;cursor:pointer}.portal-top-link:hover,.portal-top-link[aria-current=page],.portal-top-link[aria-expanded=true]{background:var(--surface-strong);color:var(--text);box-shadow:none;transform:none}.portal-top-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-top-node-trigger app-icon{flex:none;font-size:18px}.portal-top-node-menu{left:0;right:auto;top:calc(100% + 8px);min-width:250px;max-width:min(360px,calc(100vw - 32px))}.nav-badge{flex:none;padding:1px 5px;border-radius:4px;background:#fdf4e6;color:#84520f;font-size:9px;font-weight:700;line-height:1.25}.top-menu-chevron{justify-self:end;font-size:17px!important}.top-menu-caption{min-width:0;padding:6px 9px 5px;color:var(--muted);font-size:.72rem;font-weight:800;letter-spacing:.08em;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.top-menu-separator{border:0;height:1px;margin:5px 2px;background:var(--menu-border)}.top-menu-submenu{position:relative}.top-submenu-panel{position:absolute;top:0;right:calc(100% + 8px);z-index:42;display:grid;width:286px;max-height:min(420px,calc(100vh - 96px));padding:7px;border:1px solid var(--menu-border);border-radius:8px;background:var(--menu-bg);box-shadow:var(--menu-shadow);gap:7px}.root-create-menu{top:auto;right:calc(100% + 8px);bottom:8px;width:238px}.top-submenu-filter{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:7px;height:36px;min-height:36px;padding:0 9px;border:1px solid var(--menu-border);border-radius:6px;background:var(--panel-strong)}.top-submenu-filter app-icon{flex:none;color:var(--muted);font-size:17px;line-height:1}.top-submenu-filter input{min-width:0;flex:1;height:100%;border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-size:.8rem;line-height:1;padding:0}.top-submenu-list{display:grid;gap:2px;overflow:auto;padding-inline-end:var(--portal-scrollbar-safe-padding);scrollbar-gutter:stable}[data-theme=light] input:-webkit-autofill,[data-theme=light] input:-webkit-autofill:hover,[data-theme=light] input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);box-shadow:0 0 0 1000px #ffffffe6 inset}a,button,input,textarea,select{font-family:var(--font)}button{cursor:pointer}:focus-visible{outline:2px solid var(--accent, #66e3ff);outline-offset:2px}.skip-link{position:fixed;top:0;left:0;padding:.75rem 1.5rem;background:var(--accent, #66e3ff);color:#0b0f1c;font-weight:600;font-size:.9rem;z-index:9999;text-decoration:none;border-radius:0 0 8px;pointer-events:none;transform:translateY(calc(-100% - 4px));transition:transform .2s;visibility:hidden}.skip-link:focus,.skip-link:focus-visible{pointer-events:auto;transform:translateY(0);visibility:visible}.skip-link:focus:not(:focus-visible){pointer-events:none;transform:translateY(calc(-100% - 4px));visibility:hidden}.muted{color:var(--muted)}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh;position:relative;overflow-x:hidden;scrollbar-gutter:stable}.app-shell.portal-shell-active{height:100vh;overflow:hidden;scrollbar-gutter:auto}.topbar{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:16px;min-height:58px;padding:0 18px;background:var(--surface-solid, #fff);border-bottom:1px solid var(--border)}.topbar-leading{display:flex;align-items:center;gap:16px;min-width:0;flex:none}.brand{display:inline-flex;align-items:center;gap:12px;min-width:max-content}.brand-logo{display:block;height:22px;width:auto}.brand-divider{width:1px;height:22px;background:var(--border)}.brand-copy{display:grid;gap:1px;line-height:1.05}.brand-product{color:var(--text);font-size:13.5px;font-weight:700;line-height:1.05}.top-actions{display:flex;gap:0;align-items:center;justify-content:flex-end;flex-wrap:wrap;flex:none;margin-left:auto}.mode-switch{display:inline-flex;align-items:center;gap:0;min-height:34px;margin:0;padding:0;border:0;border-radius:7px;list-style:none;background:transparent}.mode-switch+.top-menu-anchor{margin-left:5px}.mode-switch-item{display:inline-flex}.mode-switch-link{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid transparent;border-radius:8px;color:var(--muted);line-height:1;background:transparent;box-shadow:none}.mode-switch-link app-icon{font-size:20px}.mode-switch-link:hover,.mode-switch-link:focus-visible{color:var(--text);border-color:var(--border);background:var(--surface-strong);box-shadow:0 1px 2px #0f172a14}.mode-switch-link.active:after{content:none}.top-portal-search{display:flex;align-items:center;gap:8px;min-height:38px;width:100%;max-width:480px;min-width:260px;margin:0 auto;padding:0 8px 0 12px;border:1px solid var(--border);border-radius:8px;background:var(--panel-strong);flex:1 1 260px}.top-portal-search:focus-within{border-color:var(--accent)}.top-portal-search-icon{color:var(--muted);font-size:18px}.top-portal-search-input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--text);font-size:.84rem;font-family:var(--font)}.top-portal-search-input::placeholder{color:var(--muted);opacity:.76}.top-portal-search-submit{display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:28px;height:28px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;box-shadow:none}.top-portal-search-submit:hover{background:var(--glass);color:var(--text);box-shadow:none;transform:none}.top-portal-search-submit kbd{padding:2px 6px;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:10px;line-height:1.2}.portal-management-page{display:grid;gap:20px;width:min(1180px,100%);margin:0 auto;padding:24px 28px 48px;border:0;background:transparent;box-shadow:none}.content:has(.portal-management-page),.content:has(app-portal-manage-links),.content:has(app-portal-manage-spaces){border:0;background:transparent;box-shadow:none}.app-shell:has(app-developer-api-contract){display:flex;flex-direction:column;height:100dvh;min-height:0;overflow:hidden}.shell-body:has(app-developer-api-contract){flex:1 1 auto;min-height:0;overflow:hidden;padding:18px 0 0}.content:has(app-developer-api-contract){height:100%;min-height:0;overflow:hidden;padding:0}.content:has(app-developer-api-contract) .main-column{height:100%;min-height:0}.portal-management-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid var(--border);padding-bottom:16px}.portal-management-header h1{margin:0;font-size:1.55rem;line-height:1.2}.portal-management-header p{max-width:720px;margin:6px 0 0;color:var(--muted);font-size:.92rem}.portal-management-form{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr)) auto;align-items:end;gap:14px;padding:2px 0 6px}.portal-management-form.links-form{grid-template-columns:minmax(190px,240px) minmax(180px,1fr) minmax(260px,1.4fr) minmax(92px,auto) auto}.portal-management-form.spaces-form{grid-template-columns:minmax(150px,.9fr) minmax(190px,1fr) minmax(180px,.9fr) minmax(160px,.8fr) minmax(118px,auto) minmax(132px,auto) auto}.portal-management-form label{display:grid;gap:5px;min-width:0;color:var(--muted);font-size:.78rem;font-weight:650}.portal-management-form input,.portal-management-form select,.portal-management-table input,.portal-management-table select{box-sizing:border-box;min-width:0;width:100%;height:34px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text);padding:0 9px;font:inherit;font-size:.84rem}.portal-management-form .checkbox-field{display:flex;align-items:center;justify-content:center;gap:8px;min-height:34px;padding-bottom:1px;text-align:center;white-space:nowrap}.portal-management-form .checkbox-field input{flex:none;width:16px;height:16px}.portal-management-form button[type=submit]{height:34px;min-width:82px;justify-content:center}.portal-management-table-wrap{overflow-x:auto;border-top:1px solid var(--border)}.portal-management-table{width:100%;min-width:980px;border-collapse:collapse;font-size:.86rem;table-layout:fixed}.portal-management-table.links-table{min-width:980px}.portal-management-table.spaces-table{min-width:1120px}.portal-management-table th,.portal-management-table td{border-bottom:1px solid var(--border);padding:9px 10px;text-align:left;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-management-table th{color:var(--muted);font-size:.73rem;font-weight:750;text-transform:uppercase}.portal-management-table.links-table th:nth-child(1),.portal-management-table.links-table td:nth-child(1){width:34%}.portal-management-table.links-table th:nth-child(2),.portal-management-table.links-table td:nth-child(2){width:36%}.portal-management-table.links-table th:nth-child(3),.portal-management-table.links-table td:nth-child(3){width:13%}.portal-management-table.links-table th:nth-child(4),.portal-management-table.links-table td:nth-child(4){width:10%;text-align:center}.portal-management-table.links-table th:nth-child(5),.portal-management-table.links-table td:nth-child(5){width:7%;text-align:center}.portal-management-table.spaces-table th:nth-child(1),.portal-management-table.spaces-table td:nth-child(1){width:25%}.portal-management-table.spaces-table th:nth-child(2),.portal-management-table.spaces-table td:nth-child(2){width:23%}.portal-management-table.spaces-table th:nth-child(3),.portal-management-table.spaces-table td:nth-child(3){width:13%}.portal-management-table.spaces-table th:nth-child(n+4),.portal-management-table.spaces-table td:nth-child(n+4){text-align:center}.portal-management-table.spaces-table th:nth-child(4),.portal-management-table.spaces-table td:nth-child(4),.portal-management-table.spaces-table th:nth-child(5),.portal-management-table.spaces-table td:nth-child(5),.portal-management-table.spaces-table th:nth-child(6),.portal-management-table.spaces-table td:nth-child(6),.portal-management-table.spaces-table th:nth-child(7),.portal-management-table.spaces-table td:nth-child(7){width:8%}.portal-management-table.spaces-table th:nth-child(8),.portal-management-table.spaces-table td:nth-child(8){width:7%}.portal-management-table input[type=checkbox]{width:16px;height:16px;padding:0}.portal-management-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) minmax(150px,auto) minmax(150px,auto) auto auto;align-items:center;gap:10px;min-width:0;padding:12px;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface) 88%,transparent);box-sizing:border-box}.portal-management-toolbar .toolbar-search,.portal-management-toolbar .toolbar-filter{display:flex;align-items:center;flex-direction:row;flex-wrap:nowrap;min-width:0;height:34px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--muted);box-sizing:border-box}.portal-management-toolbar .toolbar-search{gap:8px;max-width:none;flex:initial;padding:0 10px}.portal-management-toolbar .toolbar-search app-icon{flex:none;font-size:17px}.portal-management-toolbar .toolbar-search input{flex:1 1 auto;min-width:0;width:100%;height:100%;border:0;outline:0;background:transparent;color:var(--text);padding:0;font:inherit;font-size:.86rem}.portal-management-toolbar .toolbar-filter{gap:8px;padding:0 8px 0 10px}.portal-management-toolbar .toolbar-filter span{flex:none;color:var(--muted);font-size:.74rem;font-weight:700}.portal-management-toolbar .toolbar-filter select{flex:1 1 auto;min-width:112px;height:100%;border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-size:.84rem}.portal-management-toolbar .toolbar-count{color:var(--muted);font-size:.82rem;white-space:nowrap}.portal-management-toolbar .toolbar-actions{display:flex;justify-content:flex-end;gap:8px;white-space:nowrap}.portal-management-panel{display:grid;gap:12px;min-width:0;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface) 92%,transparent)}.portal-management-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px 0}.portal-management-panel-header h2{margin:0;font-size:1.02rem;line-height:1.25}.portal-management-panel-header p{margin:4px 0 0;color:var(--muted);font-size:.82rem}.portal-management-panel .table-wrap{overflow-x:auto;border:0;border-top:1px solid var(--border);border-radius:0 0 8px 8px;background:transparent}.portal-links-table,.portal-spaces-table{min-width:980px;font-size:.86rem}.portal-spaces-table{min-width:1100px}.portal-links-table th,.portal-links-table td,.portal-spaces-table th,.portal-spaces-table td{padding:10px 14px}.portal-links-table thead th,.portal-spaces-table thead th{background:color-mix(in srgb,var(--surface-strong) 88%,transparent);color:var(--muted);font-size:.72rem;font-weight:750;letter-spacing:0;text-transform:uppercase}.portal-links-table input,.portal-links-table select,.portal-spaces-table input,.portal-spaces-table select{box-sizing:border-box;min-width:0;width:100%;height:34px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text);padding:0 9px;font:inherit;font-size:.84rem}.portal-links-table input[type=checkbox],.portal-spaces-table input[type=checkbox],.compact-checkbox input{width:16px;height:16px;padding:0}.link-title-cell{display:inline-flex;align-items:center;gap:8px;min-width:0;max-width:100%;color:var(--text)}.link-title-cell strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-title-cell app-icon{flex:none;color:var(--muted);font-size:18px}.link-url{display:block;max-width:440px;overflow:hidden;color:var(--accent);text-overflow:ellipsis;white-space:nowrap}.status-pill{display:inline-flex;align-items:center;min-height:22px;padding:2px 8px;border-radius:999px;font-size:.75rem;font-weight:700;white-space:nowrap}.status-pill.success{background:color-mix(in srgb,#2e7d5b 18%,transparent);color:#78d5ad}.status-pill.neutral{background:color-mix(in srgb,var(--muted) 14%,transparent);color:var(--muted)}.flag-list,.flag-editor,.row-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.flag-editor label{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:.82rem;white-space:nowrap}.row-actions{justify-content:flex-end;flex-wrap:nowrap}.compact-checkbox{display:inline-flex;align-items:center;justify-content:center}.btn.danger{background:color-mix(in srgb,#b42318 88%,#000 12%);color:#fff}.icon-button.danger{color:#f1867d}.icon-button.primary{border-color:var(--accent);background:var(--accent);color:var(--fg-on-brand)}.icon-button.primary:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 88%,#000 12%);color:var(--fg-on-brand)}.icon-button.danger:hover{border-color:#f1867d;color:#ffaaa3}.empty-state{display:grid;justify-items:start;gap:10px;padding:20px 16px;color:var(--muted)}.empty-state p{margin:0}@media (max-width: 920px){.portal-management-page{padding:18px 14px 36px}.portal-management-header{display:grid}.portal-management-toolbar{grid-template-columns:minmax(0,1fr)}.portal-management-toolbar .toolbar-actions{justify-content:flex-start}.portal-management-form,.portal-management-form.links-form,.portal-management-form.spaces-form{grid-template-columns:minmax(0,1fr)}.portal-management-panel .table-wrap{overflow:visible}.portal-links-table,.portal-spaces-table,.portal-links-table thead,.portal-spaces-table thead,.portal-links-table tbody,.portal-spaces-table tbody,.portal-links-table tr,.portal-spaces-table tr{display:block;min-width:0;width:100%}.portal-links-table thead,.portal-spaces-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.portal-links-table,.portal-spaces-table{border-collapse:separate;border-spacing:0}.portal-links-table tbody,.portal-spaces-table tbody{display:grid;gap:10px;padding:12px}.portal-links-table tbody tr,.portal-spaces-table tbody tr{border:1px solid var(--border);border-radius:8px;background:var(--surface)}.portal-links-table th,.portal-spaces-table th{display:none}.portal-links-table td,.portal-spaces-table td,.portal-links-table td.fit,.portal-spaces-table td.fit{display:grid;grid-template-columns:minmax(92px,.35fr) minmax(0,1fr);align-items:center;gap:12px;width:auto;border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent);padding:9px 12px;white-space:normal}.portal-links-table td:last-child,.portal-spaces-table td:last-child{border-bottom:0}.portal-links-table td:before,.portal-spaces-table td:before{content:attr(data-label);color:var(--muted);font-size:.72rem;font-weight:750;text-transform:uppercase}.portal-links-table td[data-label=Actions],.portal-spaces-table td[data-label=Actions]{grid-template-columns:minmax(92px,.35fr) minmax(0,1fr)}.portal-links-table td[data-label=Actions] .row-actions,.portal-spaces-table td[data-label=Actions] .row-actions{justify-content:flex-start;flex-wrap:wrap}.portal-links-table td>.status-pill,.portal-spaces-table td>.status-pill,.portal-links-table td>.flag-list,.portal-spaces-table td>.flag-list{justify-self:start}.portal-links-table .link-url,.portal-spaces-table .link-url{max-width:100%}}.top-center{position:absolute;left:50%;transform:translate(-50%);z-index:1}.top-center app-domain-scope-host{--input-bg: var(--surface-strong);--hover: var(--menu-hover);--accent-muted: color-mix(in srgb, var(--accent) 12%, transparent);display:flex;color:var(--text)}.top-actions a{color:var(--muted);font-size:.84rem;font-weight:650}.top-actions a.active{color:var(--text);position:relative}.top-actions a.active:after{content:"";position:absolute;left:0;bottom:-6px;width:100%;height:2px;background:linear-gradient(90deg,var(--accent),transparent)}.top-actions a:hover{color:var(--text)}.shell-body{display:grid;grid-template-columns:248px 1fr;gap:16px;padding:18px 40px 40px 28px;position:relative;max-width:none;margin:0}.shell-body.unauth,.shell-body.no-sidebar{grid-template-columns:1fr}.shell-body.portal-route{padding:0;background:var(--surface)}.shell-body.admin-route{gap:28px;grid-template-columns:248px minmax(0,1fr);padding:0 40px 40px 0}.sidebar{padding:10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 22px #0f172a0f;height:fit-content;max-height:calc(100vh - 96px);overflow:auto;scrollbar-gutter:stable;position:sticky;top:78px}.sidebar.admin-sidebar{align-self:stretch;background:var(--surface-solid, #fff);border:0;border-right:1px solid var(--border);border-radius:0;box-shadow:none;max-height:none;min-height:calc(100vh - 59px);padding:24px 10px 24px 28px;top:58px}.explorer-nav{display:grid;gap:8px}.explorer-home-section{padding-bottom:8px;border-bottom:1px solid var(--border)}.explorer-nav-group{display:grid;gap:2px}.explorer-domain-tabs{display:grid;gap:4px}.explorer-tab{display:flex;align-items:center;justify-content:flex-start;min-height:30px;padding:6px 8px;border:1px solid transparent;border-radius:6px;color:var(--muted);background:transparent;font-size:.7rem;font-weight:800;letter-spacing:.12em;text-align:left;text-decoration:none;text-transform:uppercase}.explorer-tab:hover,.explorer-tab:focus-visible{color:var(--accent);background:var(--nav-hover);border-color:color-mix(in srgb,var(--accent) 16%,transparent)}.explorer-tab.active{color:var(--accent);background:var(--nav-active);border-color:var(--nav-active-border)}.nav-section+.nav-section{margin-top:8px}.nav-title{margin:0 0 4px;padding-left:8px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:var(--muted)}.sidebar .nav-title-link{display:block;margin:0 0 4px;padding-left:8px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:var(--muted);text-decoration:none}.sidebar .nav-title-link:not(.explorer-tab):hover{color:var(--text);background:transparent}.sidebar .nav-title-link:not(.explorer-tab).active{color:var(--text);background:transparent;border:none}.sidebar a:not(.nav-title-link):not(.explorer-tab){border:1px solid transparent;box-sizing:border-box;display:block;padding:4px 8px 4px 16px;margin-bottom:1px;border-radius:6px;font-size:.85rem;color:var(--text);background:transparent}.sidebar a:not(.nav-title-link):not(.explorer-tab).active{background:var(--nav-active);border-color:var(--nav-active-border);color:var(--accent);font-weight:700}.sidebar a:not(.nav-title-link):not(.explorer-tab):not(.active):hover,.sidebar a:not(.nav-title-link):not(.explorer-tab):not(.active):focus-visible{background:var(--nav-hover);color:var(--accent)}.sidebar.admin-sidebar .explorer-nav{gap:20px}.sidebar.admin-sidebar .explorer-nav-group{gap:4px}.sidebar.admin-sidebar .nav-title{color:#7b879c;font-weight:800;letter-spacing:0;margin:0 0 5px;padding-left:2px}.sidebar.admin-sidebar a:not(.nav-title-link):not(.explorer-tab){align-items:center;border:1px solid transparent;box-sizing:border-box;display:flex;gap:9px;min-height:32px;padding:5px 10px;position:relative}.sidebar.admin-sidebar .nav-link-icon{color:#667085;height:16px;width:16px}.sidebar.admin-sidebar a:not(.nav-title-link):not(.explorer-tab):not(.active):hover .nav-link-icon,.sidebar.admin-sidebar a:not(.nav-title-link):not(.explorer-tab):not(.active):focus-visible .nav-link-icon{color:var(--accent)}.sidebar.admin-sidebar a:not(.nav-title-link):not(.explorer-tab).active{background:var(--nav-active);border-color:var(--nav-active-border);color:var(--accent);font-weight:750}.sidebar.admin-sidebar a:not(.nav-title-link):not(.explorer-tab).active .nav-link-icon{color:var(--accent)}.sidebar.admin-sidebar a:not(.nav-title-link):not(.explorer-tab).active:before{background:var(--accent);border-radius:0 999px 999px 0;bottom:5px;content:"";left:-1px;position:absolute;top:5px;width:3px}.shell-body.admin-route .content{padding-top:18px}@media (max-width: 640px){.admin-page app-admin-grid-table .panel-card.wide{gap:10px!important;padding:12px!important}.admin-page app-admin-grid-toolbar .table-topbar{gap:8px}.admin-page app-admin-grid-toolbar .table-head-actions{gap:4px}.admin-page app-admin-grid-toolbar .result-count,.admin-page app-admin-grid-toolbar .selected-count{min-height:28px}}.content{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}.shell-body.unauth .content{grid-template-columns:1fr}.main-column{display:flex;flex-direction:column;gap:24px;min-width:0}router-outlet{display:contents}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.shell-body.with-sidebar .main-column{padding-right:12px}.main-column>*{width:100%}.left-rail{position:relative}section{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow);display:grid;gap:18px}.page{gap:22px;background:transparent;border:none;box-shadow:none;padding:0;width:100%;max-width:none}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.page-header.page-header-stacked{align-items:center}.page-header.page-header-stacked>div:first-child{flex:1}.page-header .page-meta{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.page-header .page-meta h2{margin:0}.page-lead{margin:0;color:var(--muted)}.page-header.auth-header{max-width:720px;margin:0 auto}.section-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.section-title{display:flex;align-items:center;gap:10px}.pill{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:22px;padding:0 8px;border-radius:999px;background:#72e2ff2e;color:var(--accent);font-size:.75rem;font-weight:600}h1,h2,h3{margin:0 0 12px}h1,h2,h3,h4{font-family:var(--font-heading);letter-spacing:.01em}h1{font-size:clamp(2rem,3vw,3rem)}h2{font-size:1.4rem}h3{font-size:1.1rem;color:var(--accent)}p{color:var(--muted);line-height:1.6}ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}form label,.field-label{display:flex;flex-direction:column;gap:6px;font-size:.9rem;color:var(--muted)}form{display:grid;gap:14px;max-width:100%}form button{justify-self:start}.form-grid{display:grid;gap:16px}.form-grid-2{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.full-width{grid-column:1 / -1}.input-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.input-row input,.input-row button{height:36px}.input-with-action{display:flex;gap:10px;align-items:center}.input-with-action input,.input-with-action textarea{flex:1}.input-with-action .btn,.input-with-action button{height:40px}.input-with-action.icon-inline{position:relative;gap:0}.input-with-action.icon-inline input,.input-with-action.icon-inline textarea{padding-right:44px}.input-with-action.icon-inline .icon-button{position:absolute;right:8px;top:50%;transform:translateY(calc(-50% + 2px));width:28px;min-width:28px;height:28px;border-radius:999px;border:none;background:transparent;color:var(--muted);box-shadow:none}.input-with-action.icon-inline .icon-button:hover{color:var(--accent)}.icon-button{width:36px;min-width:36px;height:36px;border-radius:12px;border:1px solid var(--border);display:inline-flex;align-items:center;justify-content:center;padding:0;background:var(--surface);color:var(--text);box-shadow:none;transform:none}.icon-button:hover{border-color:var(--accent);background:var(--panel);box-shadow:none;transform:none}.icon-button app-icon{font-size:18px;line-height:1;color:currentColor;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 20}.input-stack{flex:1}.form-actions{display:flex;gap:12px;flex-wrap:wrap}.tag-input-group{grid-column:1 / -1}.tag-input-row{display:flex;gap:8px;align-items:center}.tag-input-row input{flex:1}.tag-list{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.tag{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:999px;background:#525e8026;font-size:.85em}.tag-remove{background:none;border:none;color:var(--color-text);cursor:pointer;padding:0 2px;font-size:1.1em;line-height:1;opacity:.6}.tag-remove:hover{opacity:1}.tabs{display:flex;gap:10px;flex-wrap:nowrap;align-items:flex-end;border-bottom:1px solid rgba(82,94,128,.35)}.tab{background:transparent;border:none;border-bottom:2px solid transparent;border-radius:0;color:var(--muted);padding:10px 12px;box-shadow:none;transform:none;margin-bottom:-1px}.tab:hover{color:var(--text);box-shadow:none;transform:none}.tab.active{color:var(--text);border-bottom-color:var(--accent);box-shadow:none;transform:none}.stack{display:grid;gap:16px}.inline-actions{display:flex;align-items:center;gap:10px}.inline-actions.align-right{margin-left:auto;justify-content:flex-end}.panel-card{background:var(--panel);border-radius:var(--radius);padding:22px;border:1px solid var(--border);display:grid;gap:16px;width:100%}.panel-card.wide{width:100%;max-width:none}.helper-text{color:var(--muted);font-size:.85rem}.form-error{color:#ff9aa2;background:#ff445a1f;border:1px solid rgba(255,68,90,.35);border-radius:var(--radius-sm);padding:6px 10px;font-size:.85rem}input.ng-invalid.ng-touched,textarea.ng-invalid.ng-touched,select.ng-invalid.ng-touched{border-color:#e74c3c;box-shadow:0 0 0 2px #e74c3c26}input.ng-valid.ng-touched,textarea.ng-valid.ng-touched,select.ng-valid.ng-touched{border-color:#2ecc7180}[data-theme=light] input.ng-invalid.ng-touched,[data-theme=light] textarea.ng-invalid.ng-touched,[data-theme=light] select.ng-invalid.ng-touched{border-color:#c0392b;box-shadow:0 0 0 2px #c0392b1a}[data-theme=light] input.ng-valid.ng-touched,[data-theme=light] textarea.ng-valid.ng-touched,[data-theme=light] select.ng-valid.ng-touched{border-color:#27ae6073}.mono{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.85rem}.entity-link{color:var(--accent, #66e3ff);text-decoration:none;cursor:pointer}.entity-link:hover{text-decoration:underline}.entity-link.mono{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.85rem}.form-field-readonly{display:flex;flex-direction:column;gap:6px;font-size:.9rem}.form-field-label{color:var(--muted, #8899aa);font-size:.85rem}form p,section p{margin:0}input::placeholder,textarea::placeholder{color:#aeb5cf99}input,textarea,select{background:#0c1020bf;border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 12px;color:var(--text);font-size:.95rem;min-height:20px}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,textarea:-webkit-autofill,textarea:-webkit-autofill:hover,textarea:-webkit-autofill:focus,select:-webkit-autofill,select:-webkit-autofill:hover,select:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);box-shadow:0 0 0 1000px #0c1020e6 inset;transition:background-color 5000s ease-in-out 0s}.btn{border:none;border-radius:8px;padding:10px 18px;font-weight:600;cursor:pointer;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-3) 100%);color:#0a1224;box-shadow:0 10px 24px #6ec5ff38;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 14px 30px #6ec5ff47}.btn.primary{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-3) 100%);color:#0a1224;box-shadow:0 12px 28px #6ec5ff4d}[data-theme=light] .btn.primary{color:#fff;box-shadow:0 8px 20px #5b2bbf2e}.btn.ghost{background:transparent;border:1px solid var(--border);color:var(--text);box-shadow:none}.btn.ghost:hover{border-color:var(--accent);box-shadow:none}.btn.small{padding:8px 14px;font-size:.85rem}.btn.secondary,button.btn.secondary,[data-theme=light] .btn.secondary,[data-theme=light] button.btn.secondary{border:1px solid var(--border);background:var(--surface);color:var(--text);box-shadow:none}.btn.secondary:hover,button.btn.secondary:hover,[data-theme=light] .btn.secondary:hover,[data-theme=light] button.btn.secondary:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:var(--panel);box-shadow:none;transform:none}.btn.secondary.destructive,button.btn.secondary.destructive,[data-theme=light] .btn.secondary.destructive,[data-theme=light] button.btn.secondary.destructive{border-color:color-mix(in srgb,#d9605a 42%,var(--border));color:#b42318}.btn.secondary.destructive:hover,button.btn.secondary.destructive:hover,[data-theme=light] .btn.secondary.destructive:hover,[data-theme=light] button.btn.secondary.destructive:hover{border-color:#d9605a;background:color-mix(in srgb,#d9605a 9%,var(--surface))}button[disabled]{opacity:.5;cursor:not-allowed}button[disabled]:hover{transform:none;box-shadow:none}.landing-hero{display:flex;align-items:center;justify-content:center;min-height:60vh;text-align:center}.landing-hero-content{max-width:620px}.landing-title{font-size:clamp(2rem,5vw,3rem);font-weight:800;letter-spacing:-.02em;margin:0 0 1rem;background:linear-gradient(135deg,var(--accent, #66e3ff) 0%,var(--accent-2, #9f7aea) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-subtitle{font-size:1.1rem;line-height:1.7;color:var(--muted, #8899aa);max-width:540px;margin:0 auto 2rem}.landing-subtitle strong{color:var(--text)}.landing-capabilities{display:flex;flex-direction:column;gap:1rem;text-align:left;max-width:460px;margin:0 auto 2.5rem}.capability-item{display:flex;align-items:flex-start;gap:.75rem}.capability-item>app-icon{font-size:1.4rem;color:var(--accent);flex-shrink:0;margin-top:2px}.capability-item strong{display:block;font-size:.9rem;font-weight:700;color:var(--text);margin-bottom:2px}.capability-item span{font-size:.85rem;color:var(--muted);line-height:1.5}.landing-auth-actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}.landing-hub{padding:1.5rem 1.5rem 2rem}.landing-hub-header{margin-bottom:2rem}.landing-hub-header h1{font-size:1.6rem;font-weight:700;margin:0 0 .35rem}.section-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:.85rem}.section-card{background:var(--panel, rgba(12, 16, 32, .65));border:1px solid var(--border, rgba(255, 255, 255, .08));border-radius:14px;padding:1rem;display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"icon title" "icon desc" "icon links";column-gap:.85rem;row-gap:.45rem;align-items:start;transition:border-color .2s,transform .2s}.section-card:hover{border-color:var(--accent, #66e3ff);transform:translateY(-2px)}.section-card-header{display:contents}.section-icon{grid-area:icon;font-size:1.5rem;line-height:1;color:var(--accent, #66e3ff);margin-top:.1rem}.section-card-header h2{grid-area:title;font-size:1.15rem;font-weight:700;margin:0}.section-desc{font-size:.9rem;line-height:1.55;color:var(--muted, #8899aa);margin:0;grid-area:desc;flex:1}.section-links{grid-area:links;display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}.section-links a{display:inline-block;padding:.3rem .75rem;font-size:.82rem;font-weight:600;color:var(--accent, #66e3ff);background:#66e3ff0f;border:1px solid rgba(102,227,255,.15);border-radius:6px;text-decoration:none;transition:background .15s,border-color .15s}.section-links a:hover{background:#66e3ff24;border-color:#66e3ff59}.auth-card{max-width:720px;width:100%;margin:0 auto}.list-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:var(--radius-sm);background:#0c1020b8;border:1px solid transparent}.list-grid{display:grid;grid-template-columns:1fr;gap:12px;width:100%}.nav-menu-backdrop{position:fixed;inset:0;z-index:30}.nav-popover-menu{position:fixed;z-index:31;transform:none;box-sizing:border-box;display:flex;flex-direction:column;gap:0;width:176px;max-height:min(340px,calc(100vh - 24px));overflow:auto;padding:4px;padding-inline-end:max(4px,var(--portal-scrollbar-safe-padding));scrollbar-gutter:stable;border-radius:8px;border:1px solid var(--menu-border);background:var(--menu-bg);box-shadow:var(--menu-shadow)}button.nav-menu-item{display:inline-flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;border-radius:6px;background:transparent;color:var(--menu-text);text-align:left;cursor:pointer;font:inherit;box-shadow:none}button.nav-menu-item:hover:not(:disabled),button.nav-menu-item:focus-visible{background:var(--menu-hover);transform:none;outline:none}button.nav-menu-item:disabled{color:color-mix(in srgb,var(--menu-text) 45%,transparent);opacity:1;cursor:default}button.nav-menu-item.destructive{color:#b42318}button.nav-menu-item app-icon{font-size:18px;color:var(--menu-icon)}button.nav-menu-item.destructive app-icon{color:inherit}.list-sentinel{height:1px}.list-grid .list-row{align-items:flex-start}.list-row-selectable{gap:16px}.table-wrap{width:100%;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-sm);background:#0a0e1cb3}.data-table{width:max-content;min-width:100%;border-collapse:collapse;table-layout:auto}.data-table th,.data-table td{border-bottom:1px solid rgba(130,140,170,.14);padding:10px 12px;vertical-align:middle;text-align:left}.data-table tbody tr:hover{background:#12182abf}.data-table thead th{background:#101524f2;font-size:.85rem;color:var(--muted);white-space:nowrap}.data-table th:not(.fit),.data-table td:not(.fit){min-width:140px}.data-table thead input{width:100%}.data-table thead input,.data-table thead select{box-sizing:border-box;max-width:100%}.filter-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.filter-split input{min-width:0}.data-table .fit{width:1%;white-space:nowrap}.table-sort{background:transparent;border:none;padding:0;color:var(--text);font-weight:600;box-shadow:none;cursor:pointer;white-space:nowrap}.table-sort:hover{color:var(--accent);box-shadow:none;transform:none}.table-sort.sort-active{color:var(--accent)}.table-sort.sort-active:after{content:" \25b2";font-size:.7em;vertical-align:middle}.table-sort.sort-active.sort-desc:after{content:" \25bc"}.table-actions{justify-content:flex-end;margin-top:4px}.checkbox{display:inline-flex;flex-direction:row;align-items:center;gap:8px}.checkbox input{appearance:auto;width:16px;height:16px;border-radius:3px;border:1px solid var(--border);background:#0c1020bf;accent-color:#72e2ff;cursor:pointer}.checkbox.inline-label small{line-height:1}.select-all{margin-left:0}.column-picker{position:relative}.column-picker-menu{position:absolute;right:0;top:calc(100% + 6px);min-width:150px;border:1px solid var(--border);background:#0d1221f5;border-radius:var(--radius-sm);padding:10px;display:grid;gap:8px;z-index:15}.users-toolbar{align-items:center;gap:14px}.users-toolbar .toolbar-search input{height:28px}.users-toolbar .toolbar-search .icon-button.compact{width:28px;min-width:28px;height:28px}.edit-user-toolbar,.edit-entity-toolbar{align-items:flex-start}.edit-user-title,.edit-entity-title{display:flex;align-items:flex-start;gap:12px;min-width:0}.edit-user-meta,.edit-entity-meta{display:grid;gap:2px;min-width:0}.edit-user-email,.edit-entity-name{margin:0;color:var(--text)}.domain-link{color:var(--accent);text-decoration:none}.domain-link:hover{text-decoration:underline}.detail-table{display:grid;grid-template-columns:minmax(120px,160px) minmax(0,1fr);gap:0;max-width:700px}.detail-row{display:contents}.detail-label{margin:0;padding:3px 12px 3px 0;font-size:.82rem;font-weight:600;color:var(--muted);white-space:nowrap;align-self:center}.detail-cell{margin:0;padding:1px 0;align-self:center;min-height:28px;display:flex;align-items:center}.detail-section-title{grid-column:1 / -1;padding:8px 0 2px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);border-top:1px solid var(--border);margin-top:2px}.detail-section-title:first-child{border-top:none;margin-top:0;padding-top:0}[data-theme=light] .ie-editable:hover{background:#0000000a;border-color:#00000014}.edit-details{max-width:760px}.edit-name-row{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.role-assign-action{align-self:flex-end;padding-bottom:2px}.toolbar-search{display:flex;align-items:center;gap:10px;flex:1;max-width:560px}.toolbar-search input{box-sizing:border-box;height:24px;padding:2px 10px}.toolbar-search .result-count{white-space:nowrap;margin-left:18px}.toolbar-search .icon-button.compact{box-sizing:border-box;width:24px;min-width:24px;height:24px}.icon-button.compact{width:36px;min-width:36px;height:36px;border-radius:10px}.users-table{min-width:980px}.table-topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.table-search{display:flex;align-items:center;gap:10px;flex:1;min-width:300px}.table-search input{flex:1;min-width:220px;height:36px}.table-search .result-count{white-space:nowrap}.table-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.suggestions{display:grid;gap:8px}.suggestion{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--radius-sm);background:#0c1020b3;border:1px solid transparent;cursor:pointer;color:var(--text)}.suggestion:hover{border-color:var(--accent)}li:hover{border-color:var(--border)}@media (max-width: 1024px){.shell-body{grid-template-columns:1fr}.shell-body.admin-route{grid-template-columns:1fr;padding:0 16px 32px}.sidebar{display:none}.sidebar.open{display:block;position:fixed;top:var(--topbar-h, 56px);left:0;bottom:0;width:260px;z-index:100;background:var(--surface, #12162b);border-right:1px solid var(--border, rgba(255,255,255,.08));overflow-y:auto;scrollbar-gutter:stable}.sidebar.admin-sidebar.open{background:var(--surface-solid, #fff)}.sidebar-overlay{position:fixed;inset:0;top:var(--topbar-h, 56px);background:#00000080;z-index:99;border:0;padding:0;cursor:pointer}.sidebar-overlay:focus-visible{outline:2px solid var(--accent, #66e3ff);outline-offset:-2px}}@media (max-width: 768px){.topbar{display:flex;flex-wrap:wrap;align-items:flex-start;padding:.75rem;gap:10px}.topbar-leading{order:1;flex:1 1 100%;max-width:100%;flex-wrap:wrap}.portal-top-navigation{order:2;flex:1 1 100%;width:100%}.top-center{order:3;position:static;z-index:auto;flex:1 1 100%;width:100%;transform:none}.top-center app-domain-scope-host{display:flex;justify-content:flex-start;max-width:100%}.top-actions{order:4;flex:1 1 100%;justify-content:flex-start}.top-portal-search{order:3;width:100%;min-width:100%}.brand-product{font-size:.9rem}.content{padding:1rem}.main-column{max-width:100%}}@media (max-width: 480px){.content{padding:.5rem}.panel-header h2{font-size:1.1rem}}.sidebar-toggle{display:none}@media (max-width: 1024px){.sidebar-toggle{display:inline-flex;align-items:center;padding:.3rem .5rem;font-size:1.2rem;line-height:1}}.table-scroll{width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch}.tree-row{cursor:pointer}.tree-indent{display:inline-flex;align-items:center;gap:4px}.tree-toggle{display:inline-flex;align-items:center;justify-content:center;width:22px;min-width:22px;height:22px;border-radius:6px;border:1px solid var(--border);background:transparent;color:var(--muted);font-size:.75rem;padding:0;box-shadow:none;cursor:pointer;transition:color .15s,border-color .15s}.tree-toggle:hover{color:var(--accent);border-color:var(--accent);box-shadow:none;transform:none}.tree-toggle-placeholder{display:inline-block;width:22px;min-width:22px}.breadcrumb{display:flex;align-items:center;gap:4px;flex-wrap:wrap;padding:8px 0;font-size:.9em}.breadcrumb a{color:var(--color-accent);text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.breadcrumb-sep{color:#525e8080;margin:0 2px}.skeleton{background:linear-gradient(90deg,#ffffff0a 25%,#ffffff14,#ffffff0a 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px}.skeleton-row{display:flex;gap:12px;padding:12px 14px}.skeleton-cell{height:16px;flex:1;background:linear-gradient(90deg,#ffffff0a 25%,#ffffff14,#ffffff0a 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px}.skeleton-cell.narrow{max-width:80px}.skeleton-cell.medium{max-width:160px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}[data-theme=light] .skeleton,[data-theme=light] .skeleton-cell{background:linear-gradient(90deg,#0000000a 25%,#00000014,#0000000a 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.portal-management-panel .empty-state{text-align:center;padding:3rem 1.5rem;border:1px dashed var(--border, rgba(255,255,255,.08));border-radius:12px;margin:1rem 0}.portal-management-panel .empty-state p{font-size:.95rem}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.search-hero{display:flex;flex-direction:column;gap:12px;padding-bottom:16px}.search-bar{display:flex;width:100%}.search-input-wrap{position:relative;display:flex;flex:1;gap:8px}.search-input-wrap input{flex:1}.suggestions-dropdown{position:absolute;top:100%;left:0;right:40px;z-index:20;background:var(--card-bg);border:1px solid var(--border);border-radius:8px;margin-top:2px;overflow:hidden}.suggestion-item{display:block;width:100%;padding:8px 14px;border:none;background:none;color:var(--text);text-align:left;cursor:pointer;font-size:.92em}.suggestion-item:hover{background:#525e8026}.search-mode-group{display:flex;gap:16px;flex-wrap:wrap}.radio-inline{display:inline-flex;align-items:center;gap:4px;cursor:pointer;font-size:.9em}.filter-panel{border:1px solid var(--border);border-radius:8px;padding:10px 14px;margin-bottom:12px}.filter-panel summary{cursor:pointer;font-weight:500;font-size:.9em;color:var(--muted)}.filter-panel .form-grid{margin-top:10px}.filter-toggles{display:flex;gap:16px;flex-wrap:wrap;align-items:center;grid-column:1 / -1}.search-meta{display:flex;gap:8px;padding:6px 0 10px;font-size:.9em}.facets-row{display:flex;gap:16px;flex-wrap:wrap;padding-bottom:12px}.facet-group{display:flex;flex-direction:column;gap:4px}.facet-title{font-size:.85em;text-transform:capitalize}.facet-list{display:flex;gap:6px;flex-wrap:wrap}.facet-chip{display:inline-flex;align-items:center;gap:2px;padding:2px 10px;border-radius:999px;background:#525e8026;font-size:.85em}.search-results{display:flex;flex-direction:column;gap:10px}.search-hit{padding:12px 16px;border:1px solid var(--border);border-radius:8px;background:#ffffff05}.hit-header{display:flex;align-items:center;gap:8px}.hit-title{font-size:1em}.hit-score{font-size:.85em}.badge{display:inline-block;padding:1px 8px;border-radius:4px;background:#525e8033;font-size:.75em;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.hit-description{margin:4px 0 0;font-size:.9em}.hit-snippet{margin:4px 0 0;font-size:.88em;line-height:1.5}.hit-snippet em,.hit-snippet mark{background:#a374ff33;font-style:normal;padding:0 2px;border-radius:2px}.hit-id{margin-top:4px;font-size:.8em}.load-more{padding:8px 0;text-align:center}.admin-panel-body{display:flex;flex-direction:column;gap:20px;padding-top:12px}.admin-section{display:flex;flex-direction:column;gap:8px}.admin-section h4{margin:0}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.stat-card{padding:10px 14px;border:1px solid var(--border);border-radius:8px;text-align:center}.stat-card dt{font-size:.8em;color:var(--muted);margin-bottom:4px}.stat-card dd{font-size:1.1em;font-weight:600;margin:0}.admin-actions-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.admin-actions-row .btn.danger{color:#ff5c5c;border-color:#ff5c5c4d}.admin-actions-row .btn.danger:hover{background:#ff5c5c1a}.doc-content .ProseMirror{padding:24px;min-height:200px;outline:none;font:400 .95rem/1.65 var(--font-body);letter-spacing:0;color:var(--text)}.doc-content:not(.editing) .ProseMirror{cursor:default}.doc-content .ProseMirror p,.doc-content .ProseMirror li,.doc-content .ProseMirror blockquote,.doc-content .ProseMirror td{font:inherit;color:inherit;letter-spacing:inherit}.doc-content .ProseMirror li>p{margin:0;font:inherit}.doc-content .ProseMirror li::marker{font:inherit;font-weight:400;color:var(--muted)}.doc-content .ProseMirror strong{font-weight:700}.doc-content .ProseMirror h1,.doc-content .ProseMirror h2,.doc-content .ProseMirror h3{margin:1.2em 0 .5em;font-family:var(--font-heading);font-weight:600}.doc-content .ProseMirror h1{font-size:1.6em}.doc-content .ProseMirror h2{font-size:1.3em}.doc-content .ProseMirror h3{font-size:1.1em}.doc-content .ProseMirror blockquote{border-left:3px solid var(--accent);padding-left:1em;color:var(--muted);margin:.75em 0}.doc-content .ProseMirror code{background:#828caa33;padding:2px 5px;border-radius:3px;font-family:SF Mono,Fira Code,monospace;font-size:.88em}.doc-content .ProseMirror pre{background:#828caa26;padding:16px;border-radius:8px;overflow-x:auto;margin:.75em 0}.doc-content .ProseMirror pre code{background:none;padding:0}.doc-content .ProseMirror .portal-mermaid{display:grid;place-items:center;border:1px solid var(--border);background:var(--surface-2);max-width:100%}.doc-content .ProseMirror .portal-mermaid svg{max-width:100%;height:auto}.doc-content .ProseMirror .portal-mermaid-error{place-items:start}.doc-content .ProseMirror pre code.hljs{display:block;color:var(--syntax-text);font-size:.86rem;line-height:1.55}.doc-content .ProseMirror .hljs-keyword,.doc-content .ProseMirror .hljs-literal{color:var(--syntax-keyword)}.doc-content .ProseMirror .hljs-string,.doc-content .ProseMirror .hljs-regexp{color:var(--syntax-string)}.doc-content .ProseMirror .hljs-attr,.doc-content .ProseMirror .hljs-attribute,.doc-content .ProseMirror .hljs-variable{color:var(--syntax-attribute)}.doc-content .ProseMirror .hljs-number,.doc-content .ProseMirror .hljs-symbol,.doc-content .ProseMirror .hljs-bullet{color:var(--syntax-number)}.doc-content .ProseMirror .hljs-meta,.doc-content .ProseMirror .hljs-built_in,.doc-content .ProseMirror .hljs-type{color:var(--syntax-meta)}.doc-content .ProseMirror .hljs-title,.doc-content .ProseMirror .hljs-section,.doc-content .ProseMirror .hljs-name{color:var(--syntax-title)}.doc-content .ProseMirror .hljs-comment,.doc-content .ProseMirror .hljs-quote{color:var(--syntax-comment);font-style:italic}.doc-content .ProseMirror .hljs-punctuation,.doc-content .ProseMirror .hljs-operator{color:var(--syntax-punctuation)}.doc-content .ProseMirror table{border-collapse:collapse;width:100%;margin:14px 0 24px}.doc-content .ProseMirror td,.doc-content .ProseMirror th{border:1px solid var(--border);padding:3px 10px;line-height:1.26;text-align:left;vertical-align:top}.doc-content .ProseMirror th{background:var(--panel-strong);color:var(--text);font-weight:700}.doc-content .ProseMirror th>p,.doc-content .ProseMirror td>p{margin:0}.doc-content .ProseMirror img{max-width:100%;border-radius:6px}.doc-content .ProseMirror a{color:var(--accent);text-decoration:underline}.doc-content .ProseMirror hr{border:none;border-top:1px solid var(--border);margin:1.5em 0}.doc-content .ProseMirror ul,.doc-content .ProseMirror ol{display:block!important;margin:.75em 0!important;padding-left:1.5em!important;gap:0!important}.doc-content .ProseMirror ul{list-style:disc outside!important}.doc-content .ProseMirror ol{list-style:decimal outside!important}.doc-content .ProseMirror li{display:list-item!important;margin:.25em 0!important;padding:0!important;border:none!important;border-radius:0!important;background:transparent!important;list-style:inherit!important}.api-viewer{display:flex;flex-direction:column;gap:16px}.api-shell.socket-open{grid-template-columns:minmax(0,1fr) 10px minmax(var(--api-socket-panel-width, 420px),var(--api-socket-panel-width, 420px));column-gap:0;row-gap:18px;align-items:start}.api-shell.socket-open.inspector-open{grid-template-columns:minmax(0,1fr) 10px minmax(var(--api-socket-panel-width, 420px),var(--api-socket-panel-width, 420px)) minmax(300px,360px);column-gap:14px}.api-shell.socket-open>.api-main{display:contents}.api-shell.socket-open .api-breadcrumb,.api-shell.socket-open .api-header{grid-column:1 / -1}.api-shell.socket-open.inspector-open .api-breadcrumb,.api-shell.socket-open.inspector-open .api-header{grid-column:1 / 4}.api-shell.socket-open .api-empty,.api-shell.socket-open .api-spec-container,.api-shell.socket-open app-portal-reading-pager[position=bottom]{grid-column:1}.api-panel-resizer{grid-column:2;grid-row:3 / span 2;width:10px;height:min(720px,calc(100vh - 220px));min-height:360px;cursor:col-resize;touch-action:none}.api-panel-resizer:before{content:"";display:block;width:2px;height:100%;margin-inline:auto;border-radius:999px;background:color-mix(in srgb,var(--border) 82%,var(--accent) 18%)}.api-panel-resizer:hover:before,.api-panel-resizer:focus-visible:before{background:var(--accent)}.api-panel-resizer:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:2px}.api-websocket-panel{grid-column:3;grid-row:3 / span 2;display:flex;flex-direction:column;gap:12px;min-width:0;height:min(720px,calc(100vh - 220px));min-height:360px;padding:14px;border:none;border-radius:var(--radius);background:var(--surface);box-shadow:none}.api-websocket-header{align-items:flex-start;justify-content:space-between}.api-websocket-header h2{margin:2px 0 6px;font-family:var(--font-heading);font-size:1rem}.api-websocket-status{display:inline-flex;align-items:center;min-height:24px;padding:0 9px;border:1px solid var(--border);border-radius:999px;background:var(--panel);color:var(--muted);font-size:.72rem;font-weight:700}.api-websocket-status.connected{border-color:color-mix(in srgb,#1f9d55 35%,var(--border));background:color-mix(in srgb,#1f9d55 10%,var(--surface));color:#157347}.api-websocket-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.api-websocket-search{display:flex;flex-direction:row;align-items:center;gap:8px;min-width:0;height:36px;min-height:36px;padding:0 10px;border:1px solid var(--border);border-radius:8px;background:var(--panel);box-sizing:border-box}.api-websocket-search app-icon{color:var(--muted);font-size:18px}.api-websocket-search input{width:100%;min-width:0;height:100%;min-height:0;border:none;background:transparent;color:var(--text);font:inherit;font-size:.82rem;line-height:1;outline:none}.api-websocket-menu-anchor{display:flex;justify-content:flex-end}.api-websocket-menu-btn{height:36px;min-height:36px}.api-websocket-menu .api-overflow-item:disabled{color:var(--muted);cursor:not-allowed;opacity:.55}.api-websocket-menu .api-overflow-item:disabled:hover{background:transparent}.api-websocket-menu .api-check-icon.empty{opacity:0}.api-websocket-notice{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:flex-start;padding:9px 10px;border:1px solid color-mix(in srgb,var(--accent) 20%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--accent) 7%,var(--surface));color:var(--muted);font-size:.78rem;line-height:1.35}.api-websocket-notice.error{border-color:color-mix(in srgb,#d9605a 38%,var(--border));background:color-mix(in srgb,#d9605a 8%,var(--surface));color:var(--text)}.api-websocket-notice app-icon{color:var(--accent);font-size:18px}.api-websocket-notice.error app-icon{color:#d9605a}.api-websocket-messages{display:flex;flex:1 1 auto;flex-direction:column;gap:0;min-height:220px;overflow:auto;padding:4px var(--portal-scrollbar-safe-padding) 4px 0;scrollbar-gutter:stable;border:none;border-radius:8px;background:transparent}.api-websocket-message{display:grid;gap:4px;padding:0;border-bottom:1px solid color-mix(in srgb,var(--border) 68%,transparent);background:transparent}.api-websocket-direction{display:inline-flex;align-items:center;justify-content:center;width:22px;min-width:22px;height:22px;color:var(--muted)}.api-websocket-direction.incoming-msg{color:var(--accent)}.api-websocket-direction.outgoing-msg{color:#475569}.api-websocket-direction app-icon{font-size:17px}.api-websocket-message-line{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;gap:8px;align-items:center;min-height:34px;padding:3px 4px}.api-websocket-message-line time{color:var(--muted);font-size:.7rem;white-space:nowrap}.api-websocket-message-toggle{min-width:0;padding:0;border:none;background:transparent;color:var(--text);text-align:left}.api-websocket-message.expandable .api-websocket-message-toggle{cursor:default}.api-websocket-message-toggle code{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem}.api-websocket-message-actions{display:flex;gap:4px;width:32px;justify-content:flex-end;opacity:0;pointer-events:none;position:relative;z-index:1;transition:opacity .12s ease}.api-websocket-message-actions .api-icon-btn{width:32px;min-width:32px;height:32px;min-height:32px;padding:0;align-items:center;justify-content:center}.api-websocket-message-actions app-icon{font-size:18px;line-height:1}.api-websocket-message:hover .api-websocket-message-actions,.api-websocket-message:focus-within .api-websocket-message-actions{opacity:1;pointer-events:auto}.api-websocket-preview{position:fixed;z-index:70;display:grid;gap:8px;max-height:min(420px,calc(100vh - 120px));padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:0 18px 48px #0f172a2e;pointer-events:none}.api-websocket-preview-header{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:.72rem;font-weight:700}.api-websocket-preview pre{overflow:hidden;margin:0;max-height:min(360px,calc(100vh - 180px));padding:10px;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface) 96%,var(--accent) 4%);color:var(--syntax-text);font-family:var(--font-mono);font-size:.78rem;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.api-websocket-preview code{font-family:inherit}.api-websocket-preview .hljs-string,.api-websocket-preview .hljs-literal{color:var(--syntax-string)}.api-websocket-preview .hljs-attr{color:var(--syntax-attribute)}.api-websocket-preview .hljs-number{color:var(--syntax-number)}.api-websocket-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;max-width:none}.api-websocket-composer textarea{width:100%;min-width:0;min-height:36px;max-height:140px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--panel);box-sizing:border-box;color:var(--text);font:inherit;font-size:.82rem;line-height:1.35;outline:none;resize:vertical}.api-websocket-composer button{justify-self:auto;width:36px;min-width:36px;height:36px;padding-inline:0;align-self:start}.api-websocket-empty{display:grid;place-items:center;gap:4px;min-height:160px;padding:20px;text-align:center}.api-websocket-empty app-icon{color:var(--muted);font-size:28px}@media (max-width: 1200px){.api-shell.socket-open,.api-shell.socket-open.inspector-open{grid-template-columns:minmax(0,1fr);row-gap:18px}.api-shell.socket-open>.api-main{display:flex}.api-shell.socket-open .api-breadcrumb,.api-shell.socket-open .api-header,.api-shell.socket-open.inspector-open .api-breadcrumb,.api-shell.socket-open.inspector-open .api-header,.api-shell.socket-open .api-empty,.api-shell.socket-open .api-spec-container,.api-shell.socket-open app-portal-reading-pager[position=bottom]{grid-column:auto}.api-panel-resizer{display:none;grid-column:auto;grid-row:auto}.api-websocket-panel{position:static;grid-column:auto;grid-row:auto;height:auto;max-height:none}}@media (max-width: 720px){.api-websocket-toolbar{grid-template-columns:minmax(0,1fr) auto}}.api-loading{display:flex;flex-direction:column;gap:12px}.api-header-skeleton{height:36px;width:40%;background:var(--glass);border-radius:6px;animation:skeleton-pulse 1.2s ease-in-out infinite}.api-content-skeleton{height:300px;background:var(--glass);border-radius:var(--radius-sm);animation:skeleton-pulse 1.2s ease-in-out infinite}.api-error,.api-empty,.api-spec-empty{display:flex;flex:0 0 auto;flex-direction:column;align-items:center;gap:8px;padding:48px 24px;text-align:center}.error-icon,.empty-icon{font-size:2.5rem;color:var(--muted);opacity:.5}.api-error h2,.api-empty h2{margin:0;font-family:var(--font-heading);font-size:1.05rem}.api-error p,.api-empty p{margin:0;font-size:.88rem}.api-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:3px;padding:0 4px;color:var(--muted);font-size:.78rem}.api-breadcrumb app-icon{width:15px;font-size:15px}.api-breadcrumb-version{margin-left:8px;padding:1px 6px;border-radius:4px;background:color-mix(in srgb,var(--accent) 13%,transparent);color:var(--text);font-size:.68rem;font-weight:700}.api-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px 12px;padding:0 0 6px;border-bottom:2px solid var(--border)}.api-header-content{display:grid;align-content:start;gap:5px;min-width:0;width:100%;max-width:320px}.api-title-row{display:flex;align-items:center;gap:10px;min-width:0;margin-top:-2px;width:100%;max-width:100%}.api-title{display:block;flex:0 1 auto;min-width:0;max-width:calc(100% - 30px);margin:0;font-family:var(--font-heading);font-size:1rem;font-weight:600;text-align:left;line-height:1.1;overflow:hidden;overflow-wrap:anywhere;text-overflow:ellipsis;white-space:nowrap}.api-info-icon-btn{display:inline-flex;align-items:center;justify-content:center;flex:none;width:20px;min-width:20px;height:20px;padding:0;border:none;border-radius:999px;background:var(--accent);color:#fff;box-shadow:none;cursor:pointer}.api-info-icon-btn:hover,.api-info-icon-btn[aria-expanded=true]{background:color-mix(in srgb,var(--accent) 88%,#0f172a 12%)}.api-info-icon-btn:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 38%,white);outline-offset:2px}.api-info-icon-btn app-icon{font-size:18px}.api-toolbar-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;min-width:36px;height:36px;padding:0;border:none;border-radius:8px;background:transparent;color:var(--text);box-shadow:none}.api-toolbar-icon:hover{background:var(--panel);color:var(--accent);box-shadow:none;transform:none}.api-title-icon{font-size:24px;color:var(--accent)}.api-subtitle{margin:4px 0 0;font-size:.9rem;display:block}.api-file-path{font-family:var(--font-mono);font-size:.78rem}.api-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px;font-size:.76rem;color:var(--muted);text-transform:uppercase;letter-spacing:0}.api-actions{display:flex;align-items:flex-end;gap:6px;flex-wrap:nowrap;justify-content:flex-end;min-width:0;overflow:visible}.api-menu-field{display:grid;gap:3px;min-width:150px;text-align:left}.api-actions .btn.small{min-height:34px;padding:0 12px;border-radius:6px}.api-actions .api-more-btn{min-width:34px;padding:0}.api-overflow-separator{height:1px;margin:5px 4px;background:var(--border)}.api-menu-field span{color:var(--muted);font-size:.72rem;font-weight:600}.api-menu-field select,.response-content select,.api-form-field input,.api-form-field textarea,.parameter-control input{box-sizing:border-box;width:100%;min-height:34px;border:1px solid var(--border);border-radius:6px;background:var(--surface-strong);color:var(--text);font:inherit;font-size:.84rem}.api-menu-field select,.response-content select,.api-form-field input,.parameter-control input{padding:0 8px}.api-form-field textarea{min-height:130px;padding:8px}.api-menu-field.version-select{width:clamp(130px,12vw,150px);min-width:clamp(130px,12vw,150px)}.api-target-field{width:clamp(220px,22vw,240px);min-width:clamp(220px,22vw,240px)}.api-filter-field{width:clamp(220px,26vw,320px);min-width:clamp(220px,26vw,320px)}.api-target-loading strong{min-height:34px;display:inline-flex;align-items:center;color:var(--text);font-size:.84rem;font-weight:600}.api-target-combobox{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 34px}.api-target-combobox:focus-within input,.api-target-combobox:focus-within .api-target-toggle{border-color:color-mix(in srgb,var(--cs-color-brand, #5b2bbf) 42%,var(--border))}.api-target-combobox input{width:100%;min-height:34px;padding:0 8px;border:1px solid var(--border);border-right:none;border-radius:6px 0 0 6px;background:var(--surface-strong);color:var(--text);font:inherit;font-size:.84rem}.api-target-combobox input:focus,.api-target-combobox input:focus-visible,.api-target-toggle:focus,.api-target-toggle:focus-visible{outline:none;box-shadow:none}.api-target-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0;border:1px solid var(--border);border-radius:0 6px 6px 0;background:var(--surface-strong);color:var(--muted);box-shadow:none}.api-target-toggle:hover{background:var(--panel);color:var(--text);transform:none;box-shadow:none}.api-target-suggestions{position:absolute;top:calc(100% + 6px);right:0;left:0;z-index:35;display:grid;max-height:260px;overflow:auto;padding:6px;padding-inline-end:var(--portal-scrollbar-safe-padding);scrollbar-gutter:stable;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:0 14px 30px #0f172a24}.api-target-option{display:grid;gap:2px;width:100%;min-height:44px;padding:7px 8px;border:none;border-radius:6px;background:transparent;color:var(--text);font:inherit;text-align:left;box-shadow:none}.api-target-option strong{overflow:hidden;font-size:.84rem;text-overflow:ellipsis;white-space:nowrap}.api-target-option span{overflow:hidden;color:var(--muted);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.api-target-option:hover,.api-target-option.selected{background:var(--panel);transform:none;box-shadow:none}.api-target-empty{padding:8px;color:var(--muted);font-size:.78rem}.api-filter-field input{width:100%;min-height:34px;padding:0 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface-strong);color:var(--text);font:inherit;font-size:.84rem;box-shadow:none}.api-console-status{color:var(--muted);font-size:.78rem;font-weight:600}.api-version-tabs{display:flex;flex-wrap:wrap;gap:8px}.api-version-tab{border:1px solid var(--border);border-radius:999px;padding:6px 12px;background:var(--surface);color:var(--muted);font-size:.82rem;font-weight:600;cursor:pointer;box-shadow:none}.api-version-tab.active{background:#66e3ff1f;border-color:var(--accent);color:var(--text)}.api-spec-container{display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px;min-height:0;max-height:calc(100dvh - 210px)}.api-spec-loading{padding:24px;text-align:center}.api-details-card{border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface) 96%,var(--panel) 4%)}.api-details-body{display:grid;gap:10px;padding:12px}.api-details-summary{margin:0;font-size:.84rem;font-weight:600;line-height:1.45}.api-details-description{display:grid;gap:8px;color:var(--text);font-size:.84rem;line-height:1.55}.api-details-description>*{margin:0}.api-details-description ul,.api-details-description ol{padding-left:18px}.api-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px 14px}.api-detail-item{display:grid;gap:4px;min-width:0}.api-detail-label{color:var(--muted);font-size:.72rem;font-weight:600}.api-detail-item strong,.api-detail-item a,.api-detail-item code{overflow-wrap:anywhere}.api-detail-stack{display:grid;gap:2px;min-width:0}.api-groups-scroll{min-height:0;overflow:auto;overscroll-behavior:contain;padding-right:var(--portal-scrollbar-safe-padding);scrollbar-gutter:stable}.server-url{display:inline-block;max-width:100%;overflow-wrap:anywhere}.server-selector{display:flex;flex-direction:column;gap:6px}.server-selector select{min-width:280px;max-width:100%;padding:8px 10px;border-radius:8px;border:1px solid var(--border);background:var(--surface-strong);color:var(--text);font:inherit}.api-groups{display:flex;flex-direction:column;gap:0}.api-group{padding:0;overflow:hidden;border-bottom:1px solid var(--border);border-radius:0;background:var(--surface)}.api-group-toggle{width:100%;display:flex;align-items:center;gap:10px;padding:14px 16px;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer;box-shadow:none}.api-group-toggle:hover{background:var(--panel);transform:none;box-shadow:none}.api-group-heading{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;min-width:0}.api-group-title{font-family:var(--font-heading);font-size:1.08rem;font-weight:600}.api-group-description{font-size:.84rem;line-height:1.35;white-space:pre-wrap}.api-operation-list{display:flex;flex-direction:column;gap:10px;padding:0 20px 12px}.api-operation{border:1px solid var(--border);border-radius:6px;padding:0;background:var(--surface);overflow:hidden}.api-operation-toggle{display:grid;grid-template-columns:5.25rem minmax(14rem,22rem) minmax(0,1fr) auto 1.5rem;align-items:center;gap:10px;width:100%;min-height:50px;border:none;background:transparent;color:var(--text);text-align:left;cursor:pointer;box-shadow:none;transform:none}.api-operation-toggle:hover{box-shadow:none;transform:none}.api-operation[data-method=GET]{border-color:#22a06b;background:color-mix(in srgb,#22a06b 8%,var(--surface))}.api-operation[data-method=POST]{border-color:#2563eb;background:color-mix(in srgb,#2563eb 8%,var(--surface))}.api-operation[data-method=PUT]{border-color:#d97706;background:color-mix(in srgb,#d97706 8%,var(--surface))}.api-operation[data-method=PATCH]{border-color:#7c3aed;background:color-mix(in srgb,#7c3aed 8%,var(--surface))}.api-operation[data-method=DELETE]{border-color:#dc2626;background:color-mix(in srgb,#dc2626 8%,var(--surface))}.api-operation.expanded .api-operation-toggle{border-bottom:0}.api-operation-body{display:flex;flex-direction:column;gap:10px;padding:18px 20px 14px;background:var(--surface)}.method-badge,.api-chip{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;background:#828caa29;color:var(--text)}.api-operation-toggle .method-badge{grid-column:1;min-width:4.5rem}.method-badge[data-method=GET]{background:#4ec98c2e;color:#7cf0b7}.method-badge[data-method=POST]{background:#66e3ff2e;color:#7feeff}.method-badge[data-method=PUT]{background:#f1c36a2e;color:#f4d58b}.method-badge[data-method=PATCH]{background:#bf7fff2e;color:#d2a8ff}.method-badge[data-method=DELETE]{background:#ff6e6e2e;color:#ff9d9d}[data-theme=light] .method-badge[data-method=GET]{background:#e6f6ee;color:#166534}[data-theme=light] .method-badge[data-method=POST]{background:#eef4ff;color:#1d4ed8}[data-theme=light] .method-badge[data-method=PUT]{background:#fff7e6;color:#92400e}[data-theme=light] .method-badge[data-method=PATCH]{background:#f5edff;color:#6d28d9}[data-theme=light] .method-badge[data-method=DELETE]{background:#fee2e2;color:#991b1b}.api-chip.warning{background:#f1c36a2e;color:var(--accent-2)}.api-chip-row{display:flex;flex-wrap:wrap;gap:6px}.api-operation-path{grid-column:2;display:block;font-size:.88rem;min-width:0;overflow-wrap:anywhere}.api-operation-summary{grid-column:3;font-weight:650;min-width:0}.api-operation-toggle .api-chip.warning{grid-column:4}.api-operation-chevron{grid-column:5;justify-self:end}.api-operation-copy h3{margin:0;font-size:1rem;font-weight:600}.api-operation-copy p{margin:6px 0 0;line-height:1.55;white-space:pre-wrap}.operation-section{display:flex;flex-direction:column;gap:8px;padding-inline:20px;padding-block:0;border:0;border-radius:0;background:transparent;box-shadow:none}.compact-parameters{background:transparent;border:0;border-radius:0;padding-block:0;box-shadow:none}.compact-parameters+.compact-parameters{margin-top:-8px}.compact-parameters+.responses-section{margin-top:-4px}.operation-section h4{margin:0;color:var(--text);font-size:1rem;font-weight:700;text-align:center}.operation-overview{display:grid;grid-template-columns:5.25rem minmax(15rem,.9fr) minmax(12rem,1fr) auto;gap:12px;align-items:start;padding-inline:20px}.operation-copy{grid-column:3;display:grid;gap:8px;min-width:0}.operation-send-actions{grid-column:4;display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;min-width:max-content}.resource-desc{color:var(--text)}.resource-desc p{margin:0;line-height:1.55}@media (max-width: 760px){.api-operation-toggle{grid-template-columns:5rem minmax(0,1fr) 1.5rem}.api-operation-path{grid-column:2}.api-operation-summary,.api-operation-toggle .api-chip.warning{grid-column:1 / 3}.api-operation-chevron{grid-column:3;grid-row:1}.operation-overview{grid-template-columns:minmax(0,1fr)}.operation-copy,.operation-send-actions{grid-column:1}.operation-send-actions{justify-content:flex-start}}.operation-section-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px}.parameter-list{display:grid;gap:0;min-width:0}.parameter-row{display:grid;grid-template-columns:minmax(150px,22%) minmax(220px,34%) minmax(0,1fr);gap:12px;align-items:start;min-width:0;padding:5px 0}.parameter-identity{display:grid;gap:3px;min-width:0}.parameter-title{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}.parameter-title strong{overflow-wrap:anywhere;color:var(--text);font-size:.84rem}.parameter-required-badge{display:inline-flex;align-items:center;min-height:18px;padding:0 6px;border:1px solid color-mix(in srgb,var(--app-error-text-color, #dc2626) 30%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--app-error-text-color, #dc2626) 9%,var(--surface));color:var(--app-error-text-color, #dc2626);font-size:.66rem;font-weight:800}.parameter-type{overflow:hidden;color:var(--muted);font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.parameter-control{position:relative;min-width:0}.parameter-control input{box-sizing:border-box}.parameter-enum-control{position:relative;min-width:0}.parameter-enum-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:34px;padding:0 8px;border:1px solid var(--border);border-radius:6px;background:var(--surface-strong);color:var(--text);font:inherit;font-size:.84rem;text-align:left;cursor:pointer}.parameter-enum-trigger:hover,.parameter-enum-control.open .parameter-enum-trigger{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 16%,transparent)}.parameter-enum-trigger app-icon{flex:0 0 auto;color:var(--accent);font-size:18px}.parameter-enum-trigger-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.parameter-enum-menu{position:absolute;z-index:50;top:calc(100% + 4px);right:0;left:0;display:grid;max-height:320px;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:0 14px 30px #0f172a29}.parameter-enum-bulk-toggle{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;padding:7px 10px 0;color:var(--text);font-size:.82rem}.parameter-enum-bulk-toggle input{width:16px;min-height:16px;padding:0}.parameter-enum-search{padding:8px}.parameter-enum-search input{min-height:32px}.parameter-enum-options{display:grid;max-height:254px;overflow:auto;padding:4px var(--portal-scrollbar-safe-padding) 4px 0;scrollbar-gutter:stable}.parameter-enum-option{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;min-height:28px;padding:3px 10px;color:var(--text);font-size:.82rem}.parameter-enum-option:hover{background:var(--panel)}.parameter-enum-option input{width:16px;min-height:16px;padding:0}.parameter-enum-option span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.parameter-enum-empty{padding:8px 10px;color:var(--muted);font-size:.8rem}.parameter-help{display:grid;gap:4px;align-content:start;min-width:0;color:var(--text);font-size:.82rem;line-height:1.3}.parameter-description-block{position:relative;min-width:0}.parameter-description{margin:0;line-height:1.3}.parameter-description.clamped{display:-webkit-box;overflow:hidden;padding-inline-end:3.5rem;-webkit-box-orient:vertical;-webkit-line-clamp:2}.parameter-description-toggle{position:absolute;right:0;bottom:0;padding:0 0 0 14px;border:0;background:linear-gradient(90deg,transparent,var(--surface) 14px);color:var(--accent);font:inherit;font-size:.76rem;font-weight:700;line-height:1.3;cursor:pointer}.parameter-description-toggle:hover{text-decoration:underline}.parameter-description-toggle.expanded{position:static;margin-top:2px;padding:0;background:transparent}.parameter-schema-details{display:grid;gap:6px}.parameter-schema-details summary{width:fit-content;color:var(--accent);font-size:.78rem;font-weight:700;cursor:pointer}.parameter-schema-details[open]{padding-top:2px}.parameter-schema-details .api-schema-tree{overflow:auto;max-height:260px;padding:8px var(--portal-scrollbar-safe-padding) 8px 8px;scrollbar-gutter:stable;border:1px solid var(--border);border-radius:6px;background:var(--panel)}.api-schema-required{color:var(--app-error-text-color, #dc2626);padding-left:2px;font-weight:800}.body-content,.request-body-session{display:grid;gap:8px}.request-body-media-field{width:min(260px,100%)}.request-body-container{display:grid;gap:8px;width:100%;min-width:0}.request-body-container .api-body-field{display:block;width:100%;min-width:0}.request-body-container textarea{box-sizing:border-box;width:100%;min-height:104px}.api-json-editor,.request-body-reference,.request-body-schema,.request-body-reference .api-code-sample{box-sizing:border-box;width:100%}.api-json-editor{min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:6px;background:var(--surface-strong)}.api-json-editor.invalid{border-color:var(--app-error-text-color, #dc2626);box-shadow:0 0 0 2px color-mix(in srgb,var(--app-error-text-color, #dc2626) 12%,transparent)}.api-json-editor .cm-editor{min-height:104px;max-height:320px;color:var(--text);background:transparent;font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace);font-size:.84rem;line-height:1.45}.api-json-editor .cm-focused{outline:none}.api-json-editor .cm-scroller{overflow:auto;font-family:inherit}enreach-cloud-services-dialog-frame .api-json-editor .cm-editor{min-height:240px;max-height:360px}enreach-cloud-services-dialog-frame .api-json-editor .cm-scroller{max-height:360px;scrollbar-gutter:stable}.doc-source-editor .cm-scroller,.doc-preview-panel,.doc-editor-modebar{scrollbar-gutter:stable}.doc-source-editor-full .cm-scroller{max-height:none;padding-right:var(--portal-scrollbar-safe-padding)}.api-json-editor .cm-content{padding:8px 0;caret-color:var(--text)}.api-json-editor .cm-line{padding:0 8px}.api-json-editor .cm-gutters{border-right-color:var(--border);background:color-mix(in srgb,var(--surface-strong) 92%,var(--panel) 8%);color:var(--muted)}.api-json-editor .cm-cursor,.api-json-editor .cm-dropCursor{border-left-color:var(--text)}.api-json-editor .cm-selectionBackground,.api-json-editor .cm-content ::selection{background:#5b2bbf2e}.api-json-editor-error{margin:-2px 0 0}.doc-source-validation{margin:8px 0 0;padding:8px 10px;border:1px solid color-mix(in srgb,var(--app-error-text-color, #dc2626) 30%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--app-error-text-color, #dc2626) 8%,var(--surface));color:var(--app-error-text-color, #dc2626);font-size:.82rem;line-height:1.35}.request-body-reference{display:grid;gap:6px;min-width:0}.api-example-field{width:min(260px,100%)}.api-example-label{color:var(--muted);font-size:.78rem;font-weight:700}.api-example-description{margin:0;font-size:.8rem;line-height:1.4}.request-body-schema{min-width:0;max-height:420px;overflow:auto;padding:12px var(--portal-scrollbar-safe-padding) 12px 12px;scrollbar-gutter:stable;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface) 96%,var(--accent) 4%);box-shadow:0 4px 12px #0f172a14}.content-header{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.api-content-row,.response-summary-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px;min-width:0}.api-content-row h4,.response-section-header h4{margin-right:auto}.api-media-type{color:var(--muted);font-size:.78rem}.content-toggle{display:inline-flex;gap:4px}.content-toggle .active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--surface))}.execute{width:auto;min-height:34px;margin:0;border:none;border-radius:6px;background:var(--accent);color:#fff;font:inherit;font-size:.84rem;font-weight:750;padding:0 14px;cursor:pointer;box-shadow:none;transform:none}.api-operation[data-method=GET] .execute:not(:disabled){background:#22a06b}.api-operation[data-method=POST] .execute:not(:disabled){background:#2563eb}.api-operation[data-method=PUT] .execute:not(:disabled){background:#d97706}.api-operation[data-method=PATCH] .execute:not(:disabled){background:#7c3aed}.api-operation[data-method=DELETE] .execute:not(:disabled){background:#dc2626}.execute:hover:not(:disabled){box-shadow:none;transform:none}.execute:disabled{cursor:not-allowed;opacity:.45}.api-try-it{padding-inline:20px}.api-try-it-result{display:grid;gap:8px;margin:0;padding:10px 0 0;color:var(--text);box-shadow:none}.api-try-it-result h4{margin:0;color:var(--text);font-size:.95rem}.try-it-title{margin:2px 0 0;color:var(--muted);font-size:.78rem;font-weight:600}.request-path{display:inline-block;max-width:100%;padding:8px 12px;border:1px solid #ccc;border-radius:8px;background:#f9f9f9;color:#1e90ff;overflow-wrap:anywhere}.api-try-it-result>.response-code{display:inline-block;width:fit-content;padding:4px 8px;border:1px solid var(--border);border-radius:999px;background:var(--panel);color:var(--text)}.response-data{display:grid;gap:4px;padding:4px 0}.response-code{color:var(--text);font-size:.95rem;font-weight:700}.response-desc{flex:1 1 220px;min-width:min(100%,220px)}.response-media-select{min-height:32px;max-width:220px}.response-example-field{max-width:260px}.response-empty{margin-left:auto}.response-schema{max-width:1000px;margin-top:4px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--schema-container-background-color, var(--surface));box-shadow:0 3px 10px #0f172a29}.api-code-sample{position:relative;display:grid;min-width:0}.api-code-sample pre{margin:0;padding:12px max(44px,var(--portal-scrollbar-safe-padding)) 12px 12px;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface) 96%,var(--accent) 4%);overflow:auto;scrollbar-gutter:stable;white-space:pre;color:var(--syntax-text);font-family:var(--font-mono);font-size:.8rem;line-height:1.5}.api-code-sample code{font-family:inherit}app-portal-version-history .vh-diff .d2h-file-header{display:none}app-portal-version-history .vh-diff table{width:100%;border-collapse:collapse}app-portal-version-history .vh-diff .d2h-code-linenumber{width:70px;padding:0 8px;border-right:1px solid var(--border);color:var(--muted);text-align:right}app-portal-version-history .vh-diff .d2h-code-line{padding:1px 10px;color:var(--portal-diff-line-text)}app-portal-version-history .vh-diff .d2h-code-line-prefix{display:inline-block;width:18px}app-portal-version-history .vh-diff .d2h-code-line-ctn{overflow-wrap:anywhere;white-space:pre-wrap}app-portal-version-history .vh-diff .d2h-ins{background:var(--portal-diff-insert-bg)}app-portal-version-history .vh-diff .d2h-del{background:var(--portal-diff-delete-bg)}app-portal-version-history .vh-diff ins,app-portal-version-history .vh-diff del{border-radius:2px;text-decoration:none}app-portal-version-history .vh-diff ins{background:var(--portal-diff-insert-token-bg)}app-portal-version-history .vh-diff del{background:var(--portal-diff-delete-token-bg)}.api-code-sample .hljs-string,.api-code-sample .hljs-literal{color:var(--syntax-string)}.api-code-sample .hljs-attr{color:var(--syntax-attribute)}.api-code-sample .hljs-number{color:var(--syntax-number)}.api-copy-code-btn{position:absolute;top:8px;right:8px;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:30px;min-width:30px;min-height:30px;padding:0;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--muted);font:inherit;cursor:pointer}.api-copy-code-btn app-icon{font-size:17px}.api-copy-code-btn:hover{border-color:var(--accent);color:var(--accent)}.api-dialog-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:24px;background:#0f172a6b}.api-dialog{display:grid;gap:16px;width:min(460px,100%);padding:18px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:0 20px 55px #0f172a40}.api-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.api-dialog-header h2{margin:0;font-size:1.05rem}.api-dialog-kicker{margin:0 0 2px;color:var(--muted);font-size:.7rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.api-history-dialog{width:min(1120px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:hidden}.api-management-dialog-content{display:grid;gap:16px;min-height:0}.api-management-toolbar,.api-version-manager-title-row,.api-version-manager-meta,.api-version-manager-actions,.api-history-source-header,.api-history-source-actions{display:flex;align-items:center;gap:8px}.api-management-toolbar{justify-content:space-between}.api-management-toolbar p{margin:0}.api-management-empty{display:grid;place-items:center;gap:8px;min-height:150px;border:1px dashed var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface) 94%,var(--panel) 6%);text-align:center}.api-management-empty p{margin:0}.api-version-manager-list{display:grid;gap:6px;min-height:0;max-height:min(420px,calc(100dvh - 240px));overflow:auto;padding-right:var(--portal-scrollbar-safe-padding);scrollbar-gutter:stable}.api-version-manager-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.api-version-manager-row.active{border-color:color-mix(in srgb,var(--accent) 38%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--surface))}.api-version-manager-main{display:grid;gap:4px;min-width:0}.api-version-manager-title-row{min-width:0}.api-version-manager-title-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.api-version-manager-meta{flex-wrap:wrap;color:var(--muted);font-size:.78rem}.api-version-manager-meta span+span:before{content:"\b7";margin-right:8px;color:var(--border-strong, var(--border))}.api-version-manager-actions{justify-content:flex-end;flex-wrap:wrap}.api-version-manager-actions app-icon{font-size:17px}.api-history-layout{display:grid;grid-template-columns:minmax(210px,260px) minmax(0,1fr);gap:14px;min-height:0}.api-history-list{display:grid;align-content:start;gap:6px;max-height:min(560px,calc(100dvh - 210px));overflow:auto;padding-right:var(--portal-scrollbar-safe-padding);scrollbar-gutter:stable}.api-history-version{display:grid;gap:2px;width:100%;padding:9px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font:inherit;text-align:left;cursor:pointer}.api-history-version:hover,.api-history-version.active{border-color:color-mix(in srgb,var(--accent) 42%,var(--border));background:color-mix(in srgb,var(--accent) 7%,var(--surface))}.api-history-version span{overflow:hidden;color:var(--muted);font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.api-history-source-panel{display:grid;align-content:start;gap:10px;min-width:0}.api-history-current-source{display:grid;gap:10px;min-width:0}.api-history-source-header{justify-content:space-between}.api-history-source-header h3,.api-history-source-header p{margin:0}.api-history-source-actions{justify-content:flex-end}.api-history-dialog .api-history-copy-btn{position:static;inset:auto}.api-history-code pre{max-height:min(560px,calc(100dvh - 250px))}.detail-list{display:flex;flex-direction:column;gap:8px}.detail-card{border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:var(--panel);display:flex;flex-direction:column;gap:8px}.detail-card-head{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.detail-card-body{display:flex;flex-direction:column;gap:6px}.detail-card-body code,.response-content code{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.8rem}.detail-card-body p{margin:0;line-height:1.5}.detail-card pre,.response-content pre{margin:0;padding:10px;border-radius:8px;background:#0000002e;overflow-x:auto;white-space:pre-wrap;font-size:.76rem}.response-content .api-code-sample pre,.api-try-it-result .api-code-sample pre{padding:12px 44px 12px 12px;border:1px solid var(--border);background:#f8fafc;color:var(--syntax-text);white-space:pre-wrap;font-size:.8rem;line-height:1.5}[data-theme=dark] .response-content .api-code-sample pre,[data-theme=dark] .api-try-it-result .api-code-sample pre{background:#111827}.response-content .api-code-sample code,.api-try-it-result .api-code-sample code{overflow-wrap:normal;white-space:inherit;font-size:inherit}.response-content{display:flex;flex-direction:column;gap:4px}.content-body{display:grid;gap:6px}.api-login-content .api-login-form{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;row-gap:12px;align-items:start}.api-login-content .api-form-field{gap:6px;min-width:0}.api-login-content .api-form-field input{width:100%;min-width:0}.api-login-content .api-checkbox-field{align-self:end;min-height:36px;height:36px;align-items:center;flex-wrap:nowrap;gap:10px;padding:0 2px;color:var(--text)}.api-login-content .api-checkbox-field input{width:18px;height:18px;margin:0;flex:0 0 auto}.api-login-content .api-checkbox-field span{min-width:0;line-height:1.2}app-api-viewer .api-login-content .api-checkbox-field{display:flex;flex-direction:row;align-self:end;align-items:center;justify-self:start;justify-content:flex-start;flex-wrap:nowrap;width:max-content;padding-left:8px}@media (max-width: 1180px){.api-header{grid-template-columns:minmax(0,1fr);justify-items:stretch}.api-actions{flex-wrap:wrap;justify-content:flex-start}}@media (max-width: 900px){.api-header{grid-template-columns:minmax(0,1fr);justify-items:stretch}.api-actions{justify-content:flex-start}.api-title{text-align:left}.api-target-field,.api-menu-field{min-width:min(100%,240px)}.api-spec-container{max-height:none}.api-groups-scroll{overflow:visible;padding-right:0}.api-details-grid,.api-version-manager-row,.api-history-layout{grid-template-columns:minmax(0,1fr)}.api-management-toolbar,.api-history-source-header{align-items:flex-start;flex-direction:column}.api-version-manager-actions,.api-history-source-actions{justify-content:flex-start}.api-filter-field{min-width:min(100%,240px)}.server-selector select{min-width:0;width:100%}.operation-section-header{justify-content:flex-start}.parameter-row{grid-template-columns:minmax(0,1fr);gap:8px}.api-try-it{padding-inline:0}.api-login-content .api-login-form{grid-template-columns:minmax(0,1fr)}}
