:root{color-scheme:light;--bg: #d6ddd9;--panel: rgba(246, 243, 236, .92);--panel-muted: rgba(228, 233, 229, .72);--ink: #132121;--ink-soft: #4a5d58;--line: rgba(19, 33, 33, .12);--accent: #0f5964;--accent-strong: #ca5c2c;--danger: #8a3f2d;--shadow: 0 18px 40px rgba(35, 49, 44, .12);font-family:Segoe UI Variable Display,Bahnschrift,Trebuchet MS,sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;background:radial-gradient(circle at top right,rgba(202,92,44,.14),transparent 28%),radial-gradient(circle at left 20%,rgba(15,89,100,.16),transparent 36%),linear-gradient(180deg,#dfe7e3 0%,var(--bg) 100%);color:var(--ink)}body{min-height:100vh;overflow:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{display:grid;grid-template-rows:1fr auto;height:100vh;overflow:hidden;animation:rise-in .32s ease-out}.app-shell.theme-dark{color-scheme:dark;--bg: #12191b;--panel: rgba(22, 30, 34, .92);--panel-muted: rgba(35, 46, 50, .86);--ink: #e9f2ef;--ink-soft: #a1b7b1;--line: rgba(226, 238, 233, .12);--accent: #7ec8d5;--accent-strong: #f2a16a;--danger: #f1a59a;--shadow: 0 22px 44px rgba(0, 0, 0, .34);background:radial-gradient(circle at top right,rgba(242,161,106,.14),transparent 28%),radial-gradient(circle at left 20%,rgba(126,200,213,.16),transparent 36%),linear-gradient(180deg,#172022,#101719);color:var(--ink)}.app-shell.theme-dark .canvas-scroll-region{color-scheme:light;--bg: #d6ddd9;--panel: rgba(246, 243, 236, .92);--panel-muted: rgba(228, 233, 229, .72);--ink: #132121;--ink-soft: #4a5d58;--line: rgba(19, 33, 33, .12);--accent: #0f5964;--accent-strong: #ca5c2c;--danger: #8a3f2d;--shadow: 0 18px 40px rgba(35, 49, 44, .12)}.app-shell.theme-dark .topbar,.app-shell.theme-dark .footer-bar,.app-shell.theme-dark .editor-toolbar,.app-shell.theme-dark .shortcut-row,.app-shell.theme-dark .canvas-overlay-card{background:#10181ad1;border-color:var(--line)}.app-shell.theme-dark .topbar-status,.app-shell.theme-dark .control-group{background:var(--panel-muted);border-color:var(--line)}.app-shell.theme-dark .sidebar-region.collapsed{background:none;border-right-color:transparent}.app-shell.theme-dark .sidebar{background:linear-gradient(180deg,#151d21f5,#0f1618f5)}.app-shell.theme-dark .sidebar-edge-toggle{background:#131b1ef5;border-color:var(--line);box-shadow:0 14px 26px #00000057}.app-shell.theme-dark .sidebar-rail-button,.app-shell.theme-dark .page-registry-drag-handle,.app-shell.theme-dark .page-registry-page,.app-shell.theme-dark .page-note-empty,.app-shell.theme-dark .library-search-input,.app-shell.theme-dark .pid-location-button,.app-shell.theme-dark .field input,.app-shell.theme-dark .field textarea,.app-shell.theme-dark .field select,.app-shell.theme-dark .control-group select,.app-shell.theme-dark .page-input,.app-shell.theme-dark .stepper-button,.app-shell.theme-dark .stepper-value,.app-shell.theme-dark .field-pick-button,.app-shell.theme-dark .ghost-button,.app-shell.theme-dark .mode-button,.app-shell.theme-dark .rgb-field input,.app-shell.theme-dark .color-picker{background:#1d272be0;border-color:var(--line);color:var(--ink)}.app-shell.theme-dark .sidebar-rail-button.active,.app-shell.theme-dark .circuit-card.selected,.app-shell.theme-dark .qc-thread-card.selected{background:linear-gradient(180deg,#263237f5,#1b2428f5)}.app-shell.theme-dark .page-registry-row.current,.app-shell.theme-dark .style-summary,.app-shell.theme-dark .field-meta,.app-shell.theme-dark .circuit-chip,.app-shell.theme-dark .pill,.app-shell.theme-dark .pid-location-button.current,.app-shell.theme-dark .mode-button.active,.app-shell.theme-dark .canvas-inline-toggle.active{background:#7ec8d529;border-color:#7ec8d542;color:var(--accent)}.app-shell.theme-dark .sidebar-rail-tooltip,.app-shell.theme-dark .field-hint-bubble{background:#080c0df5;color:#f5f9f7f7;box-shadow:0 16px 30px #0000005c}.app-shell.theme-dark .sidebar-rail-tooltip span{color:#f5f9f7cc}.app-shell.theme-dark .field-warning,.app-shell.theme-dark .qc-chip{color:#f2bf9f}.app-shell.theme-dark .page-note-editor{background:#785f202e;border-color:#cdab5d38}.app-shell.theme-dark .page-note-chip{background:#58481866;border-color:#cdab5d47}.app-shell.theme-dark .page-note-chip.selected{background:#91741e94}.app-shell.theme-dark .qc-summary-card,.app-shell.theme-dark .qc-thread-editor{background:#74421f33;border-color:#d786482e}.app-shell.theme-dark .qc-thread-card{background:#30231ab3;border-color:#d7864838}.app-shell.theme-dark .label-panel,.app-shell.theme-dark .metadata-collapsible,.app-shell.theme-dark .pid-location-panel{background:#1f282cbd;border-color:var(--line)}.app-shell.theme-dark .notice-banner{background:linear-gradient(135deg,#ac653852,#281f18f0);border-color:#f2a16a47}.app-shell.theme-dark .cloud-panel{background:linear-gradient(135deg,#24537866,#141c24f0);border-color:#71ace438}.app-shell.theme-dark .cloud-project-row,.app-shell.theme-dark .cloud-email-input{background:#1d272be0;border-color:var(--line);color:var(--ink)}.app-shell.theme-dark .cloud-project-row.active{background:#1f3a52c7}.app-shell.theme-dark .primary-button{background:linear-gradient(135deg,#2f8f9e,#1f6472)}.app-shell.theme-dark .danger-button{background:#be685924;border-color:#f1a59a3d}.app-shell.theme-dark .library-search-input::placeholder,.app-shell.theme-dark .field input::placeholder,.app-shell.theme-dark .field textarea::placeholder,.app-shell.theme-dark .page-input::placeholder{color:#a1b7b1b8}.topbar,.footer-bar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f8f4edc7;border-bottom:1px solid var(--line)}.topbar{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:.75rem 1.2rem .7rem}.topbar.collapsed{padding-block:.55rem}.brand-block{display:flex;align-items:center;gap:.85rem;min-width:0}.brand-block h1,.sidebar-header h2,.inspector-header h3{margin:0;font-weight:700;letter-spacing:-.03em}.status-line,.footer-bar,.shortcut-row,.empty-panel span,.circuit-card span{color:var(--ink-soft)}.eyebrow{margin:0 0 .3rem;color:var(--accent);font-size:.74rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.brand-wordmark{margin:0;color:var(--accent);font-size:1rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.topbar-status,.topbar-actions{display:flex;align-items:center;gap:.65rem;min-width:0}.topbar-status{min-width:240px;max-width:min(52vw,560px);padding:.48rem .72rem;border-radius:999px;background:var(--panel-muted);border:1px solid rgba(19,33,33,.08)}.topbar-status .control-label{flex:0 0 auto}.topbar-actions{justify-content:end;flex-wrap:wrap}.topbar-action{min-height:36px}.toolbar-cluster,.control-group,.shortcut-row,.swatch-row,.rgb-inputs,.toggle,.style-summary{display:flex;align-items:center;gap:.65rem}.toolbar-cluster{flex-wrap:wrap;justify-content:end}.control-group{padding:.65rem .8rem;background:var(--panel-muted);border:1px solid rgba(19,33,33,.08);border-radius:18px}.control-stack{display:grid;gap:.6rem;align-items:start}.status-group{min-width:260px;max-width:420px}.control-label{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)}.workspace{display:grid;grid-template-columns:460px minmax(0,1fr);height:100%;min-height:0;overflow:hidden;align-items:stretch}.workspace.sidebar-collapsed{grid-template-columns:108px minmax(0,1fr)}.sidebar-region{position:relative;min-width:0;min-height:0;height:100%}.sidebar-region.collapsed{background:none;border-right:0}.sidebar{display:block;height:100%;min-height:0;overflow:hidden;padding:1rem;align-self:stretch;border-right:1px solid var(--line);background:linear-gradient(180deg,#f7f3ecf0,#ecf1eef0)}.sidebar-edge-toggle{position:absolute;top:22px;right:-16px;z-index:4;display:inline-flex;align-items:center;justify-content:center;width:32px;height:72px;padding:0;border:1px solid rgba(19,33,33,.08);border-radius:999px;background:#f8f4edf0;color:var(--ink);box-shadow:0 14px 26px #23312c24}.sidebar-edge-toggle.collapsed{right:-16px}.sidebar-edge-toggle:hover{transform:translateY(-1px)}.sidebar-edge-toggle-icon{font-size:1rem;font-weight:700;line-height:1}.sidebar-top{display:grid;gap:1rem}.sidebar-shell{display:grid;grid-template-columns:76px minmax(0,1fr);gap:1rem;height:100%;min-height:100%}.sidebar-shell.panel-collapsed{grid-template-columns:76px;gap:0;justify-content:start}.sidebar-rail,.sidebar-section-header{background:var(--panel);border:1px solid rgba(19,33,33,.08);border-radius:22px;box-shadow:var(--shadow)}.sidebar-rail{display:flex;flex-direction:column;gap:.75rem;padding:.85rem .6rem;overflow:visible}.sidebar-rail-button{position:relative;display:grid;place-items:center;width:100%;min-height:54px;padding:.55rem;text-align:center;border-radius:16px;border:1px solid transparent;background:#ffffff94;color:var(--ink)}.sidebar-rail-button.active{background:linear-gradient(180deg,#fffffffa,#e7eeeaf5);border-color:#0f596438}.sidebar-rail-icon{width:27px;height:27px;display:block;flex:0 0 auto;transform-box:fill-box;transform-origin:center}.sidebar-rail-icon--inspector{transform:translateY(.35px) scale(1.02)}.sidebar-rail-icon--registry{transform:translateY(.2px) scale(.98)}.sidebar-rail-icon--notes{transform:translateY(.4px) scale(.93)}.sidebar-rail-icon--data-qc{transform:translateY(-.1px) scale(.92)}.sidebar-rail-icon--circuitization-qc{transform:translate(-.2px,.45px) scale(.95)}.sidebar-rail-icon--library{transform:translateY(.5px) scale(.91)}.sidebar-rail-icon--options{transform:translateY(.1px) scale(.95)}.sidebar-rail-tooltip{position:absolute;left:calc(100% + 12px);top:50%;z-index:3;display:grid;gap:.15rem;min-width:168px;padding:.65rem .75rem;border-radius:14px;background:#132121f0;box-shadow:0 16px 30px #13212138;color:#fffcf5fa;opacity:0;pointer-events:none;transform:translateY(-50%) translate(-8px);transition:opacity .15s ease,transform .15s ease}.sidebar-rail-tooltip strong{font-size:.8rem;letter-spacing:.06em;text-transform:uppercase}.sidebar-rail-tooltip span{font-size:.74rem;line-height:1.3;color:#fffcf5d1}.sidebar-rail-button:hover .sidebar-rail-tooltip,.sidebar-rail-button:focus-visible .sidebar-rail-tooltip{opacity:1;transform:translateY(-50%) translate(0)}.sidebar-rail-mobile-label{display:none}.sidebar-panel{display:grid;grid-template-rows:auto minmax(0,1fr);gap:1rem;height:100%;min-width:0;min-height:0}.sidebar-panel-body{min-height:0;overflow:auto;padding-right:.25rem}.sidebar-panel-body>*{min-height:0}.sidebar-header,.canvas-header,.inspector-header,.sidebar-section-header{display:flex;justify-content:space-between;align-items:start;gap:1rem}.sidebar-header-note{display:block;margin-top:.25rem}.sidebar-header.compact{justify-content:flex-end}.circuit-list{display:grid;--circuit-card-height: 62px;gap:.5rem;align-content:start;padding-right:.3rem;min-height:0;max-height:calc(var(--circuit-card-height) * 15 + .5rem * 14);overflow:auto}.circuit-card,.empty-panel,.inspector,.page-registry-panel,.page-notes-panel,.menu-options-group{background:var(--panel);border:1px solid rgba(19,33,33,.08);border-radius:22px;box-shadow:var(--shadow)}.circuit-card{display:grid;gap:.18rem;width:100%;min-height:var(--circuit-card-height);padding:.72rem .82rem;text-align:left;border-left:6px solid var(--circuit-color, var(--accent));transition:transform .18s ease,background .18s ease}.circuit-card.compact{box-shadow:0 10px 24px #23312c14}.circuit-card-title{color:var(--ink);font-size:.95rem;line-height:1.2}.circuit-card-meta{font-size:.78rem}.circuit-card:hover{transform:translateY(-1px)}.circuit-card.selected{background:linear-gradient(180deg,#fffffff5,#e9efebf5)}.circuit-chip,.pill{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 .7rem;border-radius:999px;background:#0f596414;color:var(--accent);font-size:.82rem;font-weight:700}.empty-panel,.inspector,.page-registry-panel,.page-notes-panel,.menu-options-group{padding:1rem}.empty-panel{display:grid;gap:.35rem}.empty-panel.compact{padding:.85rem .95rem;border-radius:16px;box-shadow:none}.empty-panel p{margin:0;font-weight:700}.inspector{display:grid;gap:.65rem}.library-panel,.page-registry-panel,.page-notes-panel,.qc-panel{display:grid;gap:.85rem}.menu-options-panel{display:grid;gap:.85rem;align-content:start}.menu-options-group{display:grid;gap:.65rem}.menu-options-group-header{display:flex;justify-content:space-between;align-items:end;gap:.75rem}.menu-options-group-header h3{margin:0;font-weight:700;letter-spacing:-.03em}.menu-options-group-header .field-note{max-width:220px;text-align:right}.menu-options-actions{display:grid;gap:.45rem}.menu-option-button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.6rem;text-align:left;padding-inline:.82rem}.menu-option-shortcut{display:inline-flex;align-items:center;justify-content:center;min-height:22px;padding:0 .45rem;border-radius:999px;border:1px solid rgba(19,33,33,.14);background:#ffffffc7;color:var(--ink-soft);font-size:.7rem;font-weight:700;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.menu-option-toggle{display:flex;align-items:center;justify-content:space-between;gap:.8rem;min-height:44px;padding:.55rem .72rem;border-radius:14px;border:1px solid rgba(19,33,33,.1);background:#ffffff9e}.menu-option-toggle-copy{display:grid;gap:.1rem}.menu-option-toggle-copy strong{font-size:.82rem;color:var(--ink)}.menu-option-toggle-copy span{font-size:.74rem;line-height:1.3;color:var(--ink-soft)}.menu-option-toggle input{inline-size:17px;block-size:17px;accent-color:var(--accent)}.menu-option-range{display:grid;gap:.6rem;padding:.7rem .72rem;border-radius:14px;border:1px solid rgba(19,33,33,.1);background:#ffffff9e}.menu-option-range-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem}.menu-option-range input[type=range]{width:100%;margin:0;accent-color:var(--accent)}.menu-option-range-value{min-width:3.6rem;text-align:right;font-size:.78rem;font-weight:700;color:var(--ink)}.library-panel{align-content:start}.library-heading h3{margin:0;font-weight:700;letter-spacing:-.03em}.library-header-actions{display:grid;gap:.55rem;justify-items:end}.library-mode-toggle{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:end}.library-search-input{width:min(100%,240px);padding:.7rem .8rem;border:1px solid rgba(19,33,33,.12);border-radius:14px;background:#ffffffd1;color:var(--ink)}.page-registry-header{display:flex;justify-content:space-between;align-items:start;gap:1rem}.page-registry-actions{display:flex;flex-wrap:wrap;gap:.55rem;justify-content:end}.page-registry-header h3,.sidebar-section-header h3{margin:0;font-weight:700;letter-spacing:-.03em}.sidebar-section-header{padding:1rem}.page-registry-list{display:grid;--page-registry-row-height: 64px;gap:.5rem;max-height:calc(var(--page-registry-row-height) * 15 + .5rem * 14);overflow-y:auto;overflow-x:hidden;padding-right:.25rem}.page-registry-row{display:grid;grid-template-columns:20px 62px minmax(0,1fr);gap:.45rem;align-items:center;min-height:var(--page-registry-row-height);border-radius:14px;transition:box-shadow .12s ease,background-color .12s ease,opacity .12s ease;min-width:0}.page-registry-row.current{padding:.45rem;background:#0f59640f}.page-registry-row.dragging{opacity:.55}.page-registry-row.drop-before{box-shadow:inset 0 3px #0f596452}.page-registry-row.drop-after{box-shadow:inset 0 -3px #0f596452}.page-registry-drag-handle{display:grid;place-items:center;width:20px;min-height:34px;border-radius:10px;cursor:grab;-webkit-user-select:none;user-select:none;background:#ffffff94;border:1px solid rgba(19,33,33,.05)}.page-registry-drag-handle:active{cursor:grabbing}.page-registry-drag-dots{width:10px;height:18px;background:radial-gradient(circle,rgba(19,33,33,.48) 1.4px,transparent 1.6px) 0 0 / 5px 6px,radial-gradient(circle,rgba(19,33,33,.48) 1.4px,transparent 1.6px) 5px 0 / 5px 6px}.page-registry-page{min-width:62px;min-height:34px;padding:0 .65rem;border-radius:999px;border:1px solid rgba(19,33,33,.08);background:#fffc;color:var(--ink)}.page-registry-page.current{background:#0f596429;border-color:#0f59643d;color:var(--accent)}.page-registry-row-main{display:grid;gap:.25rem;min-width:0}.page-registry-meta{font-size:.75rem;line-height:1.2;display:block;min-width:0;min-height:0;padding:0;border-radius:0;background:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-registry-row input{min-width:0;min-height:38px;width:100%;max-width:100%;padding:.55rem .68rem;box-sizing:border-box}.page-note-editor{display:grid;gap:.7rem;padding:.85rem;border-radius:16px;background:#fff4c23d;border:1px solid rgba(160,125,38,.14)}.page-note-editor-header{display:flex;justify-content:space-between;align-items:start;gap:.8rem}.page-note-editor-header h3{margin:0;font-weight:700;letter-spacing:-.03em}.page-note-chip-list{display:flex;flex-wrap:wrap;gap:.5rem}.page-note-chip{max-width:100%;min-height:34px;padding:.35rem .7rem;border-radius:999px;border:1px solid rgba(160,125,38,.16);background:#fffbe0eb;color:var(--ink);font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.page-note-chip.selected{background:#fff0abf5;border-color:#a07d2647}.page-note-details{display:grid;gap:.6rem}.page-note-details .danger-button{justify-self:start}.page-note-empty{padding:.8rem .9rem;border-radius:14px;background:#ffffffa3;color:var(--ink-soft);font-size:.86rem}.qc-summary-card,.qc-thread-editor{display:grid;gap:.7rem;padding:1rem;border-radius:18px;background:#ffe8d06b;border:1px solid rgba(196,109,39,.16);box-shadow:var(--shadow)}.qc-summary-actions,.qc-thread-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem}.qc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.qc-section{align-content:start}.qc-missing-list,.qc-thread-list,.qc-thread-messages{display:grid;gap:.55rem}.qc-missing-card{gap:.35rem}.qc-chip-row{display:flex;flex-wrap:wrap;gap:.4rem}.qc-chip{display:inline-flex;align-items:center;min-height:24px;padding:0 .55rem;border-radius:999px;background:#c46d271f;color:#9b4a17;font-size:.72rem;font-weight:700}.qc-thread-card{display:grid;gap:.22rem;width:100%;padding:.8rem .9rem;border-radius:16px;border:1px solid rgba(196,109,39,.12);background:#fffbf7f0;color:var(--ink);text-align:left;transition:transform .16s ease,background .16s ease,border-color .16s ease}.qc-thread-card.selected{background:linear-gradient(180deg,#fff9f1fa,#ffecd6f5);border-color:#c46d273d}.qc-thread-card:hover{transform:translateY(-1px)}.qc-thread-preview{font-size:.84rem;line-height:1.35;color:var(--ink)}.qc-thread-message textarea{min-height:4.2rem}.inspector-empty{align-content:start}.style-summary{padding:.7rem .85rem;border-radius:14px;background:#0f59640f}.label-panel{display:grid;gap:.55rem;padding:.75rem .85rem;border-radius:14px;background:#1321210a}.pid-location-panel{display:grid;gap:.55rem;padding:.75rem .85rem;border-radius:14px;background:#0f59640d}.pid-location-grid{display:flex;flex-wrap:wrap;gap:.5rem}.pid-location-button{display:grid;gap:.1rem;min-width:0;padding:.55rem .7rem;border-radius:14px;border:1px solid rgba(19,33,33,.08);background:#ffffffd6;color:var(--ink);text-align:left}.pid-location-button strong{font-size:.8rem;line-height:1.2}.pid-location-button span{font-size:.72rem;color:var(--ink-soft)}.pid-location-button.current{background:#0f596424;border-color:#0f596438}.metadata-collapsible{border:1px solid rgba(19,33,33,.08);border-radius:14px;background:#13212108}.metadata-collapsible-summary{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.72rem .85rem;cursor:pointer;list-style:none;color:var(--ink-soft);font-size:.82rem;font-weight:700}.metadata-collapsible-summary::-webkit-details-marker{display:none}.metadata-collapsible-body{display:grid;gap:.55rem;padding:0 .85rem .85rem}.label-panel-header{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.label-panel-title{display:flex;align-items:center;gap:.4rem}.label-control-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.label-panel-empty{font-size:.8rem;color:var(--ink-soft)}.style-swatch{width:18px;height:18px;border-radius:999px;box-shadow:inset 0 0 0 1px #fffc}.field{display:grid;gap:.28rem}.field-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.field-title-row{display:flex;align-items:center;justify-content:space-between;gap:.55rem}.field-title-main{display:inline-flex;align-items:center;gap:.38rem;min-width:0}.field-meta{display:inline-flex;align-items:center;justify-content:center;min-height:22px;padding:0 .45rem;border-radius:999px;background:#0f596414;color:var(--accent);font-size:.72rem;font-weight:700;white-space:nowrap}.field span{font-size:.82rem;font-weight:700;color:var(--ink-soft)}.field-hint{position:relative;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex:0 0 auto;outline:none}.field-hint-trigger{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;background:#0f59641a;color:var(--accent);font-size:.68rem;font-weight:800;line-height:1}.field-hint-bubble{position:absolute;left:calc(100% + 8px);top:50%;z-index:4;min-width:180px;max-width:240px;padding:.5rem .6rem;border-radius:12px;background:#132121f0;box-shadow:0 16px 30px #1321212e;color:#fffcf5f5;font-size:.74rem;font-weight:500;line-height:1.35;opacity:0;pointer-events:none;transform:translateY(-50%) translate(-6px);transition:opacity .14s ease,transform .14s ease}.field-hint:hover .field-hint-bubble,.field-hint:focus-visible .field-hint-bubble{opacity:1;transform:translateY(-50%) translate(0)}.field-pick-button{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid rgba(19,33,33,.12);background:#fffc;color:var(--accent);font-size:1rem;font-weight:700;line-height:1}.field-pick-button.active{background:#0f596424;border-color:#0f59643d;color:var(--accent)}.field-note{font-size:.82rem;color:var(--ink-soft)}.field-warning{font-size:.78rem;font-weight:700;line-height:1.35;color:#a24b1f}.field input,.field textarea,.field select,.control-group select,.page-input{width:100%;padding:.75rem .8rem;border:1px solid rgba(19,33,33,.12);border-radius:14px;background:#ffffffd1;color:var(--ink)}.field input.field-input-warning,.field textarea.field-input-warning,.field select.field-input-warning{border-color:#a24b1f6b;background:#fff6eff2;box-shadow:0 0 0 1px #a24b1f2e}.inspector .field input,.inspector .field textarea,.inspector .field select,.label-panel .field input,.label-panel .field textarea,.label-panel .field select{padding:.62rem .72rem;border-radius:12px}.compact-field{gap:.24rem}.expandable-field{min-height:4.4rem;max-width:100%;resize:vertical}.stepper-field{gap:.38rem}.stepper-control{display:grid;grid-template-columns:34px minmax(0,1fr) 34px;align-items:center;gap:.45rem}.stepper-button{min-height:34px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;border:1px solid rgba(19,33,33,.12);background:#ffffffd1;color:var(--accent);font-size:1rem;font-weight:800;line-height:1;transition:transform .16s ease,background .16s ease,border-color .16s ease}.stepper-button:hover:not(:disabled){transform:translateY(-1px);background:#0f59641f;border-color:#0f596438}.stepper-button:disabled{cursor:not-allowed;opacity:.42;transform:none}.stepper-value{min-height:34px;padding:0 .75rem;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;border:1px solid rgba(19,33,33,.08);background:#ffffff9e;color:var(--accent);font-size:.8rem;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.page-input{width:92px}.canvas-panel{--toolbar-sticky-top: .75rem;--style-panel-sticky-top: 6.5rem;display:flex;flex-direction:column;gap:.45rem;flex:1;height:100%;min-height:0;overflow:hidden;padding:1rem 1.2rem 1.2rem;align-self:stretch}.canvas-panel.menu-bar-hidden{--style-panel-sticky-top: 1rem}.editor-toolbar,.shortcut-row{padding:1rem 1.2rem;background:#f8f4edbd;border:1px solid rgba(19,33,33,.08);border-radius:22px;box-shadow:var(--shadow)}.editor-toolbar,.tool-group{display:flex;align-items:center;gap:.65rem}.editor-toolbar{position:sticky;top:var(--toolbar-sticky-top);z-index:6;justify-content:space-between;flex-wrap:wrap}.tool-group{flex-wrap:wrap}.tool-group-sheet{gap:.5rem}.tool-group-zoom{margin-left:auto}.notice-banner{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;background:linear-gradient(135deg,#ca5c2c24,#fff7edf0);border:1px solid rgba(202,92,44,.24);border-radius:22px;box-shadow:var(--shadow)}.notice-banner strong,.notice-banner span{display:block}.notice-banner strong{margin-bottom:.25rem}.notice-banner-actions{display:flex;align-items:center;gap:.65rem;margin-left:auto}.cloud-panel{display:grid;gap:.9rem;margin-bottom:.9rem;padding:1rem 1.1rem;border-radius:22px;background:linear-gradient(135deg,#2768a81a,#f6f9fcf5);border:1px solid rgba(39,104,168,.16);box-shadow:var(--shadow)}.cloud-panel-header,.cloud-auth-row,.cloud-project-row{display:flex;align-items:center;gap:.75rem}.cloud-panel-header{justify-content:space-between}.cloud-panel-header strong,.cloud-panel-header span{display:block}.cloud-panel-header strong{margin-bottom:.2rem}.cloud-panel-actions{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.cloud-auth-row{flex-wrap:wrap}.cloud-email-input{min-width:min(100%,280px);flex:1 1 280px;min-height:40px;padding:0 .95rem;border-radius:999px;border:1px solid rgba(19,33,33,.1);background:#ffffffd1;color:var(--ink)}.cloud-project-list{display:grid;gap:.7rem}.cloud-project-row{justify-content:space-between;flex-wrap:wrap;padding:.85rem .95rem;border-radius:18px;border:1px solid rgba(19,33,33,.08);background:#ffffffb8}.cloud-project-row.active{border-color:#2768a833;background:#d6e8f8b3}.cloud-project-copy{min-width:0;flex:1 1 220px}.cloud-project-copy strong,.cloud-project-copy span{display:block}.cloud-project-copy strong{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.cloud-project-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.55rem}.cloud-project-pill{min-height:24px;padding:0 .6rem;font-size:.76rem}.cloud-project-copy span,.cloud-empty-state{color:var(--ink-soft);font-size:.9rem}.cloud-empty-state{padding:.1rem .05rem}.shortcut-row{flex-wrap:wrap;font-size:.88rem}.shortcut-hide-button{margin-left:auto;min-height:32px}.canvas-stage-shell{position:relative;flex:1;min-height:0}.canvas-overlay-layer{position:sticky;top:var(--style-panel-sticky-top);left:0;right:0;z-index:4;display:grid;height:0;padding:1rem;pointer-events:none}.canvas-overlay-groups{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-start;pointer-events:none}.canvas-overlay-groups.style-only{justify-content:end;width:fit-content;max-width:100%;justify-self:end}.canvas-overlay-card{display:grid;gap:.55rem;min-width:0;max-width:min(100%,420px);padding:.8rem .9rem;border-radius:18px;border:1px solid rgba(19,33,33,.08);background:#f8f4ede6;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:auto}.canvas-overlay-row{display:flex;align-items:center;gap:.65rem;min-width:0}.canvas-overlay-row-wrap{flex-wrap:wrap}.canvas-overlay-card-header{display:flex;align-items:center;justify-content:space-between;gap:.65rem}.canvas-inline-toggle{min-height:32px;padding:0 .8rem}.canvas-inline-toggle.active{background:#0f596429;border-color:#0f596438}.toolbar-icon-button,.toolbar-sheet-go{min-height:34px;padding:0 .8rem}.toolbar-icon-button{min-width:38px;font-size:1rem}.toolbar-page-pill{min-height:34px}.page-input.page-input-compact{width:118px;min-height:34px;padding:.55rem .65rem}.style-wheel{width:52px;height:42px}.canvas-overlay-card .rgb-field input{width:58px}.canvas-scroll-region{overflow:auto;height:100%;min-height:0;padding:0;border-radius:0;background:linear-gradient(rgba(19,33,33,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(19,33,33,.03) 1px,transparent 1px),linear-gradient(180deg,#cad4cf,#d9e1dc);background-size:26px 26px,26px 26px,100% 100%;border:1px solid rgba(19,33,33,.12)}.canvas-scroll-region.draw-enabled{cursor:crosshair}.canvas-scroll-region.pan-enabled{cursor:grab}.canvas-scroll-region.panning{cursor:grabbing;-webkit-user-select:none;user-select:none}.viewport-shell{display:grid;justify-items:center;align-content:center;gap:0;min-height:100%;min-width:100%}.viewport-stage-frame{position:relative}.viewport-stage{position:absolute;left:50%;top:50%;background:#fff;box-shadow:0 0 0 1px #1321211a;transform-origin:center center}.pdf-canvas,.overlay{display:block}.pdf-text-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;overflow:hidden;-webkit-user-select:text;user-select:text;cursor:text;pointer-events:auto}.pdf-text-layer-span{position:absolute;transform-origin:0 0;color:transparent;white-space:pre;overflow:visible;border-radius:2px}.pdf-text-layer-span::selection{background:#0f59643d}.pdf-text-layer-span.selected{background:#0f59642e;box-shadow:0 0 0 1px #0f59641f}.overlay{position:absolute;top:0;right:0;bottom:0;left:0}.overlay.draw-mode{cursor:crosshair}.overlay.pan-mode{cursor:grab}.overlay.pan-mode.panning{cursor:grabbing}.overlay.ocr-mode{cursor:copy}.overlay.text-selection-mode{pointer-events:none;cursor:text}.segment.selected{filter:drop-shadow(0 0 4px rgba(19,33,33,.16))}.draft-preview{stroke-dasharray:12 8}.vertex{fill:#fffffff0;stroke:#132121e6;stroke-width:1}.vertex.active,.vertex.draft{fill:var(--accent-strong);stroke:#fff}.snap-indicator{fill:#ffffff14;stroke:var(--accent-strong);stroke-width:1.2}.ocr-box{fill:#0f596414;stroke:#0f59646b;stroke-width:.8;transition:fill .14s ease,stroke .14s ease}.ocr-box:hover{fill:#0f596424;stroke:#0f5964b8}.ocr-focus-region{fill:#ca5c2c0a;stroke:#ca5c2c85;stroke-width:1;stroke-dasharray:6 4}.circuit-label{filter:drop-shadow(0 3px 10px rgba(19,33,33,.12))}.label-leader{pointer-events:none;stroke-linecap:round;stroke-opacity:.72}.circuit-label.selected{filter:drop-shadow(0 4px 14px rgba(19,33,33,.18))}.circuit-label-text{fill:var(--ink);font-weight:700;pointer-events:none;-webkit-user-select:none;user-select:none}.page-note{fill:#fff5a6f0;stroke:#a07d2657;stroke-width:.9;filter:drop-shadow(0 6px 14px rgba(110,86,24,.14))}.page-note.selected{stroke:#a07d269e;stroke-width:1.2;filter:drop-shadow(0 8px 18px rgba(110,86,24,.18))}.page-note-symbol{fill:#fff5a6f5;stroke:#a07d2666;stroke-width:1;filter:drop-shadow(0 5px 12px rgba(110,86,24,.14))}.page-note-symbol.selected{stroke:#a07d26ad;stroke-width:1.2;filter:drop-shadow(0 7px 16px rgba(110,86,24,.18))}.page-note-symbol-corner{fill:#ffe98afa;stroke:#a07d262e;stroke-width:.7}.page-note-symbol-glyph{fill:#2b2412e0;font-weight:800;pointer-events:none;-webkit-user-select:none;user-select:none}.page-note-corner{fill:#ffe98afa;stroke:#a07d262e;stroke-width:.7}.page-note-text{fill:#2b2412eb;font-size:12px;font-weight:600;pointer-events:none;-webkit-user-select:none;user-select:none}.viewport-note-editor-shell{width:100%;height:100%}.viewport-note-editor{width:100%;height:100%;padding:0;border:none;background:#fff8c847;color:#2b2412f0;font-size:12px;font-weight:600;line-height:1.4;resize:none;outline:none;box-sizing:border-box}.viewport-note-editor::placeholder{color:#6b5a25a8}.qc-thread-leader{pointer-events:none;stroke:#c46d27bd;stroke-width:.9;stroke-linecap:round}.qc-note{fill:#ffd5a3f2;stroke:#c46d276b;stroke-width:.9;filter:drop-shadow(0 6px 14px rgba(128,69,22,.16))}.qc-note.selected{stroke:#c46d27b3;stroke-width:1.2;filter:drop-shadow(0 8px 18px rgba(128,69,22,.2))}.qc-note-symbol{fill:#ffd5a3f7;stroke:#c46d2770;stroke-width:1;filter:drop-shadow(0 5px 12px rgba(128,69,22,.15))}.qc-note-symbol.selected{stroke:#c46d27b8;stroke-width:1.2;filter:drop-shadow(0 7px 16px rgba(128,69,22,.2))}.qc-note-symbol-corner{fill:#ffbb72fa;stroke:#c46d2738;stroke-width:.7}.qc-note-symbol-glyph{fill:#5a2f0de6;font-weight:800;pointer-events:none;-webkit-user-select:none;user-select:none}.qc-note-corner{fill:#ffbb72fa;stroke:#c46d2738;stroke-width:.7}.qc-note-text{fill:#5a2f0df0;font-size:12px;font-weight:600;pointer-events:none;-webkit-user-select:none;user-select:none}.annotation-resize-handle{cursor:nwse-resize}.annotation-resize-handle circle{stroke-width:1.1}.annotation-resize-handle-page circle{fill:#fffbf0f5;stroke:#a07d26e0}.annotation-resize-handle-qc circle{fill:#fff9f3f7;stroke:#c46d27e6}.annotation-resize-handle-grip{fill:none;stroke:#2b2412b3;stroke-width:1.1;stroke-linecap:round;pointer-events:none}.viewport-empty{width:min(760px,100%);padding:2.6rem;border:2px dashed rgba(19,33,33,.14);border-radius:28px;background:#fffbf5b8;text-align:center}.viewport-empty p{margin:0 0 .45rem;font-size:1.1rem;font-weight:700}.viewport-hud-layer{position:fixed;inset:auto auto auto auto;z-index:8;pointer-events:none}.ocr-suggestion-tray{position:absolute;left:50%;top:14px;transform:translate(-50%);display:grid;gap:.55rem;z-index:1;width:min(920px,calc(100% - 28px));max-width:calc(100% - 28px);padding:.75rem .85rem;border-radius:18px;background:#f7f3ecf5;border:1px solid rgba(19,33,33,.08);box-shadow:0 10px 30px #1321211f;pointer-events:auto}.ocr-suggestion-tray strong{font-size:.82rem;letter-spacing:.04em;text-transform:uppercase;color:#132121b8}.ocr-suggestion-list{display:flex;flex-wrap:wrap;gap:.5rem;max-height:168px;overflow:auto;align-content:flex-start;padding-right:.2rem}.ocr-suggestion-chip{min-height:34px;padding:.35rem .8rem;border-radius:999px;border:1px solid rgba(15,89,100,.18);background:#ffffffdb;color:var(--ink);font-size:.84rem}.ocr-suggestion-chip:hover{background:#0f59641f;border-color:#0f596447}.primary-button,.ghost-button,.mode-button,.danger-button{min-height:40px;padding:0 1rem;border-radius:999px;border:1px solid transparent;transition:transform .16s ease,background .16s ease,border-color .16s ease}.primary-button{background:linear-gradient(135deg,var(--accent),#114f74);color:#fff}.ghost-button,.mode-button{background:#ffffff9e;border-color:#13212114;color:var(--ink)}.new-circuit-button{color:var(--accent);font-weight:800;border-color:#0f59642e}.mode-button.active{background:#0f596429;border-color:#0f596438}.danger-button{background:#8a3f2d14;border-color:#8a3f2d2e;color:var(--danger)}.primary-button:hover,.ghost-button:hover,.mode-button:hover,.danger-button:hover,.swatch:hover{transform:translateY(-1px)}.primary-button:disabled,.ghost-button:disabled,.mode-button:disabled{cursor:not-allowed;opacity:.45;transform:none}.swatch{width:26px;height:26px;border-radius:999px;border:2px solid transparent;box-shadow:inset 0 0 0 1px #ffffffd9}.swatch.active{border-color:#132121b8}.color-picker{width:46px;height:36px;padding:.2rem;border:1px solid rgba(19,33,33,.12);border-radius:12px;background:#ffffffd1}.rgb-inputs{gap:.45rem}.rgb-field{display:grid;gap:.2rem;justify-items:center}.rgb-field span{font-size:.72rem;font-weight:700;color:var(--ink-soft)}.rgb-field input{width:64px;padding:.5rem .45rem;border:1px solid rgba(19,33,33,.12);border-radius:12px;background:#ffffffd1;color:var(--ink);text-align:center}.toggle{font-size:.92rem}.toggle input{accent-color:var(--accent)}.status-line{min-width:0;flex:1 1 320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.footer-bar{display:flex;justify-content:flex-start;align-items:center;gap:1rem;flex-wrap:wrap;padding:.8rem 1.5rem;font-size:.88rem}.footer-bar span{min-width:0}@keyframes rise-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1180px){.workspace,.workspace.sidebar-collapsed{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line)}.sidebar-shell,.sidebar-shell.panel-collapsed{grid-template-columns:1fr}.sidebar-rail{flex-direction:row;align-items:stretch;overflow:auto}.sidebar-rail-button{display:flex;align-items:center;justify-content:center;gap:.55rem;min-width:120px;min-height:auto;padding:.7rem .9rem}.sidebar-rail-tooltip{display:none}.sidebar-rail-mobile-label{display:inline;font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.footer-bar{flex-direction:column}.notice-banner{flex-direction:column;align-items:start}.notice-banner-actions{width:100%;margin-left:0;justify-content:flex-start;flex-wrap:wrap}.page-registry-header{flex-direction:column}.page-registry-actions{justify-content:start}.menu-options-group-header{flex-direction:column;align-items:start}.menu-options-group-header .field-note{max-width:none;text-align:left}.page-registry-row{grid-template-columns:auto auto minmax(0,1fr)}.tool-group-zoom{margin-left:0}.sidebar-panel-body{padding-right:0}.topbar{flex-direction:column;align-items:stretch}.brand-block{flex-direction:column;align-items:start}.topbar-status{max-width:none;width:100%}.shortcut-hide-button{margin-left:0}}@media(max-width:760px){.qc-grid,.label-control-grid{grid-template-columns:1fr}.field-hint-bubble{left:auto;right:0;top:calc(100% + 8px);transform:translateY(-6px)}.field-hint:hover .field-hint-bubble,.field-hint:focus-visible .field-hint-bubble{transform:translateY(0)}}.app-shell.portal-embedded{height:100%;min-height:0}.app-shell.portal-embedded .canvas-panel{--toolbar-sticky-top: 0;--style-panel-sticky-top: 3.7rem;gap:0;padding:0}.app-shell.portal-embedded .notice-banner,.app-shell.portal-embedded .cloud-panel,.app-shell.portal-embedded .editor-toolbar,.app-shell.portal-embedded .shortcut-row{border-left:none;border-right:none;border-radius:0;box-shadow:none}.app-shell.portal-embedded .notice-banner,.app-shell.portal-embedded .cloud-panel,.app-shell.portal-embedded .editor-toolbar,.app-shell.portal-embedded .shortcut-row,.app-shell.portal-embedded .footer-bar{margin:0}.app-shell.portal-embedded .editor-toolbar{gap:.45rem;padding:.5rem .7rem;justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.app-shell.portal-embedded .editor-toolbar::-webkit-scrollbar,.app-shell.portal-embedded .shortcut-row::-webkit-scrollbar{height:8px}.app-shell.portal-embedded .editor-toolbar::-webkit-scrollbar-thumb,.app-shell.portal-embedded .shortcut-row::-webkit-scrollbar-thumb{border-radius:999px;background:#1321212e}.app-shell.portal-embedded .tool-group{flex:0 0 auto;flex-wrap:nowrap;gap:.35rem}.app-shell.portal-embedded .tool-group-zoom{margin-left:0}.app-shell.portal-embedded .editor-toolbar :is(.primary-button,.ghost-button,.mode-button,.danger-button){min-height:34px;padding:0 .7rem;font-size:.8rem;white-space:nowrap}.app-shell.portal-embedded .editor-toolbar .toolbar-icon-button,.app-shell.portal-embedded .editor-toolbar .toolbar-sheet-go{min-height:34px;padding:0 .65rem}.app-shell.portal-embedded .editor-toolbar .toolbar-icon-button{min-width:34px;padding:0}.app-shell.portal-embedded .editor-toolbar .pill{min-height:32px;padding:0 .55rem;font-size:.76rem;white-space:nowrap}.app-shell.portal-embedded .editor-toolbar .page-input.page-input-compact{width:92px;min-height:32px;padding:.45rem .55rem}.app-shell.portal-embedded .shortcut-row{padding:.45rem .7rem;flex-wrap:nowrap;overflow-x:auto;white-space:nowrap}.app-shell.portal-embedded .canvas-overlay-layer{padding:.7rem}.portal-shell{display:grid;grid-template-columns:280px minmax(0,1fr);height:100vh;min-height:0;background:radial-gradient(circle at top right,rgba(202,92,44,.12),transparent 26%),radial-gradient(circle at left 18%,rgba(15,89,100,.14),transparent 34%),linear-gradient(180deg,#dfe7e3 0%,var(--bg) 100%)}.portal-shell--module{grid-template-columns:minmax(0,1fr)}.portal-module-error{display:grid;gap:.9rem;width:100%;max-width:none}.portal-module-error h2,.portal-module-error p{margin:0}.portal-module-error-actions{display:flex;flex-wrap:wrap;gap:.75rem}.portal-module-error-stack{margin:0;padding:.85rem 1rem;border-radius:16px;background:#13212114;color:var(--ink);font-size:.78rem;line-height:1.45;overflow:auto;white-space:pre-wrap;word-break:break-word}.portal-sidebar{display:flex;flex-direction:column;gap:1.25rem;min-height:0;overflow:auto;padding:1.5rem 1.25rem;border-right:1px solid var(--line);background:#f8f4edb8;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.portal-brand-block{display:grid;gap:.75rem}.portal-brand-block h1{margin:0;font-size:1.85rem;font-weight:800;letter-spacing:-.04em}.portal-sidebar-copy{margin:0;color:var(--ink-soft);line-height:1.55}.portal-nav{display:grid;gap:.65rem}.portal-nav-link{display:flex;align-items:center;padding:.9rem 1rem;border:1px solid rgba(19,33,33,.08);border-radius:18px;background:var(--panel);color:var(--ink);text-decoration:none;font-weight:700;box-shadow:0 10px 24px #23312c0f;transition:transform .18s ease,border-color .18s ease,background .18s ease}.portal-nav-link:hover,.portal-nav-link:focus-visible{transform:translateY(-1px)}.portal-nav-link.active{background:#0f596424;border-color:#0f59643d;color:var(--accent)}.portal-sidebar-meta,.portal-inline-badges,.portal-card-actions{display:flex;flex-wrap:wrap;gap:.65rem}.portal-sidebar-meta{margin-top:auto}.portal-main{min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr)}.portal-main--module{background:radial-gradient(circle at top right,rgba(202,92,44,.08),transparent 24%),radial-gradient(circle at left 18%,rgba(15,89,100,.1),transparent 30%),linear-gradient(180deg,#dfe7e3 0%,var(--bg) 100%)}.portal-header{display:flex;align-items:start;justify-content:space-between;gap:1rem;padding:1.15rem 1.5rem 1rem;border-bottom:1px solid var(--line);background:#f8f4edbd;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.portal-header>div{display:grid;gap:.35rem;min-width:0}.portal-header--module{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:.35rem;padding:.55rem .9rem}.portal-header strong{font-size:1.05rem;letter-spacing:-.02em}.portal-header span{color:var(--ink-soft);line-height:1.5}.portal-header-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:end;gap:.65rem}.portal-header-module-strip{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.9rem;min-width:0;width:100%}.portal-header-module-left{display:flex;align-items:center;gap:.7rem;min-width:0;flex:1 1 auto}.portal-header-module-title{display:flex;align-items:center;gap:.45rem;min-width:0;white-space:nowrap}.portal-header-brand-inline{color:var(--accent);font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.portal-header-title-separator{color:var(--ink-soft);font-weight:700}.portal-header-actions--module{flex:0 0 auto;flex-wrap:nowrap;gap:.5rem;margin-left:0;justify-content:flex-end;align-items:center;justify-self:end}.portal-header-actions--module .pill,.portal-header-actions--module .ghost-button{white-space:nowrap}.portal-user-pill{max-width:min(32vw,340px);overflow:hidden;text-overflow:ellipsis}.portal-header--module>.portal-status-message{min-width:0}.portal-back-button{flex:0 0 auto;min-height:34px;padding:0 .8rem;white-space:nowrap}.portal-content{min-width:0;min-height:0;display:flex;overflow:hidden}.portal-content--module{padding:0}.portal-page{flex:1;min-width:0;display:flex;flex-direction:column;gap:1rem;overflow:auto;padding:1.25rem 1.5rem 1.5rem}.portal-page--module{overflow:hidden;gap:.5rem;padding:0}.portal-login-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:radial-gradient(circle at top right,rgba(202,92,44,.14),transparent 28%),radial-gradient(circle at left 18%,rgba(15,89,100,.18),transparent 36%),linear-gradient(180deg,#dfe7e3 0%,var(--bg) 100%)}.portal-hero,.portal-card,.portal-module-header{border:1px solid rgba(19,33,33,.08);border-radius:24px;background:var(--panel);box-shadow:var(--shadow)}.portal-hero,.portal-module-header{display:grid;gap:.9rem;padding:1.35rem 1.4rem}.portal-login-card{width:min(720px,100%);gap:1.15rem}.portal-login-copy{display:grid;gap:.45rem}.portal-hero h2,.portal-card h3,.portal-module-header h2{margin:0;letter-spacing:-.03em}.portal-hero p,.portal-card p,.portal-module-header p{margin:0;color:var(--ink-soft);line-height:1.55}.portal-section{display:grid;gap:.8rem}.portal-section-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem}.portal-section-heading>div{display:grid;gap:.35rem}.portal-section-heading h3{margin:0;letter-spacing:-.03em}.portal-card-grid,.portal-project-list{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.portal-card{display:grid;gap:.9rem;padding:1.2rem 1.25rem}.portal-card-head{display:flex;align-items:start;justify-content:space-between;gap:1rem}.portal-card-head>div{display:grid;gap:.35rem;min-width:0}.portal-link-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.portal-route-list{display:grid;gap:.55rem;margin:0;padding-left:1.2rem;color:var(--ink-soft)}.portal-route-list code{font-size:.95rem}.portal-auth-card,.portal-callout,.portal-placeholder-card{background:linear-gradient(180deg,#f6f3ecfa,#ecf0eceb)}.portal-form-row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.portal-status-message{color:var(--ink-soft)}.portal-status-message-error{color:var(--danger)}.portal-metadata-list{display:grid;gap:.85rem;margin:0}.portal-metadata-list div{display:grid;gap:.2rem;padding-bottom:.75rem;border-bottom:1px solid rgba(19,33,33,.08)}.portal-metadata-list div:last-child{padding-bottom:0;border-bottom:none}.portal-metadata-list dt{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)}.portal-metadata-list dd{margin:0;font-weight:600}.portal-module-surface{flex:1;min-height:0;display:flex;overflow:hidden;border:none;border-radius:0;background:transparent;box-shadow:none}.portal-module-surface>*{flex:1;min-width:0;min-height:0}@media(max-width:1100px){.portal-shell{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.portal-sidebar{border-right:none;border-bottom:1px solid var(--line)}.portal-shell--module{grid-template-rows:auto minmax(0,1fr)}.portal-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.portal-header,.portal-page{padding-inline:1rem}.portal-header{padding-block:1rem}.portal-card-grid,.portal-project-list,.portal-nav{grid-template-columns:1fr}.portal-form-row,.portal-card-head,.portal-section-heading{flex-direction:column;align-items:stretch}.portal-header--module,.portal-page--module{padding-inline:.85rem}.portal-page--module{padding-inline:0}.portal-header:not(.portal-header--module) .portal-header-actions{width:100%;justify-content:start}.portal-header-actions--module{width:auto;justify-content:flex-end}.portal-module-surface{border-radius:18px}}:root{--app-root-font-size: 70%;--brand-blue: #313f73;--brand-blue-rgb: 49, 63, 115;--brand-orange: #f49531;--brand-orange-rgb: 244, 149, 49;--success: #36c283;--success-rgb: 54, 194, 131;--warning: #f0b35f;--warning-rgb: 240, 179, 95;--danger: #ea6e82;--danger-rgb: 234, 110, 130;--font-body: "Segoe UI Variable Text", "Aptos", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-display: "Segoe UI Variable Display", "Bahnschrift", "Aptos Display", "Segoe UI", sans-serif}:root[data-theme=light],body[data-theme=light]{--bg: #edf2fb;--panel: rgba(255, 255, 255, .9);--panel-strong: rgba(255, 255, 255, .98);--panel-muted: rgba(238, 243, 251, .92);--ink: #18213d;--ink-soft: #5d6789;--text-tertiary: #8891ad;--line: rgba(49, 63, 115, .12);--line-strong: rgba(49, 63, 115, .2);--accent: var(--brand-blue);--accent-soft: rgba(49, 63, 115, .1);--accent-strong: var(--brand-orange);--shadow: 0 24px 64px rgba(23, 33, 65, .12);--shadow-soft: 0 14px 36px rgba(23, 33, 65, .08);--app-bg: radial-gradient(circle at top left, rgba(244, 149, 49, .08), transparent 24%), radial-gradient(circle at top right, rgba(49, 63, 115, .08), transparent 28%), linear-gradient(180deg, #f7f9fd 0%, #edf2fb 52%, #e8eef8 100%);--shell-bg: radial-gradient(circle at top left, rgba(244, 149, 49, .08), transparent 20%), radial-gradient(circle at bottom right, rgba(49, 63, 115, .08), transparent 24%), linear-gradient(180deg, rgba(248, 250, 255, .96), rgba(235, 241, 250, .96));--panel-gradient: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(244, 247, 253, .92));--accent-panel: linear-gradient(160deg, rgba(49, 63, 115, .08), rgba(244, 149, 49, .08));--portal-bg: radial-gradient(circle at top left, rgba(244, 149, 49, .08), transparent 20%), radial-gradient(circle at bottom right, rgba(49, 63, 115, .08), transparent 24%), linear-gradient(180deg, rgba(248, 250, 255, .96), rgba(235, 241, 250, .96));--portal-surface: rgba(255, 255, 255, .06);--portal-surface-strong: rgba(255, 255, 255, .1);--portal-surface-accent: rgba(244, 149, 49, .18);--portal-panel-gradient: radial-gradient(circle at top right, rgba(var(--brand-orange-rgb), .1), transparent 30%), radial-gradient(circle at left top, rgba(var(--brand-blue-rgb), .1), transparent 36%), linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(241, 245, 252, .9));--portal-panel-accent: radial-gradient(circle at top right, rgba(var(--brand-orange-rgb), .16), transparent 28%), radial-gradient(circle at left top, rgba(var(--brand-blue-rgb), .12), transparent 34%), linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(242, 245, 251, .9));--portal-divider: rgba(49, 63, 115, .12);--portal-text: #18213d;--portal-text-soft: #5d6789;--portal-text-muted: #8891ad;--portal-shadow: 0 16px 38px rgba(18, 26, 56, .12);--portal-shadow-soft: 0 10px 24px rgba(18, 26, 56, .1)}:root[data-theme=dark],body[data-theme=dark]{--bg: #08111f;--panel: rgba(15, 23, 43, .84);--panel-strong: rgba(16, 25, 48, .96);--panel-muted: rgba(22, 33, 61, .9);--ink: #f4f7ff;--ink-soft: #a8b2d5;--text-tertiary: #7d88ae;--line: rgba(154, 171, 230, .15);--line-strong: rgba(154, 171, 230, .28);--accent: #95a8ff;--accent-soft: rgba(149, 168, 255, .16);--accent-strong: var(--brand-orange);--shadow: 0 34px 88px rgba(0, 0, 0, .36);--shadow-soft: 0 18px 44px rgba(0, 0, 0, .26);--app-bg: radial-gradient(circle at top left, rgba(244, 149, 49, .12), transparent 24%), radial-gradient(circle at top right, rgba(49, 63, 115, .3), transparent 30%), linear-gradient(180deg, #060d1a 0%, #08111f 54%, #0b1527 100%);--shell-bg: radial-gradient(circle at top left, rgba(244, 149, 49, .1), transparent 18%), radial-gradient(circle at bottom right, rgba(49, 63, 115, .26), transparent 24%), linear-gradient(180deg, rgba(8, 12, 24, .98), rgba(9, 14, 27, .98));--panel-gradient: linear-gradient(180deg, rgba(20, 29, 54, .94), rgba(11, 18, 34, .94));--accent-panel: linear-gradient(160deg, rgba(49, 63, 115, .24), rgba(244, 149, 49, .12));--portal-bg: radial-gradient(circle at top left, rgba(244, 149, 49, .1), transparent 18%), radial-gradient(circle at bottom right, rgba(49, 63, 115, .26), transparent 24%), linear-gradient(180deg, rgba(8, 12, 24, .98), rgba(9, 14, 27, .98));--portal-surface: rgba(255, 255, 255, .05);--portal-surface-strong: rgba(255, 255, 255, .085);--portal-surface-accent: rgba(244, 149, 49, .2);--portal-panel-gradient: radial-gradient(circle at top right, rgba(var(--brand-orange-rgb), .1), transparent 30%), radial-gradient(circle at left top, rgba(var(--brand-blue-rgb), .22), transparent 38%), linear-gradient(180deg, rgba(20, 29, 54, .94), rgba(11, 18, 34, .95));--portal-panel-accent: radial-gradient(circle at top right, rgba(var(--brand-orange-rgb), .16), transparent 28%), radial-gradient(circle at left top, rgba(var(--brand-blue-rgb), .28), transparent 34%), linear-gradient(180deg, rgba(24, 35, 64, .96), rgba(12, 19, 36, .96));--portal-divider: rgba(154, 171, 230, .15);--portal-text: #f4f7ff;--portal-text-soft: rgba(214, 222, 248, .76);--portal-text-muted: rgba(188, 198, 231, .58);--portal-shadow: 0 18px 42px rgba(7, 10, 24, .2);--portal-shadow-soft: 0 12px 28px rgba(7, 10, 24, .18)}html{font-size:var(--app-root-font-size)}html,body,#root{background:var(--app-bg);color:var(--ink);font-family:var(--font-body)}@media(max-width:1440px){:root{--app-root-font-size: 67.5%}}@media(max-width:1280px){:root{--app-root-font-size: 65%}}@media(max-width:1180px){:root{--app-root-font-size: 62.5%}}body{color-scheme:light}:root[data-theme=dark] body,body[data-theme=dark]{color-scheme:dark}body,button,input,select,textarea{font-family:var(--font-body)}h1,h2,h3,h4,.portal-header-title,.portal-stat-value,.app-logo-product,.portal-brand-block h1{font-family:var(--font-display)}::selection{background:rgba(var(--brand-orange-rgb),.28);color:var(--ink)}a,button,input,select,textarea{transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease,opacity .18s ease,transform .18s ease}a{color:inherit}:focus-visible{outline:none;box-shadow:0 0 0 2px rgba(var(--brand-orange-rgb),.16),0 0 0 5px rgba(var(--brand-orange-rgb),.24)}.primary-button,.ghost-button,.danger-button,.mode-button,.cloud-email-input,.field input,.field textarea,.field select,.control-group select,.page-input,.stepper-button,.stepper-value,.field-pick-button,.library-search-input,.pid-location-button,.rgb-field input,.color-picker{border-radius:16px}.primary-button,.ghost-button,.danger-button,.mode-button{min-height:42px;padding:0 1rem;border:1px solid var(--line);color:var(--ink);font-weight:600;letter-spacing:-.01em}.primary-button{border-color:rgba(var(--brand-blue-rgb),.28);background:linear-gradient(135deg,var(--brand-blue),#44559a);color:#f8faff;box-shadow:0 14px 28px #313f7342}.primary-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 18px 34px #313f7352}.ghost-button,.mode-button,.danger-button,.cloud-email-input,.field input,.field textarea,.field select,.control-group select,.page-input,.stepper-button,.stepper-value,.field-pick-button,.library-search-input,.pid-location-button,.rgb-field input,.color-picker{background:var(--panel-muted);border-color:var(--line);color:var(--ink)}.ghost-button:hover:not(:disabled),.mode-button:hover:not(:disabled),.danger-button:hover:not(:disabled),.field-pick-button:hover:not(:disabled),.pid-location-button:hover:not(:disabled){transform:translateY(-1px);border-color:var(--line-strong);box-shadow:var(--shadow-soft)}.danger-button{color:rgb(var(--danger-rgb));border-color:rgba(var(--danger-rgb),.24);background:rgba(var(--danger-rgb),.12)}.mode-button.active,.portal-nav-link.active,.portal-module-card.active,.sidebar-rail-button.active,.page-registry-row.current,.style-summary,.field-meta,.circuit-chip,.canvas-inline-toggle.active,.pid-location-button.current{background:linear-gradient(135deg,rgba(var(--brand-blue-rgb),.2),rgba(var(--brand-orange-rgb),.14));border-color:rgba(var(--brand-orange-rgb),.26);color:var(--ink);box-shadow:0 0 0 1px rgba(var(--brand-orange-rgb),.12),0 14px 32px #313f731f}.primary-button:disabled,.ghost-button:disabled,.mode-button:disabled,.danger-button:disabled{cursor:not-allowed;opacity:.48;transform:none;box-shadow:none}.cloud-email-input,.field input,.field textarea,.field select,.control-group select,.page-input,.stepper-value,.library-search-input,.rgb-field input{min-height:46px;padding:.75rem .9rem;border:1px solid var(--line);box-shadow:inset 0 1px #ffffff0a}.cloud-email-input::placeholder,.field input::placeholder,.field textarea::placeholder,.page-input::placeholder,.library-search-input::placeholder{color:var(--text-tertiary)}.pill{min-height:30px;padding:0 .75rem;border-radius:999px;border:1px solid var(--line);background:rgba(var(--brand-blue-rgb),.08);color:var(--ink-soft);font-size:.76rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.pill--accent{background:rgba(var(--brand-orange-rgb),.16);border-color:rgba(var(--brand-orange-rgb),.28);color:var(--accent-strong)}.pill--success{background:rgba(var(--success-rgb),.14);border-color:rgba(var(--success-rgb),.24);color:var(--success)}.pill--muted{background:rgba(var(--brand-blue-rgb),.08);border-color:var(--line);color:var(--ink-soft)}.portal-shell{grid-template-columns:320px minmax(0,1fr);--ink: var(--portal-text);--ink-soft: var(--portal-text-soft);--text-tertiary: var(--portal-text-muted);--line: transparent;--line-strong: rgba(255, 255, 255, .18);--panel: var(--portal-surface);--panel-muted: var(--portal-surface);--panel-gradient: var(--portal-panel-gradient);--accent-panel: var(--portal-panel-accent);background:var(--portal-bg);color:var(--portal-text)}.portal-sidebar{gap:1.5rem;padding:1.4rem 1.15rem;border-right:1px solid var(--portal-divider);background:transparent;box-shadow:none}.portal-brand-block,.portal-card,.portal-hero,.portal-module-header,.portal-login-brand-panel,.portal-stat-card,.portal-header,.portal-table-shell{border:none;background:var(--portal-panel-gradient);box-shadow:var(--portal-shadow)}.portal-brand-block,.portal-card,.portal-hero,.portal-module-header,.portal-stat-card,.portal-login-brand-panel,.portal-table-shell{border-radius:28px}.portal-brand-block{gap:.15rem;margin-bottom:.35rem;padding:0;background:transparent;box-shadow:none;justify-items:center;align-content:start}.portal-brand-block h1{margin:0;font-size:2.5rem;font-weight:900;line-height:1.04;letter-spacing:-.05em;text-align:center;color:var(--brand-orange)}.portal-brand-logo{margin-bottom:0;transform:translateY(-.12rem)}.portal-brand-block .app-logo--stacked{align-items:center}.portal-brand-block .app-logo--stacked .app-logo-mark-image{width:104px;max-width:none;height:auto}.portal-sidebar-copy{margin:0;color:var(--ink-soft);font-size:.95rem;line-height:1.65}.app-logo{display:flex;align-items:center;gap:.95rem;min-width:0}.app-logo--stacked{align-items:flex-start;flex-direction:column}.app-logo-mark{display:flex;align-items:center;justify-content:center;padding:0;border-radius:0;background:transparent;border:none;box-shadow:none}.app-logo-mark-image{display:block;width:143px;max-width:100%;height:auto}.app-logo--stacked .app-logo-mark-image{width:min(229px,100%)}.app-logo-copy{display:grid;gap:.2rem}.app-logo-product{font-size:1.6rem;font-weight:800;letter-spacing:-.05em}.app-logo-tagline{color:var(--ink-soft);font-size:.92rem}.portal-sidebar-section{display:grid;gap:.8rem}.portal-sidebar-section-heading{display:flex;align-items:center;justify-content:space-between;gap:.8rem}.portal-nav{gap:.7rem}.portal-nav-link{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.85rem;padding:.95rem 1rem;border-radius:20px;border:none;background:#ffffff09;text-decoration:none;color:var(--ink)}.portal-nav-link:hover{transform:translateY(-1px);background:#ffffff0f;box-shadow:var(--portal-shadow-soft)}.portal-nav-link.active,.portal-module-card.active{background:rgba(var(--brand-orange-rgb),.18);color:var(--portal-text);box-shadow:0 0 18px rgba(var(--brand-orange-rgb),.18)}.portal-nav-link-icon,.portal-module-card-icon{display:inline-flex;align-items:center;justify-content:center;width:2.6rem;height:2.6rem;border-radius:16px;border:none;background:#ffffff14;color:#ffd2a0}.portal-nav-link-icon svg,.portal-module-card-icon svg,.theme-toggle svg{width:1.05rem;height:1.05rem;fill:currentColor;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6}.portal-nav-link-copy,.portal-module-card-copy,.portal-user-copy,.portal-form-field,.portal-table-project-cell,.portal-login-highlight,.portal-header-copy{display:grid;gap:.2rem;min-width:0}.portal-nav-link-copy strong,.portal-module-card-copy strong,.portal-user-copy strong,.portal-table-project-cell strong{font-size:.96rem;font-weight:700;letter-spacing:-.02em}.portal-nav-link-copy span,.portal-module-card-copy span,.portal-user-copy span,.portal-table-project-cell span,.portal-login-highlight span{color:var(--ink-soft);line-height:1.45}.portal-module-list{display:grid;gap:.75rem}.portal-module-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.85rem;padding:.9rem .95rem;border-radius:20px;border:none;background:#ffffff09;color:inherit;text-decoration:none}.portal-module-card[aria-disabled=true]{opacity:.78}.portal-module-card--active{background:rgba(var(--brand-orange-rgb),.12)}.portal-sidebar-meta{gap:.55rem}.portal-main,.portal-main--module{background:transparent}.portal-header{align-items:center;padding:1rem 1.25rem;margin:0;border-radius:0;background:transparent;box-shadow:none}.portal-header--module{display:flex;padding:.85rem 1rem;margin-bottom:.7rem}.portal-header-main{display:grid;gap:.45rem;min-width:0;flex:1 1 auto}.portal-header>.portal-header-main{display:grid;gap:.45rem;min-width:0;flex:1 1 auto}.portal-header:not(.portal-header--module){gap:1rem;flex-wrap:nowrap}.portal-header:not(.portal-header--module)>.portal-header-main{display:flex;align-items:center;gap:.85rem;min-width:0}.portal-header-copy p,.portal-hero p,.portal-card p,.portal-login-copy p{margin:0;color:var(--ink-soft);line-height:1.6}.portal-header-title,.portal-hero h2,.portal-card h3,.portal-login-copy h2{margin:0;font-weight:800;letter-spacing:-.04em}.portal-header-title{font-size:1.55rem}.portal-header-copy--single-line{display:flex;align-items:center;min-width:0}.portal-header-module-title{display:flex;align-items:center;gap:.45rem;min-width:0}.portal-header-brand-inline{color:var(--accent-strong);font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.portal-header-title-separator{color:var(--ink-soft)}.portal-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;flex-wrap:nowrap;margin-left:auto}.portal-header>.portal-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;flex-wrap:nowrap;margin-left:auto}.portal-header-actions--module{flex-wrap:nowrap}.theme-toggle{display:inline-flex;align-items:center;gap:.35rem;min-height:0;padding:0;border-radius:0;border:none;background:transparent;color:var(--ink)}.theme-toggle-button{display:inline-flex;align-items:center;justify-content:center;width:2.3rem;height:2.3rem;padding:0;border:none;border-radius:999px;background:#ffffff0f;color:var(--ink-soft)}.theme-toggle-button:hover{transform:translateY(-1px);background:#ffffff1a;box-shadow:var(--portal-shadow-soft)}.theme-toggle-icon{display:inline-flex;align-items:center;justify-content:center;width:1rem;height:1rem;border-radius:0;color:inherit}.theme-toggle-button.active{background:rgba(var(--brand-orange-rgb),.22);color:#fff2e3;box-shadow:0 0 0 1px rgba(var(--brand-orange-rgb),.08),0 0 18px rgba(var(--brand-orange-rgb),.18)}.theme-toggle-label{font-size:.84rem;font-weight:700;letter-spacing:.02em}.portal-user-summary{display:flex;align-items:center;gap:.7rem;min-width:0;padding:.35rem .5rem .35rem .35rem;border-radius:999px;border:none;background:#ffffff0f;box-shadow:none}.portal-user-avatar{display:inline-flex;align-items:center;justify-content:center;width:2.2rem;height:2.2rem;border-radius:999px;background:linear-gradient(135deg,rgba(var(--brand-orange-rgb),.9),rgba(var(--brand-orange-rgb),.68));color:#201508;font-size:.82rem;font-weight:800;letter-spacing:.04em}.portal-user-copy{display:block;min-width:0}.portal-user-copy strong{white-space:nowrap}.portal-signout-button{min-height:2.15rem;padding:0 .72rem;flex:0 0 auto;white-space:nowrap}.portal-shell .primary-button,.portal-login-shell .primary-button{border:none;background:linear-gradient(135deg,rgba(var(--brand-orange-rgb),.98),#ffb25b);color:#201407;box-shadow:none}.portal-shell .primary-button:hover:not(:disabled),.portal-login-shell .primary-button:hover:not(:disabled){box-shadow:var(--portal-shadow-soft)}.portal-shell .ghost-button,.portal-login-shell .ghost-button,.portal-shell .cloud-email-input,.portal-login-shell .cloud-email-input{border:none;background:#ffffff0f;color:var(--portal-text);box-shadow:none}.portal-shell .ghost-button:hover:not(:disabled),.portal-login-shell .ghost-button:hover:not(:disabled){background:#ffffff1a;box-shadow:var(--portal-shadow-soft)}.portal-shell .cloud-email-input::placeholder,.portal-login-shell .cloud-email-input::placeholder{color:var(--portal-text-muted)}.portal-content{min-height:0}.portal-page{gap:1.1rem;padding:1rem}.portal-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:1.2rem;padding:1.35rem 1.45rem}.portal-hero h2{font-size:clamp(1.9rem,3vw,2.6rem)}.portal-inline-badges,.portal-card-actions,.portal-form-actions{display:flex;flex-wrap:wrap;gap:.7rem}.portal-section{gap:.9rem}.portal-section-heading{align-items:center;gap:1rem}.portal-section-heading h3{margin:0;font-size:1.15rem;letter-spacing:-.03em}.portal-card-grid{gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.portal-card{gap:.95rem;padding:1.25rem 1.3rem;background:var(--portal-panel-gradient)}.portal-card--accent,.portal-placeholder-card,.portal-callout{background:var(--portal-panel-accent)}.portal-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.portal-card-head>div{min-width:0}.portal-link-button{text-decoration:none}.portal-stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.portal-stat-card{display:grid;gap:.4rem;padding:1.15rem 1.2rem;background:var(--portal-panel-accent)}.portal-stat-label{color:var(--ink-soft);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.portal-stat-value{font-size:1.45rem;line-height:1.1}.portal-stat-note{color:var(--ink-soft);font-size:.92rem;line-height:1.55}.portal-status-message{display:inline-flex;align-items:center;gap:.45rem;width:fit-content;padding:.65rem .85rem;border-radius:16px;background:rgba(var(--brand-blue-rgb),.08);color:var(--ink-soft);border:1px solid var(--line)}.portal-status-message-error{background:rgba(var(--danger-rgb),.14);border-color:rgba(var(--danger-rgb),.22);color:rgb(var(--danger-rgb))}.portal-form-field{gap:.45rem}.portal-form-field>span{color:var(--ink-soft);font-size:.84rem;font-weight:700;letter-spacing:.04em}.portal-login-shell{min-height:100vh;display:grid;place-items:center;padding:1.6rem;--ink: var(--portal-text);--ink-soft: var(--portal-text-soft);--text-tertiary: var(--portal-text-muted);--line: transparent;--line-strong: rgba(255, 255, 255, .18);--panel: var(--portal-surface);--panel-muted: var(--portal-surface);background:var(--app-bg);color:var(--portal-text)}.portal-login-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.9fr);gap:1.2rem;width:min(1200px,100%)}.portal-login-brand-panel{display:grid;align-content:start;gap:1.25rem;padding:1.5rem;background:linear-gradient(135deg,rgba(var(--brand-orange-rgb),.18),#ffffff0b)}.portal-login-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem}.portal-login-logo{max-width:100%}.portal-login-copy{gap:.65rem}.portal-login-copy h2{font-size:clamp(2rem,4vw,3rem);line-height:1.02}.portal-login-highlights{display:grid;gap:.8rem}.portal-login-highlight{padding:.95rem 1rem;border-radius:20px;border:1px solid var(--line);background:#ffffff08}.portal-login-highlight strong{font-size:.96rem;letter-spacing:-.02em}.portal-login-card{width:100%;align-content:start;gap:1rem;padding:1.45rem}.portal-login-footnote{display:grid;gap:.55rem;padding-top:.2rem;border-top:1px solid var(--line)}.portal-table-shell{overflow:auto;border-radius:28px}.portal-data-table{width:100%;min-width:760px;border-collapse:collapse}.portal-data-table thead th{position:sticky;top:0;z-index:1;padding:1rem 1.1rem;text-align:left;color:var(--ink-soft);font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;background:rgba(var(--brand-blue-rgb),.12);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.portal-data-table tbody td{padding:1rem 1.1rem;border-top:1px solid var(--line);vertical-align:middle}.portal-data-table tbody tr:hover{background:rgba(var(--brand-blue-rgb),.06)}.portal-table-actions{display:flex;flex-wrap:wrap;gap:.55rem}.portal-metadata-list div{border-bottom-color:var(--line)}.portal-metadata-list dt{color:var(--ink-soft)}.portal-module-surface{background:transparent;border:none;border-radius:0;box-shadow:none}.portal-page--module .portal-card{margin:0}.module-route-shell{position:relative;width:100%;height:100vh;min-height:0;background:var(--app-bg)}.module-route-overlay{position:absolute;top:.4rem;left:.4rem;z-index:40;display:flex;flex-direction:column;align-items:flex-start;gap:.45rem;pointer-events:none}.module-route-workspace{width:100%;height:100%;min-height:0}.module-route-workspace>*{width:100%;height:100%;min-height:0}.module-route-workspace .sidebar{padding-top:3.6rem}.module-route-workspace .sidebar-edge-toggle{top:58px}.module-route-back,.module-route-status,.module-route-fallback-card{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:.58rem .82rem;border-radius:999px;border:1px solid var(--line);background:#080c18c7;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow-soft);color:#f5f8ff;text-decoration:none;pointer-events:auto;font-size:.84rem;font-weight:700;letter-spacing:.02em}.module-route-back:hover{transform:translateY(-1px)}.module-route-status{color:#dbe4ff}.module-route-shell--fallback{display:grid;place-items:center}.module-route-fallback-card{min-width:220px;border-radius:24px}.module-route-fallback-card h2{margin:0;font-size:1rem;letter-spacing:-.03em}@media(max-width:1180px){.portal-shell{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.portal-login-grid,.portal-stats-grid{grid-template-columns:1fr}}@media(max-width:820px){.portal-header,.portal-header--module,.portal-hero{grid-template-columns:1fr}.portal-header{margin-inline:.85rem;padding:.95rem 1rem}.portal-page{padding:.85rem}.portal-card,.portal-login-brand-panel,.portal-hero,.portal-stat-card{padding:1.1rem}.portal-nav,.portal-card-grid{grid-template-columns:1fr}.portal-module-card{grid-template-columns:auto minmax(0,1fr)}.portal-module-card .pill{grid-column:2;justify-self:start}.portal-user-summary{width:auto}.portal-header-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}.theme-toggle{justify-content:flex-start;width:auto}}@media(max-width:640px){.portal-sidebar{padding:1rem}.portal-hero h2,.portal-login-copy h2{font-size:1.8rem}.portal-card-head,.portal-section-heading,.portal-inline-badges,.portal-card-actions,.portal-form-actions{flex-direction:column;align-items:stretch}.portal-page--module .portal-card{margin-inline:.85rem}.module-route-overlay{top:.3rem;left:.3rem;right:auto}}
