@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700;800&family=Geist:wght@400;500;600;700;800&family=IBM+Plex+Sans+Thai:wght@400;500;600;700&family=Noto+Sans:wght@400;700&family=Plus+Jakarta+Sans:wght@400;500;600;700&family=Poppins:wght@500;600;700&family=Prompt:wght@400;500;600;700&display=swap";*{box-sizing:border-box;margin:0;padding:0}:root{--primary:#254792;--blue:#5d87ff;--blue-strong:#3b63d6;--ink:#172033;--water-bg:#cee4ec;--text:#2a3547;--muted:#7c8fac;--panel-bg:#ecf2ff;--bg:#f9f9f9;--bg-alt:#f9f9f9;--navbar-bg:#f9f9f9;--sidebar-bg:#f1f1f1;--green:#2f9c95;--orange:#f4a261;--red:#d64545;--border:#eaeff4;--card:#fff;--card-border:#eaeff4;--card-border-strong:#dce5f0;--surface-1:#fff;--surface-2:#f8fafc;--surface-3:#eef3ff;--shell-sidebar-bg:#fff;--shell-topbar-bg:#fafafa;--shell-workspace-bg:#fafafa;--shell-topbar-control-bg:#fff;--surface-elevated:#fffffffa;--surface-overlay:#f9fbfde6;--surface-accent:linear-gradient(180deg, #f8fbff 0%, #eef3ff 100%);--surface-accent-border:#5d87ff29;--input-bg:#fff;--input-border:#bcc9dce6;--divider:#dce5f0f2;--divider-soft:#e2e8f0cc;--control-muted-bg:#cbd5e1;--control-active-bg:#eef3ff;--control-active-border:#547cf733;--button-surface:#fff;--button-surface-hover:#f8fafc;--surface-card:#fffffff0;--surface-card-soft:linear-gradient(180deg, #f8fbff 0%, #f3f7fd 100%);--surface-card-accent:linear-gradient(180deg, #5d87ff1f 0%, #fffffff5 100%);--surface-card-accent-border:#d7e4ff;--surface-muted:#f8fafc;--surface-muted-strong:#f2f6fb;--surface-selected:#eef3ff;--surface-selected-strong:#5d87ff24;--surface-hover:#f8fbff;--surface-ghost:#ffffffc7;--surface-field:#fff;--surface-table-head:#fbfcfe;--surface-table-row:#fff;--surface-table-row-alt:#fcfdfe;--surface-table-row-hover:#f8fbff;--surface-badge:#f2f5f9;--surface-success-soft:#eaf8f5;--surface-success-border:#bfe7df;--surface-warning-soft:#fff5e9;--surface-warning-border:#f3dfc6;--surface-danger-soft:#fef0f3;--surface-danger-banner:#fef0f3;--surface-danger-banner-border:#f3d0d7;--surface-danger-banner-text:#7a1e2a;--surface-info-soft:#eef4ff;--surface-info-border:#c7daf9;--surface-info-text:#1d4ed8;--surface-success-wash:linear-gradient(180deg, #f0fbf8 0%, #f7fcfb 100%);--surface-warning-wash:linear-gradient(180deg, #fff8ec 0%, #fffcf5 100%);--surface-danger-wash:linear-gradient(180deg, #fff1f1 0%, #fff8f8 100%);--surface-info-wash:linear-gradient(180deg, #eef4ff 0%, #f7faff 100%);--surface-modal:#fffffffa;--surface-modal-border:#94a3b829;--surface-modal-header:var(--surface-overlay);--surface-modal-shadow:0 24px 60px #0f172a2e;--surface-button-primary-soft:#eef4ff;--surface-button-danger-soft:#fff7f7;--surface-disabled:#f5f6f8;--surface-brand-soft:#eef4ff;--surface-brand-border:#d7e4ff;--surface-brand-text:#1d4ed8;--surface-note:#fff8b8;--surface-note-border:#8269002e;--surface-note-text:#4b3f00;--surface-note-muted:#4b3f00b8;--surface-note-shadow:0 4px 12px #82690014;--overlay-scrim:#0f172a52;--overlay-scrim-strong:#0f172a7a;--scrollbar-thumb:#00000026;--scrollbar-thumb-hover:#0000004d;--text-soft:#6a7b93;--text-strong:#0f172a;--text-inverse:#fff;--text-link:#2563eb;--success-text:#1f8f68;--warning-text:#b8720a;--danger-text:#b53c4c;--danger-border:#f3d0d7;--danger-soft:#fef0f3;--chip-blue-bg:#edf3ff;--chip-green-bg:#eaf8f5;--chip-orange-bg:#fff5e9;--chip-red-bg:#fef0f3;--chip-neutral-bg:#f2f5f9;--chip-neutral-text:#6a7b93;--button-primary:#335cff;--button-primary-muted:#b8c7f0;--mywork-layer-1-base:var(--bg);--mywork-layer-2-module:#ffffffbd;--mywork-layer-3-card:#fff;--mywork-soft-border:var(--card-border);--mywork-strong-border:var(--card-border-strong);--mywork-section-shadow:var(--shadow-xs);--mywork-card-shadow:var(--shadow-sm);--mywork-elevated-shadow:0 20px 60px #0000001f;--mywork-hover-fill:#fafbfd;--mywork-subtle-fill:var(--panel-bg);--mywork-sidebar-fill:#fff;--mywork-sidebar-rail-fill:#f8fafd;--sidebar-glass-bg:#fdfdfdc7;--sidebar-glass-border:#ffffffdb;--sidebar-glass-shadow:0 2px 8px #0f172a0d;--sidebar-glass-inset:inset 0 1px 0 #ffffffe0;--sidebar-pill-hover:#ffffff85;--sidebar-pill-active:#ffffffd1;--sidebar-pill-border:#ffffff6b;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--shadow-xxs:0 1px 2px #0f172a0a;--shadow-sm:0 14px 38px #1b274714;--shadow-xs:0 8px 24px #1b27470f;--shadow-lg:0 24px 60px #0f172a29;--sw:clamp(230px, 20vw, 288px);--rw:400px;--tb:54px}html[data-ui-theme=dark]{--primary:#7aa2ff;--blue:#7aa2ff;--blue-strong:#a7bfff;--ink:#f3f6fb;--text:#e5ebf5;--muted:#99a6bb;--panel-bg:#1d2431;--bg:#11161d;--bg-alt:#11161d;--navbar-bg:#151b23;--sidebar-bg:#171e27;--green:#4dc2b8;--orange:#f5b36b;--red:#f16d6d;--border:#2a3442;--card:#1a212c;--card-border:#2a3442;--card-border-strong:#364255;--surface-1:#1a212c;--surface-2:#202936;--surface-3:#243041;--shell-sidebar-bg:#1a212c;--shell-workspace-bg:#11161d;--shell-topbar-bg:var(--shell-workspace-bg);--shell-topbar-control-bg:#1b2330eb;--surface-elevated:#181f2afa;--surface-overlay:#1b2330eb;--surface-accent:linear-gradient(180deg, #354d7c6b 0%, #243041eb 100%);--surface-accent-border:#7aa2ff38;--input-bg:#202936;--input-border:#556681e6;--divider:#435167f2;--divider-soft:#435167b8;--control-muted-bg:#435167;--control-active-bg:#7aa2ff2e;--control-active-border:#7aa2ff47;--button-surface:#1f2937;--button-surface-hover:#243041;--surface-card:#181f2af0;--surface-card-soft:linear-gradient(180deg, #202936fa 0%, #1b2330fa 100%);--surface-card-accent:linear-gradient(180deg, #7aa2ff2e 0%, #1b2330f5 100%);--surface-card-accent-border:#7aa2ff3d;--surface-muted:#202936;--surface-muted-strong:#1d2431;--surface-selected:#7aa2ff2e;--surface-selected-strong:#7aa2ff3d;--surface-hover:#243041;--surface-ghost:#181f2ac7;--surface-field:#202936;--surface-table-head:#1d2431;--surface-table-row:#1a212c;--surface-table-row-alt:#171e27;--surface-table-row-hover:#202936;--surface-badge:#202936;--surface-success-soft:#4dc2b829;--surface-success-border:#4dc2b847;--surface-warning-soft:#f5b36b2e;--surface-warning-border:#f5b36b4d;--surface-danger-soft:#f16d6d29;--surface-danger-banner:#f16d6d29;--surface-danger-banner-border:#f16d6d47;--surface-danger-banner-text:#ffb4be;--surface-info-soft:#7aa2ff2e;--surface-info-border:#7aa2ff47;--surface-info-text:#8bb4ff;--surface-success-wash:linear-gradient(180deg, #4dc2b824 0%, #1b2330fa 100%);--surface-warning-wash:linear-gradient(180deg, #f5b36b29 0%, #1b2330fa 100%);--surface-danger-wash:linear-gradient(180deg, #f16d6d24 0%, #1b2330fa 100%);--surface-info-wash:linear-gradient(180deg, #7aa2ff29 0%, #1b2330fa 100%);--surface-modal:#131a26fa;--surface-modal-border:#7aa2ff2e;--surface-modal-header:#1b2330f0;--surface-modal-shadow:0 24px 60px #0000006b;--surface-button-primary-soft:#7aa2ff2e;--surface-button-danger-soft:#f16d6d29;--surface-disabled:#2a3442;--surface-brand-soft:#7aa2ff2e;--surface-brand-border:#7aa2ff47;--surface-brand-text:#8bb4ff;--surface-note:#4b4216;--surface-note-border:#d6b34347;--surface-note-text:#f7ebad;--surface-note-muted:#f7ebadbd;--surface-note-shadow:0 12px 24px #00000047;--overlay-scrim:#050a126b;--overlay-scrim-strong:#050a129e;--scrollbar-thumb:#99a6bb52;--scrollbar-thumb-hover:#99a6bb80;--text-soft:#99a6bb;--text-strong:#f3f6fb;--text-inverse:#f8fbff;--text-link:#8bb4ff;--success-text:#67d7b8;--warning-text:#f3c27b;--danger-text:#ff9aa5;--danger-border:#f16d6d47;--danger-soft:#f16d6d29;--chip-blue-bg:#7aa2ff2e;--chip-green-bg:#4dc2b829;--chip-orange-bg:#f5b36b2e;--chip-red-bg:#f16d6d29;--chip-neutral-bg:#202936;--chip-neutral-text:#99a6bb;--button-primary:#5d87ff;--button-primary-muted:#435167;--mywork-layer-1-base:var(--shell-workspace-bg);--mywork-layer-2-module:color-mix(in srgb, var(--surface-card) 88%, transparent);--mywork-layer-3-card:var(--surface-card);--mywork-soft-border:var(--card-border);--mywork-strong-border:var(--card-border-strong);--mywork-hover-fill:var(--surface-hover);--mywork-subtle-fill:var(--surface-muted);--mywork-sidebar-fill:var(--shell-workspace-bg);--mywork-sidebar-rail-fill:var(--surface-card);--sidebar-glass-bg:#131a26d1;--sidebar-glass-border:#a7bfff29;--sidebar-glass-shadow:0 4px 12px #00000024;--sidebar-glass-inset:inset 0 1px 0 #ffffff14;--sidebar-pill-hover:#ffffff0d;--sidebar-pill-active:#7aa2ff29;--sidebar-pill-border:#a7bfff24;--shadow-xxs:0 1px 2px #0000002e;--shadow-sm:0 14px 38px #00000057;--shadow-xs:0 8px 24px #00000042;--shadow-lg:0 24px 60px #0000006b}html,body{background:var(--bg);height:100%;color:var(--text);font-family:Plus Jakarta Sans,IBM Plex Sans Thai,sans-serif;font-size:14px;line-height:1.5;overflow:hidden}#app,#root,body,button,input,select,textarea{font-family:Plus Jakarta Sans,IBM Plex Sans Thai,sans-serif}#app h1,#app h2,#app h3{color:var(--text);letter-spacing:-.02em}#app h1{font-weight:700}#app h2,#app h3{font-weight:600}#root{flex-direction:column;height:100vh;display:flex}a{color:inherit}button,input,select,textarea{font:inherit}.project-phase-date-input,.project-phase-status-select{text-align:center}.project-phase-status-select{text-align-last:center}.project-phase-date-input::-webkit-date-and-time-value{text-align:center}.project-phase-date-input::-webkit-datetime-edit{text-align:center;justify-content:center;align-items:center;width:100%;padding:0;display:flex}.project-phase-date-input::-webkit-datetime-edit-fields-wrapper{justify-content:center;align-items:center;width:100%;display:flex}.project-phase-date-input::-webkit-calendar-picker-indicator{margin-left:4px}.prima-animated-logo{flex-direction:column;gap:12px;display:flex}.prima-wordmark{font-family:Noto Sans,IBM Plex Sans Thai,sans-serif;font-size:var(--prima-wordmark-size,28px);letter-spacing:-.02em;white-space:nowrap;color:#151d3f;align-items:center;gap:.08em;line-height:1;display:inline-flex}.prima-wordmark-prima{color:#151d3f;font-weight:700}.prima-wordmark-os{color:#151d3f;font-weight:400}.prima-wordmark-diamond{clip-path:polygon(0 0,66% 0,100% 34%,100% 100%,0 100%);background:linear-gradient(135deg,#67b0ff 0%,#0b78ff 56%,#075fe0 100%);border:1px solid #ffffffe0;border-radius:.12em;flex-shrink:0;width:.9em;height:.9em;margin-right:.16em;display:inline-block;position:relative;overflow:hidden;transform:none;box-shadow:0 0 .18em #0b78ff2e}.prima-wordmark-diamond:after{content:"";opacity:0;pointer-events:none;background:linear-gradient(90deg,#fff0 0%,#ffffff0a 34%,#fff3 50%,#ffffff0a 66%,#fff0 100%);animation:4.2s ease-in-out infinite prima-wordmark-flow;position:absolute;inset:-18%;transform:translate(-135%)skew(-18deg)}.prima-wordmark-sidebar{letter-spacing:-.02em;align-items:center;gap:.08em;font-family:Noto Sans,IBM Plex Sans Thai,sans-serif}.prima-wordmark-sidebar .prima-wordmark-prima{color:#151d3f;font-weight:700}.prima-wordmark-sidebar .prima-wordmark-os{color:#151d3f;font-weight:400}html[data-ui-theme=dark] .prima-wordmark,html[data-ui-theme=dark] .prima-wordmark-prima,html[data-ui-theme=dark] .prima-wordmark-os,html[data-ui-theme=dark] .prima-wordmark-sidebar .prima-wordmark-prima,html[data-ui-theme=dark] .prima-wordmark-sidebar .prima-wordmark-os{color:var(--ink)}.prima-animated-logo-subtitle{color:var(--muted);letter-spacing:.04em;font-size:12px;font-weight:600;animation:.52s ease-out .18s both prima-logo-subtitle-enter}.prima-animated-logo-wordmark{align-self:center;animation:.52s ease-out .14s both prima-logo-subtitle-enter}.login-screen-logo{width:100%;margin:0 auto 24px;align-items:center!important}.login-screen-logo .prima-animated-logo-wordmark{margin-top:-2px}.app-loading-bar{border-radius:inherit;background:linear-gradient(90deg,#5d87ff 0%,#88a9ff 100%);width:42%;height:100%;animation:1.2s ease-in-out infinite app-loading-slide;box-shadow:0 0 18px #5d87ff59}.app-skeleton-block{background:var(--surface-muted-strong);position:relative;overflow:hidden}.app-skeleton-block:after{content:"";background:linear-gradient(90deg, transparent 0%, color-mix(in srgb, var(--surface-card) 78%, transparent) 50%, transparent 100%);animation:1.35s ease-in-out infinite app-loading-slide;position:absolute;inset:0;transform:translate(-110%)}.app-shell{background:var(--shell-workspace-bg)}.app-sidebar-shell{background:var(--shell-sidebar-bg);border-right:1px solid var(--divider)}@keyframes prima-sidebar-flame{0%,to{filter:drop-shadow(0 0 #f5822000);transform:translateY(0)rotate(-2deg)scale(1)}45%{filter:drop-shadow(0 0 5px #f5822057);transform:translateY(-1px)rotate(2deg)scale(1.08)}72%{filter:drop-shadow(0 0 3px #5d87ff38);transform:translateY(0)rotate(-1deg)scale(1.03)}}@keyframes app-topbar-refresh-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}html[data-ui-theme=dark] .app-sidebar-shell{background:var(--shell-sidebar-bg)}.app-topbar{background:var(--shell-topbar-bg);-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom:none}.app-topbar-module-title{color:var(--ink)}.app-topbar-search{align-items:center;min-width:220px;display:flex}.app-topbar-search.compact{min-width:160px}.app-topbar-search-field{border:1px solid var(--divider-soft);background:var(--shell-topbar-control-bg);width:min(100%,432px);min-width:0;min-height:30px;box-shadow:0 4px 14px color-mix(in srgb, var(--ink) 8%, transparent);border-radius:10px;align-items:center;gap:8px;padding:0 12px;display:inline-flex}.app-topbar-search-icon{color:var(--muted);flex-shrink:0;align-items:center;display:inline-flex}.app-topbar-search-field input{width:100%;min-width:0;color:var(--ink);background:0 0;border:none;outline:none;font-size:11px}.app-topbar-search-field input::placeholder{color:color-mix(in srgb, var(--muted) 72%, transparent)}.app-topbar-search-clear{color:var(--muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}@media (width<=980px){.app-topbar-search{min-width:180px}}@media (width<=720px){.app-topbar-search{min-width:0}.app-topbar-search-field{width:180px}}.app-workspace{background:var(--shell-workspace-bg)}.mywork-mockup-theme{--mywork-layer-1-base:#fff;--mywork-layer-2-module:#f9f9f9;--mywork-layer-3-card:#fff;--mywork-soft-border:#e8e1d8;--mywork-strong-border:#ddd4ca;--mywork-section-shadow:0 5px 16px #5242300a;--mywork-card-shadow:0 10px 24px #52423014;--mywork-elevated-shadow:0 24px 70px #5242301f;--mywork-hover-fill:#faf8f4;--mywork-subtle-fill:#f7f4ef;--mywork-sidebar-fill:#fefdfb;--mywork-sidebar-rail-fill:#f5f3f0;background:var(--mywork-layer-1-base)}.mywork-mockup-theme .app-topbar{background:var(--mywork-layer-2-module);border-bottom:1px solid var(--mywork-soft-border);-webkit-backdrop-filter:none;backdrop-filter:none}.mywork-mockup-theme .app-workspace{background:0 0}.mywork-module-frame{background:var(--mywork-layer-2-module);box-shadow:var(--mywork-section-shadow);border:none;border-radius:28px;margin:5px 5px 5px 0;overflow:hidden}.mywork-band-card{background:var(--mywork-layer-2-module);border:1px solid var(--mywork-soft-border);box-shadow:var(--mywork-section-shadow);border-radius:24px;padding:14px}.mywork-main-shell{box-shadow:none;background:0 0;border:none;border-radius:0;padding:0}.app-page{flex-direction:column;gap:18px;width:100%;min-width:0;display:flex}.app-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;padding:0 2px;display:flex}.app-page-header.compact{gap:12px}.app-page-header-copy{flex:420px;min-width:min(100%,520px)}.app-eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--blue-strong);margin-bottom:6px;font-size:10px;font-weight:800}.app-page-title{letter-spacing:-.035em;color:var(--ink);font-size:24px;font-weight:800;line-height:1.1}.app-page-description{max-width:760px;color:var(--muted);margin-top:6px;font-size:13px;line-height:1.6}.app-page-actions{flex-wrap:wrap;flex:280px;justify-content:flex-end;align-items:center;gap:10px;display:flex}.app-page-meta{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:700}.app-page-search{border:1px solid var(--input-border);background:var(--surface-overlay);min-width:min(100%,280px);max-width:360px;min-height:40px;box-shadow:0 8px 20px color-mix(in srgb, var(--ink) 9%, transparent);border-radius:14px;flex:280px;align-items:center;gap:8px;padding:0 12px;display:inline-flex}.app-page-search-icon{color:var(--muted);flex-shrink:0;align-items:center;display:inline-flex}.app-page-search input{width:100%;min-width:0;color:var(--ink);background:0 0;border:none;outline:none;font-family:inherit;font-size:12.5px}.app-page-search input::placeholder{color:var(--muted)}@media (width<=720px){.app-page{gap:14px}.app-page-header{gap:12px;padding:0}.app-page-header-copy{flex-basis:100%;min-width:0}.app-page-title{font-size:20px;line-height:1.08}.app-page-description{margin-top:5px;font-size:12px;line-height:1.5}.app-page-actions{flex-basis:100%;justify-content:flex-start;width:100%}.app-page-search{width:100%;min-width:0;max-width:none}.app-card-padded{padding:16px}.app-card-header{flex-direction:column;align-items:stretch}.app-segmented{scrollbar-width:none;width:100%;overflow-x:auto}.app-segmented::-webkit-scrollbar{display:none}}.app-card{background:var(--surface-card);border:1px solid var(--card-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs)}.app-card-padded{padding:20px}.app-card-soft{background:var(--surface-card-soft)}.app-card-accent{background:var(--surface-card-accent);border-color:var(--surface-card-accent-border)}.app-card-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.app-card-header.flush{margin-bottom:0}.app-card-title{letter-spacing:-.02em;color:var(--ink);font-size:16px;font-weight:700}.app-card-description{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.55}.app-segmented{background:linear-gradient(180deg, var(--surface-muted-strong) 0%, var(--surface-muted) 100%);border:1px solid var(--card-border-strong);border-radius:14px;align-items:center;gap:4px;padding:4px;display:inline-flex}.app-segmented-sm{border-radius:12px}.app-segmented-module-nav{border-color:var(--card-border);background:var(--surface-muted);box-shadow:none;border-radius:999px;gap:3px;padding:3px}.app-segmented-button{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;gap:6px;font-weight:700;transition:all .14s;display:inline-flex}.app-segmented-md .app-segmented-button{padding:8px 12px;font-size:12px}.app-segmented-sm .app-segmented-button{padding:6px 10px;font-size:11px}.app-segmented-module-nav .app-segmented-button{min-height:30px;color:var(--muted);box-shadow:none;border:1px solid #0000;border-radius:999px;padding:5px 12px;font-size:11px;line-height:1}.app-segmented-button.active{background:var(--surface-card);color:var(--ink);box-shadow:0 4px 14px color-mix(in srgb, var(--ink) 14%, transparent)}.app-segmented-module-nav .app-segmented-button.active{border-color:var(--card-border);color:var(--text-strong);box-shadow:none}.app-segmented-icon{flex-shrink:0}.app-segmented-button:disabled{opacity:.45;cursor:not-allowed}.app-pill{text-transform:uppercase;letter-spacing:.08em;border-radius:999px;align-items:center;padding:4px 9px;font-size:10px;font-weight:800;display:inline-flex}.app-pill-neutral{background:var(--chip-neutral-bg);color:var(--chip-neutral-text)}.app-pill-blue{background:var(--chip-blue-bg);color:var(--blue-strong)}.app-pill-green{background:var(--chip-green-bg);color:var(--success-text)}.app-pill-orange{background:var(--chip-orange-bg);color:var(--warning-text)}.app-pill-red{background:var(--chip-red-bg);color:var(--danger-text)}.app-empty-state{border-radius:var(--radius-xl);border:1px dashed color-mix(in srgb, var(--card-border-strong) 88%, transparent);background:var(--shell-workspace-bg);color:var(--muted);flex-direction:column;align-items:flex-start;gap:8px;padding:28px;display:flex}.app-empty-kicker{text-transform:uppercase;letter-spacing:.12em;color:var(--blue-strong);font-size:10px;font-weight:800}.app-empty-title{letter-spacing:-.02em;color:var(--ink);font-size:18px;font-weight:700}.app-empty-description{max-width:680px;font-size:13px;line-height:1.6}.app-empty-action{margin-top:8px}@keyframes app-loading-slide{0%{transform:translate(-110%)}50%{transform:translate(85%)}to{transform:translate(240%)}}@keyframes prima-logo-enter{0%{opacity:0;transform:translateY(18px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes prima-logo-breathe{0%{transform:translateY(0)scale(1)}50%{transform:translateY(-2px)scale(1.018)}to{transform:translateY(0)scale(1)}}@keyframes prima-logo-subtitle-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes site-visit-ai-panel-enter{0%{transform:translateY(2px);box-shadow:inset 0 1px #ffffffb8,0 0 #6c4bd200}55%{transform:translateY(0);box-shadow:inset 0 1px #ffffffb8,0 12px 24px #6c4bd214}to{transform:translateY(0);box-shadow:inset 0 1px #ffffffb8,0 0 #6c4bd200}}@keyframes site-visit-ai-sparkle{0%,to{opacity:.96;transform:scale(1)rotate(0)}50%{opacity:1;transform:scale(1.12)rotate(8deg)}}@keyframes prima-wordmark-flow{0%,18%{opacity:0;transform:translate(-135%)skew(-18deg)}34%{opacity:.45}54%{opacity:.16;transform:translate(58%)skew(-18deg)}70%,to{opacity:0;transform:translate(125%)skew(-18deg)}}@media (prefers-reduced-motion:reduce){.prima-animated-logo-subtitle,.app-loading-bar,.prima-wordmark-diamond:after{animation:none}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.w-full{width:100%}.h-full{height:100%}.flex-1{flex:1}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.relative{position:relative}.absolute{position:absolute}.cursor-pointer{cursor:pointer}.hidden{display:none!important}.text-muted{color:var(--muted)}.text-blue{color:var(--blue)}.text-red{color:var(--red)}.text-green{color:var(--green)}.text-orange{color:var(--orange)}.bg-white{background:var(--surface-card)}.badge{border-radius:6px;padding:2px 6px;font-size:9px;font-weight:600;display:inline-block}.badge-blue{background:var(--chip-blue-bg);color:var(--blue-strong)}.badge-green{background:var(--chip-green-bg);color:var(--success-text)}.badge-orange{background:var(--chip-orange-bg);color:var(--warning-text)}.sdot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.s-todo{background:var(--control-muted-bg)}.s-inprogress{background:var(--blue)}.s-done{background:var(--green)}.s-overdue{background:var(--red)}.prio-dot{border-radius:50%;flex-shrink:0;width:5px;height:5px}.p-high{background:var(--red)}.p-medium{background:var(--orange)}.p-low{background:var(--control-muted-bg)}.overlay{background:var(--overlay-scrim);z-index:200;justify-content:flex-end;align-items:stretch;display:flex;position:fixed;inset:0}.overlay-center{justify-content:center;align-items:center}.sales-campaign-control-row,.sales-campaign-workbar{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.sales-campaign-control-row{flex-wrap:nowrap}.sales-campaign-workbar{flex-wrap:wrap}.sales-campaign-filter-actions,.sales-campaign-workbar-actions{align-items:center;gap:8px;display:flex}.sales-campaign-control-row{background:var(--shell-workspace-bg);box-shadow:var(--shadow-xs);border:1px solid #94a3b829;border-radius:18px;padding:8px 12px}.sales-campaign-filter-actions{white-space:nowrap;flex-wrap:nowrap;flex:none;margin-left:auto}.sales-campaign-search{border:1px solid var(--card-border);background:var(--surface-card);min-width:260px;max-width:560px;color:var(--muted);border-radius:999px;flex:360px;align-items:center;gap:8px;padding:7px 12px;display:inline-flex}.sales-campaign-control-row .app-segmented{flex:none}.sales-campaign-search input{width:100%;min-width:0;color:var(--text);background:0 0;border:0;outline:0;font-family:inherit;font-size:12px}.sales-campaign-page-head{justify-content:space-between;align-items:flex-end;gap:16px;margin:6px 0 2px;display:flex}.sales-campaign-command-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0 14px;display:grid}.sales-campaign-command-strip>div{border:1px solid var(--card-border);background:color-mix(in srgb, var(--surface-card) 92%, var(--surface-muted) 8%);border-radius:12px;gap:4px;padding:12px 14px;display:grid}.sales-campaign-command-strip span{color:var(--text-soft);letter-spacing:.08em;text-transform:uppercase;font-size:9.5px;font-weight:850}.sales-campaign-command-strip b{color:var(--text-strong);font-size:17px;line-height:1}.sales-campaign-command-strip .urgent{border-color:color-mix(in srgb, var(--red) 26%, var(--card-border));background:color-mix(in srgb, var(--surface-card) 82%, var(--chip-red-bg) 18%)}.sales-campaign-grid,.sales-campaign-archive-grid{grid-template-columns:repeat(auto-fit,minmax(310px,1fr));align-items:start;gap:12px;display:grid}.sales-campaign-card{text-align:left;border:1px solid var(--card-border);background:var(--surface-card);color:var(--text);cursor:pointer;box-shadow:var(--shadow-xs);border-radius:14px;padding:0;transition:transform .14s,box-shadow .14s,border-color .14s;overflow:hidden}.sales-campaign-card:hover{border-color:var(--card-border-strong);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.sales-campaign-card.needs-setup{background:color-mix(in srgb, var(--surface-card) 96%, var(--surface-muted) 4%)}.sales-campaign-card-bar{height:2px}.sales-campaign-card-head,.sales-campaign-goal,.sales-campaign-card-foot{border-bottom:1px solid var(--card-border);justify-content:space-between;align-items:flex-start;gap:10px;padding:11px 14px;display:flex}.sales-campaign-eyebrow,.sales-campaign-section-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-soft);font-size:9.5px;font-weight:850}.sales-campaign-card-title{color:var(--text-strong);margin-top:4px;font-size:14px;font-weight:800;line-height:1.25}.sales-campaign-goal-value{letter-spacing:-.04em;color:var(--text-strong);font-size:21px;font-weight:850;line-height:1}.sales-campaign-goal-percent{text-align:right;color:var(--surface-brand-text);gap:2px;font-size:13px;font-weight:850;display:grid}.sales-campaign-goal-percent small{color:var(--text-soft);text-transform:uppercase;letter-spacing:.06em;font-size:9.5px;font-weight:750}.sales-campaign-muted,.sales-campaign-card-foot small,.sales-campaign-empty-line{color:var(--text-soft);font-size:10.5px;font-weight:650}.sales-campaign-progress{background:var(--surface-muted);border-radius:999px;height:3px;margin:0 14px 10px;overflow:hidden}.sales-campaign-progress>div,.sales-campaign-kpi i,.sales-campaign-stage-row i,.sales-campaign-funnel-row i{border-radius:999px;height:100%;display:block}.sales-campaign-card-section{border-bottom:1px solid var(--card-border);background:color-mix(in srgb, var(--surface-card) 92%, var(--surface-muted) 8%);padding:10px 14px}.sales-campaign-move{border-top:1px solid var(--card-border);border-bottom:1px solid var(--card-border);background:color-mix(in srgb, var(--surface-card) 88%, var(--surface-muted) 12%);gap:4px;padding:10px 14px;display:grid}.sales-campaign-move.critical{background:color-mix(in srgb, var(--surface-card) 82%, var(--chip-red-bg) 18%)}.sales-campaign-move.behind,.sales-campaign-move.setup{background:color-mix(in srgb, var(--surface-card) 82%, var(--chip-orange-bg) 18%)}.sales-campaign-move.on-track{background:color-mix(in srgb, var(--surface-card) 84%, var(--chip-green-bg) 16%)}.sales-campaign-move b{color:var(--text-strong);font-size:12px;line-height:1.2}.sales-campaign-move span{color:var(--text-soft);font-size:10.5px;font-weight:650;line-height:1.35}.sales-campaign-card-compact{border-bottom:1px solid var(--card-border);gap:10px;padding:10px 14px 12px;display:grid}.sales-campaign-action-row{grid-template-columns:8px minmax(0,1fr);align-items:start;gap:8px;margin-top:6px;display:grid}.sales-campaign-dot{background:var(--blue);border-radius:999px;width:6px;height:6px;margin-top:5px}.sales-campaign-dot.critical{background:var(--red)}.sales-campaign-dot.today{background:var(--orange)}.sales-campaign-action-title{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;font-weight:750;overflow:hidden}.sales-campaign-setup-prompts,.sales-campaign-funnel-pills{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.sales-campaign-setup-prompts span{background:var(--chip-orange-bg);color:var(--warning-text);border-radius:999px;padding:4px 8px;font-size:10px;font-weight:850}.sales-campaign-funnel-pills span{border:1px solid var(--card-border);background:var(--surface-card);color:var(--text-soft);border-radius:999px;align-items:center;gap:5px;padding:3px 7px;font-size:10px;font-weight:750;display:inline-flex}.sales-campaign-funnel-pills i{border-radius:999px;width:6px;height:6px}.sales-campaign-funnel-pills b{color:var(--text-strong)}.sales-campaign-funnel-mini{gap:5px;margin-top:8px;display:grid}.sales-campaign-funnel-row{color:var(--text-soft);grid-template-columns:minmax(72px,.7fr) minmax(40px,1fr) 28px;align-items:center;gap:8px;font-size:10.5px;display:grid}.sales-campaign-funnel-row div,.sales-campaign-stage-row>div:nth-child(2),.sales-campaign-kpi div{background:var(--surface-muted);border-radius:999px;height:4px;overflow:hidden}.sales-campaign-card-foot{background:var(--surface-card);border-bottom:0;align-items:center;padding:9px 14px}.sales-campaign-card-foot span{gap:2px;display:grid}.sales-campaign-card-foot b{color:var(--text-strong);font-size:12px}.sales-campaign-card-foot strong,.sales-campaign-link-button{border:1px solid var(--surface-brand-border);background:var(--surface-brand-soft);color:var(--surface-brand-text);cursor:pointer;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:850}.sales-campaign-archive{margin-top:22px}.sales-campaign-archive-head{color:var(--text-soft);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:12px;margin-bottom:12px;font-size:10px;font-weight:850;display:flex}.sales-campaign-archive-head i{background:var(--card-border);flex:1;height:1px}.sales-campaign-empty-state{border:1px dashed var(--card-border-strong);background:var(--surface-card);color:var(--text-soft);border-radius:14px;gap:6px;padding:22px;display:grid}.sales-campaign-empty-state b{color:var(--text-strong);font-size:14px}.sales-campaign-detail{gap:14px;display:grid}.sales-campaign-back{color:var(--text-soft);cursor:pointer;background:0 0;border:0;font-size:12px;font-weight:800}.sales-campaign-back:before{content:"‹";margin-right:6px;font-size:16px}.sales-campaign-detail-title{flex-wrap:wrap;flex:1;align-items:center;gap:10px;min-width:0;display:flex}.sales-campaign-detail-title span{color:var(--text-strong);font-size:14px;font-weight:850}.sales-campaign-detail-title small{color:var(--text-soft);font-size:11px;font-weight:700}.sales-campaign-status-bar,.sales-campaign-panel,.sales-campaign-table-wrap,.sales-campaign-resource-section{background:var(--surface-card);border:1px solid var(--card-border);box-shadow:var(--shadow-xs);border-radius:14px;overflow:hidden}.sales-campaign-status-bar{grid-template-columns:150px minmax(0,1fr);gap:0;display:grid}.sales-campaign-verdict{border-right:1px solid var(--card-border);align-content:center;gap:8px;padding:16px;display:grid}.sales-campaign-verdict span,.sales-campaign-kpi span{text-transform:uppercase;letter-spacing:.08em;color:var(--text-soft);font-size:10px;font-weight:800}.sales-campaign-kpis{grid-template-columns:repeat(5,minmax(110px,1fr));display:grid}.sales-campaign-kpi{border-right:1px solid var(--card-border);gap:6px;padding:14px;display:grid}.sales-campaign-kpi:last-child{border-right:0}.sales-campaign-kpi b{color:var(--text-strong);font-size:17px;line-height:1}.sales-campaign-kpi small{color:var(--text-soft);font-size:10px}.sales-campaign-diagnosis{border-top:1px solid var(--card-border);background:var(--chip-blue-bg);color:var(--text);grid-column:1/-1;align-items:center;gap:10px;padding:11px 16px;font-size:12px;display:flex}.sales-campaign-diagnosis.critical{background:var(--chip-red-bg)}.sales-campaign-diagnosis.behind{background:var(--chip-orange-bg)}.sales-campaign-diagnosis.on-track{background:var(--chip-green-bg)}.sales-campaign-diagnosis b{color:var(--text-strong);white-space:nowrap}.sales-campaign-exec-grid{grid-template-columns:minmax(190px,.42fr) minmax(0,1fr);gap:14px;margin-top:14px;display:grid}.sales-campaign-panel-head{border-bottom:1px solid var(--card-border);justify-content:space-between;align-items:center;gap:10px;padding:13px 16px;display:flex}.sales-campaign-panel-head b{color:var(--text-strong);font-size:13px}.sales-campaign-panel-head span{color:var(--text-soft);font-size:11px;font-weight:750}.sales-campaign-stage-list{gap:9px;padding:14px;display:grid}.sales-campaign-stage-row{grid-template-columns:minmax(0,1fr) 70px 28px;align-items:center;gap:10px;display:grid}.sales-campaign-stage-row>div:first-child{gap:2px;display:grid}.sales-campaign-stage-row b{color:var(--text);font-size:11px}.sales-campaign-stage-row span{color:var(--text-soft);font-size:10px}.sales-campaign-stage-row strong{text-align:right;font-size:11px}.sales-campaign-summary-strip{border-bottom:1px solid var(--card-border);background:color-mix(in srgb, var(--surface-card) 88%, var(--surface-muted) 12%);grid-template-columns:repeat(4,minmax(0,1fr));gap:0;display:grid}.sales-campaign-summary-strip span{border-right:1px solid var(--card-border);gap:2px;padding:10px 14px;display:grid}.sales-campaign-summary-strip span:last-child{border-right:0}.sales-campaign-summary-strip b{color:var(--text-strong);font-size:13px}.sales-campaign-summary-strip small{color:var(--text-soft);font-size:10px}.sales-campaign-money-table,.sales-campaign-table tbody{display:grid}.sales-campaign-money-table button{text-align:left;border:0;border-bottom:1px solid var(--card-border);background:var(--surface-card);color:var(--text);cursor:pointer;grid-template-columns:minmax(150px,1.2fr) 120px minmax(160px,1fr) 54px 84px 44px;align-items:center;gap:10px;padding:11px 16px;display:grid}.sales-campaign-money-table button:hover,.sales-campaign-table tbody tr:hover{background:color-mix(in srgb, var(--surface-card) 84%, var(--surface-muted) 16%)}.sales-campaign-money-table button.overdue{background:color-mix(in srgb, var(--surface-card) 82%, var(--chip-red-bg) 18%)}.sales-campaign-money-table span,.sales-campaign-table td{min-width:0;font-size:11.5px}.sales-campaign-money-table b,.sales-campaign-table b{color:var(--text-strong);font-size:12px}.sales-campaign-money-table small,.sales-campaign-table small{color:var(--text-soft);margin-top:2px;font-size:10.5px;display:block}.sales-campaign-money-table em{color:var(--surface-brand-text);font-size:11px;font-style:normal;font-weight:850}.sales-campaign-table{border-collapse:collapse;width:100%}.sales-campaign-table thead tr,.sales-campaign-table tbody tr{grid-template-columns:minmax(190px,1.6fr) 110px 70px 90px 80px 80px 52px;align-items:center;gap:10px;display:grid}.sales-campaign-table.prospects thead tr,.sales-campaign-table.prospects tbody tr{grid-template-columns:34px minmax(180px,1.4fr) 120px minmax(150px,1fr) 90px 70px 58px 48px}.sales-campaign-table th,.sales-campaign-table td{text-align:left;padding:11px 14px}.sales-campaign-table th{background:color-mix(in srgb, var(--surface-card) 86%, var(--surface-muted) 14%);color:var(--text-soft);letter-spacing:.1em;text-transform:uppercase;font-size:9.5px;font-weight:850}.sales-campaign-table tr{border-bottom:1px solid var(--card-border);cursor:pointer}.sales-campaign-table .urgent,.sales-campaign-kanban-card .urgent{color:var(--danger-text);font-weight:850}.sales-campaign-kanban{align-items:start;gap:12px;display:grid;overflow-x:auto}.sales-campaign-kanban-col{border:1px solid var(--card-border);background:color-mix(in srgb, var(--surface-card) 78%, var(--surface-muted) 22%);border-radius:14px;min-height:360px;padding:10px}.sales-campaign-kanban-head{color:var(--text-strong);justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;font-size:11px;display:flex}.sales-campaign-kanban-head span{color:var(--text-soft);font-family:var(--font-mono,monospace)}.sales-campaign-kanban-card{text-align:left;border:1px solid var(--card-border);border-left:3px solid var(--blue);background:var(--surface-card);width:100%;box-shadow:var(--shadow-xs);cursor:grab;border-radius:10px;gap:5px;margin-bottom:8px;padding:11px;display:grid}.sales-campaign-kanban-card b{color:var(--text-strong);font-size:12px}.sales-campaign-kanban-card span,.sales-campaign-kanban-card small{color:var(--text-soft);font-size:10.5px}.sales-campaign-kanban-card em{background:var(--chip-blue-bg);max-width:100%;color:var(--blue-strong);white-space:nowrap;text-overflow:ellipsis;border-radius:5px;justify-self:start;padding:2px 6px;font-size:9.5px;font-style:normal;font-weight:750;overflow:hidden}.sales-campaign-kanban-card div{justify-content:space-between;align-items:center;gap:10px;display:flex}.sales-campaign-resource-section{margin-top:14px}.sales-campaign-resource-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;padding:14px;display:grid}.sales-campaign-resource-card{text-align:left;border:1px solid var(--card-border);background:var(--surface-card);cursor:pointer;border-radius:10px;gap:7px;min-height:126px;padding:13px;display:grid}.sales-campaign-resource-card span{background:var(--surface-muted);color:var(--text-soft);border-radius:6px;justify-self:start;padding:3px 7px;font-size:9.5px;font-weight:850}.sales-campaign-resource-card b{color:var(--text-strong);font-size:12px;line-height:1.35}.sales-campaign-resource-card small,.sales-campaign-resource-card em{color:var(--text-soft);font-size:10.5px;font-style:normal}.sales-campaign-bulkbar{z-index:220;color:#fff;background:#0f172aeb;border-radius:16px;align-items:center;gap:8px;max-width:min(980px,100vw - 32px);padding:10px;display:flex;position:fixed;bottom:22px;left:50%;overflow-x:auto;transform:translate(-50%);box-shadow:0 18px 48px #0f172a47}.sales-campaign-bulkbar button{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff1f;border-radius:9px;flex-shrink:0;padding:7px 10px;font-size:11px;font-weight:800}.sales-campaign-bulkbar button.danger{background:#ef4444;border-color:#ef44447a}.sales-campaign-drawer-overlay{justify-content:flex-end;align-items:stretch}.sales-campaign-prospect-drawer{background:var(--surface-card);border-left:1px solid var(--card-border-strong);width:min(980px,100vw - 32px);max-width:980px;height:100vh;padding:20px;overflow:auto;box-shadow:-18px 0 50px #0f172a2e}@media (width<=980px){.sales-campaign-command-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.sales-campaign-status-bar,.sales-campaign-exec-grid{grid-template-columns:1fr}.sales-campaign-verdict{border-right:0;border-bottom:1px solid var(--card-border)}.sales-campaign-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.sales-campaign-money-table button,.sales-campaign-table thead tr,.sales-campaign-table tbody tr,.sales-campaign-table.prospects thead tr,.sales-campaign-table.prospects tbody tr{min-width:760px}}@media (width<=720px){.sales-campaign-control-row,.sales-campaign-workbar{flex-wrap:wrap;align-items:stretch}.sales-campaign-filter-actions,.sales-campaign-workbar-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}.sales-campaign-filter-actions{margin-left:0}.sales-campaign-search{flex-basis:100%;min-width:0;max-width:none}.sales-campaign-command-strip,.sales-campaign-kpis,.sales-campaign-summary-strip{grid-template-columns:1fr}.sales-campaign-card-foot{flex-direction:column;align-items:stretch}.sales-campaign-card-foot strong{text-align:center}.sales-campaign-diagnosis{flex-direction:column;align-items:flex-start}.sales-campaign-prospect-drawer{width:100vw;padding:14px}}.input-base{border:1px solid var(--input-border);border-radius:var(--radius-md);width:100%;color:var(--text);background:var(--input-bg);outline:none;padding:12px 14px;font-family:inherit;font-size:13px;transition:border .12s}.input-base:focus{border-color:var(--blue)}.btn-primary{background:var(--blue);color:var(--text-inverse);border-radius:var(--radius-md);cursor:pointer;border:none;padding:12px 16px;font-family:inherit;font-size:13px;font-weight:600;transition:opacity .12s}.btn-primary:hover{opacity:.9}.btn-secondary{background:var(--panel-bg);color:var(--blue);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;padding:10px 14px;font-family:inherit;font-size:13px;font-weight:600;transition:all .12s}.btn-secondary:hover{opacity:.92}.btn-danger{background:var(--danger-soft);color:var(--red);border:1px solid var(--danger-border);border-radius:var(--radius-md);cursor:pointer;padding:10px 14px;font-family:inherit;font-size:13px;font-weight:600;transition:all .12s}.btn-danger:hover{opacity:.92}.btn-ghost{background:var(--surface-ghost);color:var(--text);border:1px solid var(--card-border-strong);border-radius:var(--radius-md);cursor:pointer;padding:10px 14px;font-size:13px;font-weight:700}.notebook-rich-editor{min-height:320px;color:var(--text);outline:none;font-size:11px;line-height:1.75}.notebook-rich-editor .is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--muted);pointer-events:none;height:0}.notebook-rich-editor p{margin:0 0 12px}.notebook-rich-editor h1,.notebook-rich-editor h2,.notebook-rich-editor h3{margin:18px 0 10px}.notebook-rich-editor ul,.notebook-rich-editor ol{margin:0 0 14px 20px;padding:0}.notebook-rich-editor blockquote{color:var(--muted);border-left:3px solid #5d87ff4d;margin:0 0 14px;padding-left:14px}.notebook-rich-editor mark{border-radius:4px;padding:0 2px}.notebook-rich-editor a{color:var(--text-link);text-underline-offset:2px;text-decoration:underline}.notebook-rich-editor code{background:var(--surface-selected);border:1px solid color-mix(in srgb, var(--blue) 22%, var(--card-border));border-radius:6px;padding:1px 5px;font-size:.92em}.notebook-rich-editor pre{background:color-mix(in srgb, var(--ink) 92%, transparent);color:color-mix(in srgb, var(--surface-card) 90%, white);border-radius:14px;margin:0 0 16px;padding:14px 16px;overflow-x:auto}.notebook-rich-editor pre code{color:inherit;background:0 0;border:0;border-radius:0;padding:0}.notebook-rich-editor hr{border:0;border-top:1px solid var(--card-border-strong);margin:20px 0}.notebook-rich-editor img{width:auto;max-width:min(100%,720px);height:auto;box-shadow:0 12px 32px color-mix(in srgb, var(--ink) 16%, transparent);border-radius:16px;margin:14px 0;display:block}.notebook-rich-editor ul[data-type=taskList]{margin-left:0;padding-left:0;list-style:none}.notebook-rich-editor ul[data-type=taskList] li{align-items:flex-start;gap:10px;margin-bottom:8px;display:flex}.notebook-rich-editor ul[data-type=taskList] li>label{flex:none;justify-content:center;align-items:center;margin-top:3px;display:inline-flex}.notebook-rich-editor ul[data-type=taskList] li>label input{width:15px;height:15px;margin:0}.notebook-rich-editor ul[data-type=taskList] li>div{flex:1}.notebook-rich-editor ul[data-type=taskList] li>div p{margin:0}.notebook-rich-editor table{border-collapse:collapse;table-layout:auto;border:1px solid var(--card-border-strong);background:var(--surface-card);width:100%;margin:12px 0 18px;overflow:hidden}.notebook-rich-editor th,.notebook-rich-editor td{border:1px solid var(--card-border-strong);vertical-align:middle;min-width:1em;font-size:inherit;background-clip:padding-box;padding:6px 8px;line-height:1.5;position:relative}.notebook-rich-editor th p,.notebook-rich-editor td p{margin:0}.notebook-rich-editor th ul,.notebook-rich-editor th ol,.notebook-rich-editor td ul,.notebook-rich-editor td ol{margin:0;padding-left:18px}.notebook-rich-editor th li,.notebook-rich-editor td li{margin:0 0 6px}.notebook-rich-editor th li:last-child,.notebook-rich-editor td li:last-child{margin-bottom:0}.notebook-rich-editor th ul[data-type=taskList],.notebook-rich-editor td ul[data-type=taskList]{margin:0;padding-left:0}.notebook-rich-editor th ul[data-type=taskList] li,.notebook-rich-editor td ul[data-type=taskList] li{align-items:center;gap:8px;margin:0 0 4px}.notebook-rich-editor th ul[data-type=taskList] li>label,.notebook-rich-editor td ul[data-type=taskList] li>label{align-self:center;margin-top:0;line-height:1}.notebook-rich-editor th ul[data-type=taskList] li>label input,.notebook-rich-editor td ul[data-type=taskList] li>label input{width:13px;height:13px}.notebook-rich-editor th ul[data-type=taskList] li>div,.notebook-rich-editor td ul[data-type=taskList] li>div{align-items:center;min-height:13px;display:flex}.notebook-rich-editor th{background:var(--surface-muted-strong);font-weight:700}.notebook-rich-editor .selectedCell:after{content:"";background:var(--surface-selected);pointer-events:none;position:absolute;inset:0}.notebook-rich-editor .column-resize-handle{background:var(--blue);pointer-events:none;width:4px;position:absolute;top:0;bottom:0;right:-2px}.notebook-rich-editor:focus-visible{outline:none}.notebook-table-insert-guide{z-index:4;pointer-events:none;box-shadow:0 0 0 1px color-mix(in srgb, var(--surface-card) 88%, transparent);background:#5d87ffc7;position:absolute}.notebook-table-insert-guide.vertical{width:2px}.notebook-table-insert-guide.horizontal{height:2px}.notebook-table-insert-button{z-index:5;background:color-mix(in srgb, var(--surface-card) 96%, transparent);width:26px;height:26px;color:var(--blue);cursor:pointer;box-shadow:0 10px 22px color-mix(in srgb, var(--ink) 18%, transparent);border:1px solid #5d87ff3d;border-radius:999px;justify-content:center;align-items:center;display:inline-flex;position:absolute}.notebook-table-insert-button:hover{background:var(--surface-selected)}.notebook-table-context-menu{border:1px solid color-mix(in srgb, var(--ink) 8%, var(--card-border));background:color-mix(in srgb, var(--surface-card) 96%, transparent);width:210px;box-shadow:0 18px 42px color-mix(in srgb, var(--ink) 20%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:14px;gap:2px;padding:6px;display:grid}.notebook-table-context-menu button{color:var(--text);text-align:left;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:9px;align-items:center;gap:8px;padding:8px 9px;font-size:11px;font-weight:600;display:inline-flex}.notebook-table-context-menu button:hover{background:#5d87ff14}.notebook-table-context-menu-icon{color:var(--muted);justify-content:center;align-items:center;display:inline-flex}.thai-balanced-text{padding-top:1px;font-family:Plus Jakarta Sans,IBM Plex Sans Thai,sans-serif;line-height:1.45}.lead-engine-shell{background:0 0;min-height:calc(100vh - 55px);margin:-16px;padding:16px}.lead-engine-main{flex-direction:column;gap:6px;min-width:0;min-height:0;display:flex}.lead-engine-header-button{background:var(--surface-card);border:1px solid var(--card-border);min-height:38px;color:var(--text);cursor:pointer;box-shadow:0 6px 18px color-mix(in srgb, var(--ink) 10%, transparent);border-radius:12px;padding:0 13px;font-size:11.5px;font-weight:700}.lead-engine-header-button.is-active{border-color:var(--blue);background:var(--surface-selected);color:var(--blue)}.lead-engine-header-button-primary,.lead-engine-header-button-primary.is-active{background:var(--blue);color:var(--text-inverse);border:none}.lead-engine-topbar{background:var(--surface-card);box-shadow:none;border:none;border-radius:0;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:6px;padding:0;display:flex;overflow:visible}.lead-engine-tabs{background:var(--surface-card);border:none;border-radius:0;flex-wrap:wrap;align-items:center;gap:6px;min-width:0;padding:0;display:flex}.lead-engine-tab{border:1px solid var(--card-border);background:var(--surface-card);color:var(--muted);cursor:pointer;white-space:nowrap;border-radius:999px;flex:none;padding:6px 12px;font-size:11px;font-weight:700;line-height:1.2;transition:background .14s,color .14s,box-shadow .14s,transform .14s}.lead-engine-tab:hover{color:var(--text)}.lead-engine-tab.is-active{background:var(--surface-selected);color:var(--blue);border-color:var(--blue);box-shadow:none}.lead-engine-tab:disabled{color:var(--button-primary-muted);cursor:not-allowed}.lead-engine-panel{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.lead-workspace-grid{flex:1;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);align-items:stretch;gap:12px;min-width:0;min-height:0;display:grid}.lead-workspace-primary{flex-direction:column;gap:12px;min-width:0;min-height:0;display:flex}.lead-campaign-summary{gap:14px;display:grid}.lead-campaign-metrics{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.lead-campaign-funnel{background:var(--surface-card);border:1px solid var(--card-border);border-radius:14px;padding:12px}.lead-campaign-assets{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.lead-asset-card{background:var(--surface-card);border:1px solid var(--card-border);border-radius:14px;padding:12px}.lead-asset-list{gap:8px;display:grid}.lead-asset-button{text-align:left;border:1px solid var(--card-border);background:var(--surface-muted);color:var(--text);cursor:pointer;border-radius:10px;padding:9px 10px}.lead-table-toolbar{border-bottom:1px solid var(--card-border);background:var(--surface-card);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px;display:flex}.lead-table-toolbar-group{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.lead-filter-chip{border:1px solid var(--card-border);background:var(--surface-muted);color:var(--muted);cursor:pointer;border-radius:999px;padding:6px 10px;font-size:10.5px;font-weight:800}.lead-filter-chip.is-active{background:var(--surface-selected)}.lead-search-pill{border:1px solid var(--card-border);background:var(--surface-card);border-radius:999px;align-items:center;gap:6px;min-width:190px;padding:7px 11px;display:flex}.lead-search-pill input{color:var(--text);background:0 0;border:none;outline:none;width:100%;font-size:12px}.lead-table-head,.lead-table-row{grid-template-columns:minmax(160px,1.4fr) minmax(70px,.6fr) minmax(55px,.5fr) minmax(140px,1.2fr) minmax(80px,.7fr) minmax(120px,1fr) minmax(110px,1fr) minmax(70px,.6fr) 68px;align-items:center;gap:10px;padding:9px 14px;display:grid}.lead-col-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);white-space:nowrap;font-size:9.5px;font-weight:900}.lead-table-head{z-index:2;background:var(--surface-table-head);border-bottom:1px solid var(--card-border);position:sticky;top:0}.lead-table-row{border-bottom:1px solid var(--card-border);cursor:pointer;min-width:0;transition:background .12s,box-shadow .12s}.lead-table-row:nth-child(2n){background:var(--surface-table-row-alt)}.lead-table-row:hover{background:var(--surface-table-row-hover)}.lead-info-rail{background:0 0;border:none;border-radius:0;flex-direction:column;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.lead-info-rail-header{background:linear-gradient(180deg, var(--surface-card) 0%, var(--surface-muted) 100%);border-bottom:1px solid #94a3b81f;flex:none;justify-content:space-between;align-items:flex-start;gap:12px;padding:11px 14px 9px;display:flex}.lead-info-rail-body{flex-direction:column;gap:10px;min-width:0;min-height:0;padding:8px 14px 12px;display:flex;overflow-y:auto}.lead-asset-preview-drawer{z-index:44;pointer-events:none;position:fixed;inset:55px auto 0 0}.lead-asset-preview-panel{background:var(--surface-muted);border-right:1px solid var(--card-border);pointer-events:auto;width:32vw;min-width:380px;max-width:560px;padding:14px;transition:transform .22s;position:absolute;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:16px 0 42px #0f172a24}.lead-asset-preview-header{border:1px solid var(--card-border);background:linear-gradient(180deg, color-mix(in srgb, var(--surface-card) 96%, transparent), color-mix(in srgb, var(--surface-muted) 96%, transparent));border-bottom:none;border-radius:18px 18px 0 0;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px;display:flex}.lead-asset-preview-body{border:1px solid var(--card-border);border-top:1px solid var(--card-border-strong);background:var(--surface-card);border-radius:0 0 18px 18px;height:calc(100% - 88px);min-height:0;overflow:hidden}.lead-asset-preview-drawer.is-open{pointer-events:auto}.lead-asset-preview-drawer.is-open .lead-asset-preview-panel{transform:translate(0)}.lead-desktop-drawer{z-index:45;pointer-events:none;position:fixed;inset:55px 0 0}.lead-desktop-drawer-backdrop{background:var(--overlay-scrim);opacity:0;pointer-events:none;border:none;transition:opacity .18s,background .18s;position:absolute;inset:0}.lead-desktop-drawer-panel{background:var(--surface-modal);width:min(520px,100vw);min-width:420px;max-width:520px;box-shadow:-24px 0 60px color-mix(in srgb, var(--ink) 18%, transparent);pointer-events:auto;padding:0;transition:transform .22s;position:absolute;top:0;bottom:0;right:0;transform:translate(100%)}.lead-desktop-drawer.is-open{pointer-events:auto}.lead-desktop-drawer.is-open .lead-desktop-drawer-backdrop{opacity:1;background:var(--overlay-scrim);pointer-events:auto}.lead-desktop-drawer.is-open .lead-desktop-drawer-panel{transform:translate(0)}.lead-mobile-drawer{background:var(--overlay-scrim);z-index:60;justify-content:flex-end;display:flex;position:fixed;inset:0}.lead-mobile-drawer-panel{background:var(--surface-modal);border-left:1px solid var(--surface-modal-border);width:92vw;max-width:420px;height:100%;padding:16px;overflow-y:auto}.lead-mobile-drawer-header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.lead-campaign-header{background:var(--surface-card);box-shadow:0 1px 4px color-mix(in srgb, var(--ink) 8%, transparent);border-radius:14px}.lead-campaign-dashboard{gap:12px;min-width:0;min-height:0;display:grid}.lead-campaign-card-grid{grid-template-columns:repeat(auto-fill,minmax(268px,320px));justify-content:start;align-items:start;gap:14px;min-width:0;padding:2px 2px 6px 0;display:grid;overflow-y:auto}.lead-campaign-card{background:var(--surface-card);border:1px solid var(--card-border);cursor:pointer;box-shadow:0 1px 4px color-mix(in srgb, var(--ink) 8%, transparent);border-radius:11px;flex-direction:column;gap:12px;padding:16px;transition:box-shadow .12s,border-color .12s;display:flex}.lead-campaign-card:hover{box-shadow:0 4px 16px color-mix(in srgb, var(--ink) 14%, transparent)}.lead-campaign-card-hit{text-align:left;cursor:pointer;background:0 0;border:none;gap:10px;padding:0;display:grid}.lead-campaign-card-progress{background:var(--surface-muted-strong);border-radius:2px;gap:3px;height:4px;margin-bottom:2px;display:flex;overflow:hidden}.lead-campaign-card-progress-fill{border-radius:2px;height:100%}.lead-campaign-card-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.lead-campaign-card-title{color:var(--text);font-size:14px;font-weight:700;line-height:1.25}.lead-campaign-card-subtitle{color:var(--muted);margin-top:2px;font-size:11px;line-height:1.4}.lead-campaign-card-percent{white-space:nowrap;font-size:13px;font-weight:700}.lead-campaign-card-pill{border-radius:4px;padding:3px 9px;font-size:11px;font-weight:600;display:inline-block}.lead-campaign-card-meta{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;font-size:11px;display:flex}.lead-campaign-card-actions{justify-content:space-between;align-items:center;gap:6px;display:flex}@media (width<=1180px){.lead-engine-topbar{flex-wrap:wrap}.lead-campaign-card-grid{grid-template-columns:repeat(auto-fill,minmax(280px,320px))}.lead-campaign-assets{grid-template-columns:minmax(0,1fr)}}@media (width<=900px){.lead-engine-shell{padding:12px}.lead-campaign-dashboard-top{flex-direction:column;align-items:stretch}.lead-campaign-card-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}}@media (width<=640px){.lead-engine-header-button{flex:none}.lead-engine-tabs{width:100%}.lead-engine-tab{width:auto;padding:6px 12px}.lead-table-toolbar{align-items:stretch}.lead-dashboard-card-grid{grid-template-columns:minmax(0,1fr)}.lead-table-toolbar-group,.lead-search-pill{width:100%}.lead-table-head,.lead-table-row{grid-template-columns:minmax(140px,1.2fr) minmax(120px,1fr) minmax(60px,.5fr) minmax(0,1fr)}.lead-campaign-card-grid{grid-template-columns:minmax(0,1fr)}}.font-test-page{gap:24px}.font-test-checklist-card,.font-test-column,.font-test-dashboard-card{border:1px solid #dce5f0f2;box-shadow:0 18px 40px #18274b14}.font-test-checklist-card{background:linear-gradient(#f8fbfffa 0%,#f2f7fdfa 100%);border-radius:20px;width:min(360px,100%);padding:18px}.font-test-checklist{gap:10px;margin-top:12px;display:grid}.font-test-checklist-item{color:var(--text);background:#ffffffe0;border-radius:14px;padding:10px 12px;font-size:12px;line-height:1.5}.font-test-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.font-test-column{border-radius:28px;flex-direction:column;gap:18px;min-width:0;padding:20px;display:flex}.font-test-column-current{background:linear-gradient(#fffffffa 0%,#f6f9fdfa 100%)}.font-test-column-candidate{background:radial-gradient(circle at 100% 0,#2f9c951f,#0000 34%),linear-gradient(#fffffffa 0%,#f1f8f7fa 100%)}.font-test-column-header,.font-test-dashboard-topline,.font-test-button-row,.font-test-badge-group{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.font-test-chip,.font-test-badge{letter-spacing:.08em;text-transform:uppercase;border-radius:999px;align-items:center;min-height:28px;padding:0 10px;font-size:10px;font-weight:800;display:inline-flex}.font-test-chip{color:var(--blue-strong);background:#5d87ff1f}.font-test-badge{color:var(--ink);background:#1720330f}.font-test-column-title{letter-spacing:-.04em;color:var(--ink);margin-top:12px;font-size:28px;line-height:1}.font-test-column-description,.font-test-body,.font-test-mixed-line{color:#445068;font-size:14px;line-height:1.75}.font-test-column-description{max-width:52ch;margin-top:10px}.font-test-stack{gap:14px;display:grid}.font-test-surface,.font-test-dashboard-card{background:#ffffffeb;border-radius:22px;padding:18px}.font-test-hero{background:radial-gradient(circle at 0 0,#5d87ff1f,#0000 32%),linear-gradient(#fffffffa 0%,#f5f8fcfa 100%)}.font-test-kicker,.font-test-section-label,.font-test-metric-label,.font-test-label{letter-spacing:.08em;text-transform:uppercase;color:var(--blue-strong);font-size:11px;font-weight:800}.font-test-display{letter-spacing:-.055em;color:var(--ink);max-width:12ch;margin-top:12px;font-size:clamp(34px,3vw,44px);line-height:.98}.font-test-body,.font-test-mixed-line,.font-test-caption{margin-top:12px}.font-test-section-title{letter-spacing:-.035em;color:var(--ink);margin-top:10px;font-size:23px;line-height:1.12}.font-test-caption,.font-test-column-note{color:#6c7b93;font-size:12px;line-height:1.6}.font-test-form-grid,.font-test-metrics-grid{gap:10px;display:grid}.font-test-input{width:100%;min-height:44px;color:var(--text);font:inherit;background:#fff;border:1px solid #dce5f0f2;border-radius:14px;padding:11px 14px}.font-test-button-primary,.font-test-button-secondary{min-height:42px;font:inherit;cursor:default;border-radius:14px;padding:0 14px;font-size:12px;font-weight:700}.font-test-button-primary{background:var(--blue);color:#fff;border:none;box-shadow:0 12px 24px #5d87ff38}.font-test-button-secondary{color:var(--text);background:#fff;border:1px solid #dce5f0f2}.font-test-metrics-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.font-test-metric-box{background:linear-gradient(#fcfdff 0%,#f5f8fc 100%);border:1px solid #dce5f0f2;border-radius:18px;padding:14px}.font-test-metric-value{font-family:var(--font-test-data,inherit);letter-spacing:0;color:var(--ink);margin-top:6px;font-size:24px;line-height:1}.font-test-data-list{gap:8px;margin-top:14px;display:grid}.font-test-data-row{background:#ffffffb8;border:1px solid #dce5f0e6;border-radius:12px;grid-template-columns:minmax(96px,.9fr) minmax(0,1fr) minmax(68px,.6fr);align-items:center;gap:10px;min-height:38px;padding:8px 10px;display:grid}.font-test-data-label{color:#6c7b93;font-size:11px;font-weight:700;line-height:1.3}.font-test-data-value{font-family:var(--font-test-data,inherit);letter-spacing:0;color:var(--ink);font-size:12px;font-weight:500;line-height:1.25}.font-test-data-meta{color:var(--blue-strong);justify-self:end}.font-test-column-note{padding:0 2px}@media (width<=1100px){.font-test-grid{grid-template-columns:minmax(0,1fr)}.font-test-checklist-card{width:100%}}@media (width<=700px){.font-test-column{border-radius:22px;padding:16px}.font-test-surface,.font-test-dashboard-card,.font-test-checklist-card{border-radius:18px;padding:16px}.font-test-display{max-width:none;font-size:clamp(28px,8vw,38px)}.font-test-metrics-grid{grid-template-columns:minmax(0,1fr)}.font-test-data-row{grid-template-columns:minmax(0,1fr);align-items:flex-start}.font-test-data-meta{justify-self:start}.font-test-button-primary,.font-test-button-secondary{width:100%}}@keyframes prima-toast-slide-in{0%{opacity:0;transform:translate(22px)scale(.98)}to{opacity:1;transform:translate(0)scale(1)}}.sp-toolbar,.sp-toolbar-left,.sp-toolbar-right{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sp-toolbar{border:1px solid var(--card-border);background:var(--surface-card);border-radius:10px;justify-content:space-between;padding:6px 8px}.sp-year-control{color:var(--text-strong);align-items:center;gap:5px;font-size:11.5px;font-weight:750;display:inline-flex}.sp-year-control button{border:1px solid var(--card-border-strong);background:var(--surface-card);width:24px;height:24px;color:var(--text);cursor:pointer;border-radius:6px;place-items:center;display:inline-grid}.sp-review-month{min-height:30px;color:var(--text);align-items:center;gap:7px;font-size:12.5px;font-weight:800;display:inline-flex}.sp-search{border:1px solid var(--card-border);background:var(--surface-muted);width:180px;min-height:28px;color:var(--muted);border-radius:8px;align-items:center;gap:6px;padding:0 9px;display:inline-flex}.sp-search input{width:100%;min-width:0;color:var(--text);font:inherit;background:0 0;border:0;outline:0;font-size:11.5px}.sp-search input::placeholder{color:var(--muted)}.sp-error{border:1px solid var(--danger-border);background:var(--danger-soft);color:var(--danger-text);border-radius:12px;align-items:center;gap:8px;padding:10px 12px;font-size:12.5px;font-weight:700;display:flex}.sp-stat-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.sp-stat-card{background:var(--surface-card);border-radius:10px;padding:10px 12px}.sp-stat-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:8.5px;font-weight:850;line-height:1}.sp-stat-value{letter-spacing:-.03em;color:var(--ink);margin-top:5px;font-size:23px;font-weight:850;line-height:.95}.sp-stat-hint{color:var(--muted);margin-top:5px;font-size:10.5px}.sp-stat-card.fail .sp-stat-value{color:var(--danger-text)}.sp-stat-card.pass .sp-stat-value{color:var(--success-text)}.sp-stat-card.warn .sp-stat-value{color:var(--warning-text)}.sp-matrix-card{border-radius:10px;overflow:hidden}.sp-matrix-head{border-bottom:1px solid var(--card-border);background:var(--surface-card);justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;display:flex}.sp-matrix-title{color:var(--text-strong);font-size:12.5px;font-weight:800}.sp-matrix-sub{color:var(--muted);margin-top:2px;font-size:10px}.sp-legend{border:1px solid var(--card-border);background:var(--surface-muted);color:var(--muted);flex-wrap:wrap;align-items:center;gap:7px;padding:5px 7px;font-size:10px;display:flex}.sp-legend span{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.sp-legend i{border-radius:3px;width:8px;height:8px;display:inline-block}.sp-legend i.pass{border:1px solid color-mix(in srgb, var(--green) 32%, var(--card-border));background:color-mix(in srgb, var(--green) 11%, var(--surface-card))}.sp-legend i.fail{border:1px solid color-mix(in srgb, var(--red) 28%, var(--card-border));background:color-mix(in srgb, var(--red) 10%, var(--surface-card))}.sp-legend i.na{border:1px solid var(--card-border-strong);background:var(--surface-muted)}.sp-table-wrap{min-height:460px;max-height:calc(100vh - 205px);overflow:auto}.sp-matrix-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;min-width:900px}.sp-matrix-table th,.sp-matrix-table td{border-bottom:1px solid color-mix(in srgb, var(--card-border) 76%, transparent)}.sp-matrix-table th{z-index:5;background:var(--surface-table-head);height:25px;color:var(--muted);text-align:center;white-space:nowrap;font-size:9px;font-weight:750;position:sticky;top:0}.sp-matrix-table th.sticky,.sp-matrix-table td.sticky{z-index:6;position:sticky}.sp-matrix-table th.sticky{z-index:8}.sp-matrix-table .client{text-align:left;width:156px;min-width:156px;left:0}.sp-matrix-table .sector{text-align:left;width:86px;min-width:86px;left:156px}.sp-matrix-table th.current-month,.sp-matrix-table td.current-month{background:var(--surface-info-soft)}.sp-client-matrix-row td{background:var(--surface-table-row);height:31px;color:var(--text-strong);border-bottom-color:color-mix(in srgb, var(--card-border) 68%, transparent);text-align:center;padding:0 8px;font-size:10.5px;font-weight:760}.sp-client-matrix-row .sticky{background:var(--surface-table-row)}.sp-client-matrix-row .client{font-weight:820}.sp-client-matrix-row .sector{color:var(--muted);text-align:left;white-space:nowrap;text-overflow:ellipsis;padding:0 8px;font-size:9.5px;font-weight:760;overflow:hidden}.sp-cell-chip{width:31px;height:19px;font:inherit;cursor:pointer;border-radius:5px;place-items:center;transition:background .12s,border-color .12s,transform .12s;display:inline-grid;position:relative}.sp-cell-chip:not(:disabled):hover{border-color:color-mix(in srgb, var(--blue) 32%, var(--card-border));transform:translateY(-1px)}.sp-cell-chip:disabled{cursor:default}.sp-cell-chip.pass{border:1px solid color-mix(in srgb, var(--green) 28%, var(--card-border));background:color-mix(in srgb, var(--green) 8%, var(--surface-card));color:var(--success-text)}.sp-cell-chip.fail{border:1px solid color-mix(in srgb, var(--red) 28%, var(--card-border));background:color-mix(in srgb, var(--red) 8%, var(--surface-card));color:var(--danger-text)}.sp-cell-chip.no_data{border:1px solid color-mix(in srgb, var(--muted) 12%, var(--card-border));background:color-mix(in srgb, var(--surface-card) 55%, var(--surface-muted) 45%);color:color-mix(in srgb, var(--muted) 72%, transparent)}.sp-cell-chip.future{opacity:.48}.sp-cell-count{background:var(--danger-text);min-width:14px;height:14px;color:var(--surface-card);border-radius:999px;place-items:center;font-size:9px;font-weight:900;line-height:1;display:inline-grid}.sp-cell-chip.current{outline:2px solid color-mix(in srgb, var(--blue) 82%, white);outline-offset:1px}.sp-detail-drawer,.sp-session-banner,.sp-review-card{overflow:hidden}.sp-detail-head,.sp-session-banner{align-items:center;gap:14px;padding:13px 16px;display:flex}.sp-detail-head{border-bottom:1px solid var(--card-border);justify-content:space-between}.sp-drawer-backdrop{z-index:260;background:#0f172a14;position:fixed;inset:0}.sp-detail-drawer{z-index:270;border-left:1px solid var(--card-border-strong);background:var(--surface-card);grid-template-rows:auto minmax(0,1fr);width:min(460px,94vw);height:100vh;display:grid;position:fixed;top:0;right:0;box-shadow:-18px 0 42px #0f172a24}.sp-drawer-body{background:var(--shell-workspace-bg);align-content:start;gap:12px;min-height:0;padding:14px;display:grid;overflow:auto}.sp-drawer-status{border:1px solid var(--card-border);background:var(--surface-card);color:var(--muted);border-radius:10px;gap:9px;padding:10px 11px;font-size:12px;font-weight:800;display:grid}.sp-drawer-status.fail{border-color:var(--danger-border);background:var(--danger-soft);color:var(--danger-text)}.sp-drawer-status.pass{border-color:color-mix(in srgb, var(--green) 28%, var(--card-border));background:color-mix(in srgb, var(--green) 10%, var(--surface-card));color:var(--success-text)}.sp-drawer-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.sp-drawer-summary-grid span{border:1px solid color-mix(in srgb, var(--card-border) 76%, transparent);background:color-mix(in srgb, var(--surface-card) 76%, transparent);min-height:30px;color:var(--muted);border-radius:8px;align-content:center;padding:5px 7px;font-size:10.5px;line-height:1.25;display:grid}.sp-drawer-summary-grid strong{color:var(--text-strong);font-size:12px}.sp-needs-action{border:1px solid var(--danger-border);background:var(--danger-soft);border-radius:12px;gap:10px;padding:12px;display:grid}.sp-failed-list{gap:6px;display:grid}.sp-failed-row{border:1px solid color-mix(in srgb, var(--red) 18%, var(--card-border));background:color-mix(in srgb, var(--surface-card) 78%, transparent);border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:8px 9px;display:flex}.sp-failed-row strong{color:var(--text-strong);font-size:12px;display:block}.sp-failed-row span{color:var(--muted);margin-top:2px;font-size:10.5px;display:block}.sp-failed-row>div:last-child{color:var(--danger-text);text-align:right;font-size:11.5px;font-weight:850}.sp-drawer-groups{gap:12px;display:grid}.sp-drawer-group{gap:8px;display:grid}.sp-drawer-group-title{color:var(--text-strong);justify-content:space-between;align-items:center;gap:10px;font-size:12px;font-weight:850;display:flex}.sp-detail-title,.sp-session-title{color:var(--text-strong);font-size:14px;font-weight:850}.sp-detail-sub,.sp-session-sub{color:var(--muted);margin-top:3px;font-size:11.5px}.sp-live-dot{background:var(--green);width:9px;height:9px;box-shadow:0 0 0 4px color-mix(in srgb, var(--green) 14%, transparent);border-radius:999px;flex:none}.sp-session-copy{min-width:180px}.sp-progress{flex:260px;max-width:360px}.sp-progress>div:first-child{color:var(--muted);justify-content:space-between;margin-bottom:5px;font-size:10.5px;font-weight:750;display:flex}.sp-progress-track{background:var(--surface-muted-strong);border-radius:999px;height:5px;overflow:hidden}.sp-progress-track div{border-radius:inherit;background:var(--blue);height:100%;transition:width .18s}.sp-review-tabs{border:1px solid var(--card-border);background:var(--surface-card);border-radius:13px;grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden}.sp-review-tabs button{border:0;border-right:1px solid var(--card-border);min-height:42px;color:var(--text);font:inherit;cursor:pointer;background:0 0;font-size:12px;font-weight:850}.sp-review-tabs button:last-child{border-right:0}.sp-review-tabs button.active{background:var(--surface-selected);color:var(--surface-brand-text)}.sp-review-tabs span{border-radius:999px;align-items:center;min-height:18px;margin-left:6px;padding:0 7px;font-size:10px;font-weight:850;display:inline-flex}.sp-review-tabs span.fail{background:var(--danger-soft);color:var(--danger-text)}.sp-review-tabs span.ok{background:var(--surface-muted);color:var(--muted)}.sp-review-list{gap:8px;display:grid}.sp-review-card{border-color:var(--card-border-strong)}.sp-review-card.fail{border-color:color-mix(in srgb, var(--red) 28%, var(--card-border-strong))}.sp-review-card.pass{border-color:color-mix(in srgb, var(--green) 24%, var(--card-border-strong))}.sp-review-card.reviewed{opacity:.62}.sp-review-card-head{background:var(--surface-card);text-align:left;width:100%;min-height:58px;font:inherit;border:0;grid-template-columns:22px minmax(190px,1fr) 132px 126px 116px 96px;align-items:center;gap:12px;padding:10px 14px;display:grid}.sp-review-card-head:hover{background:var(--surface-hover)}.sp-review-card-head .open{transform:rotate(180deg)}.sp-review-toggle-button,.sp-review-client-button,.sp-review-status-button{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.sp-review-toggle-button{border-radius:7px;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.sp-review-toggle-button:hover,.sp-review-client-button:hover,.sp-review-status-button:hover{color:var(--accent)}.sp-review-client-button{min-width:0}.sp-review-client{min-width:0;display:block}.sp-review-client div{color:var(--text-strong);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:850;overflow:hidden}.sp-review-client span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:10.5px;display:block;overflow:hidden}.sp-wq-pill{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:4px;min-height:24px;padding:0 9px;font-size:10.5px;font-weight:850;display:inline-flex}.sp-wq-pill.fail{background:var(--danger-soft);border:1px solid var(--danger-border);color:var(--danger-text)}.sp-wq-pill.pass{background:color-mix(in srgb, var(--green) 11%, var(--surface-card));border:1px solid color-mix(in srgb, var(--green) 28%, var(--card-border));color:var(--success-text)}.sp-wq-pill.muted{background:var(--surface-muted);border:1px solid var(--card-border);color:var(--muted)}.sp-tier-dots{align-items:center;gap:5px;display:inline-flex}.sp-tier-dots i{border:1px solid var(--card-border-strong);background:var(--surface-muted);border-radius:999px;width:8px;height:8px}.sp-tier-dots i.on{border-color:color-mix(in srgb, var(--green) 28%, var(--card-border));background:var(--green)}.sp-tier-dots i.half{border-color:color-mix(in srgb, var(--orange) 34%, var(--card-border));background:var(--orange)}.sp-tier-dots span{color:var(--muted);margin-left:3px;font-size:10.5px;font-weight:800}.sp-last-touch{color:var(--muted);white-space:nowrap;align-items:center;gap:4px;font-size:11px;display:inline-flex}.sp-review-expand{border-top:1px solid var(--card-border);background:var(--surface-muted);padding:14px 16px}.sp-expand-grid{grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);gap:18px;display:grid}.sp-section-label{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;font-size:10px;font-weight:850}.sp-param-list{border:1px solid var(--card-border);background:var(--surface-card);border-radius:10px;display:grid;overflow:hidden}.sp-param-row{border-bottom:1px solid var(--card-border);justify-content:space-between;align-items:center;gap:12px;min-height:42px;padding:8px 10px;display:flex}.sp-param-row:last-child{border-bottom:0}.sp-param-row strong{color:var(--text-strong);font-size:12.5px;display:block}.sp-param-row span{color:var(--muted);margin-top:2px;font-size:10.5px;display:block}.sp-param-row>div:last-child{text-align:right;font-size:12px;font-weight:850}.sp-param-row>div:last-child.pass{color:var(--success-text)}.sp-param-row>div:last-child.fail{color:var(--danger-text)}.sp-tier-list{gap:7px;display:grid}.sp-tier-item{color:var(--muted);align-items:center;gap:7px;font-size:12px;font-weight:700;display:flex}.sp-tier-item.done{color:var(--success-text)}.sp-action-box{border-top:1px solid var(--card-border);margin-top:14px;padding-top:13px}.sp-action-title{color:var(--danger-text);align-items:center;gap:6px;margin-bottom:9px;font-size:12px;font-weight:850;display:flex}.sp-action-fields{grid-template-columns:minmax(0,1.2fr) minmax(190px,.7fr) auto;align-items:end;gap:9px;display:grid}.sp-action-fields.drawer{grid-template-columns:1fr}.sp-action-fields label span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:10px;font-weight:850;display:block}.sp-reviewed-button{border:1px solid color-mix(in srgb, var(--green) 30%, var(--card-border));background:color-mix(in srgb, var(--green) 12%, var(--surface-card));min-height:32px;color:var(--success-text);font:inherit;cursor:pointer;border-radius:8px;align-items:center;gap:6px;margin-top:12px;padding:0 12px;font-size:12px;font-weight:850;display:inline-flex}.sp-open-detail-button{border:1px solid var(--card-border-strong);background:var(--surface-card);width:100%;min-height:34px;color:var(--text-strong);font:inherit;cursor:pointer;border-radius:8px;font-size:12px;font-weight:800}.sp-open-detail-button:hover{background:var(--surface-hover)}.sp-empty{color:var(--muted);text-align:center;padding:22px;font-size:12.5px}.sp-empty.compact{border:1px dashed var(--card-border-strong);background:var(--surface-card);text-align:left;border-radius:10px;padding:14px}@media (width<=900px){.sp-stat-row{grid-template-columns:repeat(2,minmax(0,1fr))}.sp-matrix-head,.sp-session-banner,.sp-detail-head{flex-direction:column;align-items:flex-start}.sp-table-wrap{max-height:none}.sp-review-tabs{grid-template-columns:1fr}.sp-review-tabs button{border-right:0;border-bottom:1px solid var(--card-border)}.sp-review-card-head{grid-template-columns:20px minmax(0,1fr) auto}.sp-review-card-head>:nth-child(n+4){display:none}.sp-expand-grid,.sp-action-fields{grid-template-columns:1fr}}@media (width<=620px){.sp-stat-row{grid-template-columns:1fr}}
