.login-onboarding-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(circle at 20% 15%,rgba(79,179,166,.2),transparent 28%),radial-gradient(circle at 86% 20%,rgba(216,168,78,.16),transparent 24%),#080f1bc2;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.login-onboarding-modal{width:min(1120px,100%);max-height:min(760px,calc(100vh - 48px));display:grid;grid-template-columns:minmax(330px,.95fr) minmax(0,1.45fr);overflow:hidden;border:1px solid rgba(226,232,240,.38);border-radius:14px;background:#f8fafc;color:#111827;box-shadow:0 28px 90px #0208176b}.login-onboarding-visual{position:relative;min-height:100%;padding:28px;display:flex;flex-direction:column;justify-content:space-between;gap:26px;color:#e5eef8;background:linear-gradient(145deg,#102033f5,#081627fa),#102033}.login-onboarding-visual:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.2;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:28px 28px}.login-onboarding-brand,.login-onboarding-logo-frame,.login-onboarding-showcase{position:relative;z-index:1}.login-onboarding-brand{display:flex;align-items:center;gap:14px}.login-onboarding-brand strong,.login-onboarding-brand span{display:block}.login-onboarding-brand strong{color:#fff;font-size:1.28rem;line-height:1.1}.login-onboarding-brand span{margin-top:3px;color:#93e4d9;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.login-onboarding-logo-frame{width:58px;height:58px;display:grid;place-items:center;border-radius:14px;background:#ffffff1a;box-shadow:inset 0 0 0 1px #ffffff1f}.login-onboarding-logo{width:40px;height:40px;display:block}.login-onboarding-showcase{display:grid;gap:14px}.login-onboarding-planning-card,.login-onboarding-score-card{overflow:hidden;border:1px solid rgba(203,213,225,.22);border-radius:12px;background:#f8fafcf5;color:#0f172a;box-shadow:0 18px 44px #02081752}.login-onboarding-planning-card{transform:rotate(-1.1deg)}.login-onboarding-windowbar{display:flex;gap:5px;padding:9px 12px;border-bottom:1px solid #dbe5ef;background:#eef3f8}.login-onboarding-windowbar span{width:7px;height:7px;border-radius:50%;background:#94a3b8}.login-onboarding-windowbar span:first-child{background:#ef4444}.login-onboarding-windowbar span:nth-child(2){background:#f59e0b}.login-onboarding-windowbar span:nth-child(3){background:#22c55e}.login-onboarding-planning-title{display:grid;gap:3px;padding:12px 14px 10px}.login-onboarding-planning-title strong{font-size:1.22rem;line-height:1.1}.login-onboarding-planning-title span{color:#64748b;font-size:.73rem;font-weight:700}.login-onboarding-gantt{display:grid;padding:0 0 10px;background:linear-gradient(90deg,transparent 0 42%,#dbe5ef 42% calc(42% + 1px),transparent calc(42% + 1px)),linear-gradient(90deg,transparent 0 55%,rgba(96,165,250,.18) 55% calc(55% + 1px),transparent calc(55% + 1px)),linear-gradient(90deg,transparent 0 70%,rgba(96,165,250,.16) 70% calc(70% + 1px),transparent calc(70% + 1px)),#fff}.login-onboarding-gantt-labels,.login-onboarding-gantt-row{display:grid;grid-template-columns:minmax(0,1.1fr) 88px minmax(86px,.75fr);align-items:center;gap:8px}.login-onboarding-gantt-labels{padding:8px 12px;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;color:#64748b;font-size:.62rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.login-onboarding-gantt-row{min-height:36px;padding:7px 12px;border-bottom:1px solid #e2e8f0;font-size:.72rem;font-weight:800}.login-onboarding-gantt-row>span{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.login-onboarding-pill{display:inline-flex;justify-content:center;border-radius:999px;padding:3px 7px;font-style:normal;font-size:.65rem;font-weight:900}.login-onboarding-pill-red{background:#fee2e2;color:#b91c1c}.login-onboarding-pill-green{background:#dcfce7;color:#15803d}.login-onboarding-pill-blue{background:#dbeafe;color:#1d4ed8}.login-onboarding-bar,.login-onboarding-diamond{display:block;justify-self:stretch}.login-onboarding-bar{height:18px;border-radius:5px;box-shadow:inset 0 0 0 1px #2563ebb8}.login-onboarding-bar-red{width:82%;background:linear-gradient(90deg,#ef4444 0,#ef4444 62%,#fee2e2 62%)}.login-onboarding-bar-green{width:100%;background:#16a34a}.login-onboarding-diamond{width:16px;height:16px;justify-self:center;background:#ef4444;border:1px solid #b91c1c;transform:rotate(45deg)}.login-onboarding-score-card{max-width:92%;justify-self:end;padding:18px 18px 16px;border-color:#f9731680;background:#fff7ed;transform:rotate(1.2deg)}.login-onboarding-sps-badge{display:inline-flex;width:fit-content;margin-bottom:10px;border-radius:999px;padding:6px 12px;background:#0f172a;color:#fff;font-size:.72rem;font-weight:900;letter-spacing:.1em}.login-onboarding-score-card strong,.login-onboarding-score-card>span:not(.login-onboarding-sps-badge){display:block}.login-onboarding-score-card strong{font-size:1.26rem;line-height:1.1}.login-onboarding-score-card>span:not(.login-onboarding-sps-badge){max-width:260px;margin-top:6px;color:#475569;font-size:.8rem;font-weight:700;line-height:1.35}.login-onboarding-gauge{position:relative;width:174px;height:104px;margin:16px auto 0}.login-onboarding-gauge-arc{position:absolute;inset:6px 8px auto;height:86px;border:16px solid transparent;border-bottom:0;border-radius:999px 999px 0 0}.login-onboarding-gauge-red{border-color:#ef2b2d;clip-path:polygon(0 0,33% 0,33% 100%,0 100%)}.login-onboarding-gauge-orange{border-color:#f97316;clip-path:polygon(31% 0,55% 0,55% 100%,31% 100%)}.login-onboarding-gauge-yellow{border-color:#facc15;clip-path:polygon(51% 0,75% 0,75% 100%,51% 100%)}.login-onboarding-gauge-green{border-color:#16a34a;clip-path:polygon(72% 0,100% 0,100% 100%,72% 100%)}.login-onboarding-gauge-needle{position:absolute;left:50%;bottom:10px;width:6px;height:76px;border-radius:999px;background:#0f172a;transform:translate(-50%) rotate(24deg);transform-origin:50% calc(100% - 4px);box-shadow:0 3px 12px #0f172a47}.login-onboarding-gauge-center{position:absolute;left:50%;bottom:0;width:32px;height:32px;border:6px solid #0f172a;border-radius:50%;background:#fff7ed;transform:translate(-50%)}.login-onboarding-score-value{display:flex;align-items:baseline;justify-content:center;gap:10px;margin-top:-4px}.login-onboarding-score-value b{color:#0f172a;font-size:2.6rem;line-height:1}.login-onboarding-score-value span{color:#64748b;font-weight:900}.login-onboarding-content{overflow:auto;padding:30px}.login-onboarding-header{margin-bottom:22px}.login-onboarding-kicker{display:inline-flex;margin-bottom:8px;color:#0f766e;font-size:.76rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.login-onboarding-header h1{margin:0;color:#0f172a;font-size:clamp(1.7rem,4vw,2.35rem);line-height:1.08;letter-spacing:0}.login-onboarding-header p{max-width:720px;margin:12px 0 0;color:#475569;font-size:.98rem;line-height:1.55}.login-onboarding-checklists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.login-onboarding-panel{min-width:0;padding:16px;border:1px solid #dbe5ef;border-radius:10px;background:#fff;box-shadow:0 14px 32px #0f172a14}.login-onboarding-panel-heading{display:flex;align-items:center;gap:10px;margin-bottom:12px}.login-onboarding-step{flex:0 0 auto;width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#dbeafe;color:#1d4ed8;font-size:.78rem;font-weight:900}.login-onboarding-step-green{background:#ccfbf1;color:#0f766e}.login-onboarding-panel h2{margin:0;color:#111827;font-size:1rem;line-height:1.2}.login-onboarding-panel ul{display:grid;gap:10px;padding:0;margin:0;list-style:none}.login-onboarding-panel li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:9px;align-items:start;color:#334155;font-size:.88rem;line-height:1.4}.login-onboarding-check{position:relative;width:18px;height:18px;margin-top:1px;border-radius:50%;background:#ecfdf5;border:1px solid #99f6e4}.login-onboarding-check:after{content:"";position:absolute;left:5px;top:3px;width:5px;height:9px;border:solid #0f766e;border-width:0 2px 2px 0;transform:rotate(45deg)}.login-onboarding-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px;padding-top:18px;border-top:1px solid #e2e8f0}.login-onboarding-skip,.login-onboarding-actions-note{color:#475569;font-size:.88rem}.login-onboarding-skip{display:inline-flex;align-items:center;gap:9px;cursor:pointer}.login-onboarding-skip input{width:16px;height:16px;accent-color:#0f766e}.login-onboarding-primary{flex:0 0 auto;border:0;border-radius:8px;padding:.76rem 1.2rem;background:#0f766e;color:#fff;font-weight:800;box-shadow:0 12px 24px #0f766e38}.login-onboarding-primary:hover{border-color:transparent;background:#0d5f59;transform:translateY(-1px)}@media(max-width:880px){.login-onboarding-modal{grid-template-columns:1fr}.login-onboarding-visual{min-height:auto;padding:18px 22px;gap:16px}.login-onboarding-logo-frame{width:70px;height:70px;border-radius:18px}.login-onboarding-logo{width:48px;height:48px}.login-onboarding-showcase{grid-template-columns:minmax(0,1.1fr) minmax(240px,.8fr)}.login-onboarding-planning-card,.login-onboarding-score-card{transform:none}.login-onboarding-score-card{max-width:none;justify-self:stretch}}@media(max-width:720px){.login-onboarding-backdrop{padding:12px}.login-onboarding-modal{max-height:calc(100vh - 24px)}.login-onboarding-content{padding:22px}.login-onboarding-showcase{grid-template-columns:1fr}.login-onboarding-score-card{display:none}.login-onboarding-checklists{grid-template-columns:1fr}.login-onboarding-actions{align-items:stretch;flex-direction:column}.login-onboarding-primary{width:100%}}.login-page{height:100vh;display:flex;justify-content:center;align-items:center;background:linear-gradient(135deg,#0f172a,#1e293b);font-family:Inter,sans-serif}.login-card{width:360px;padding:2rem;border-radius:16px;background:#ffffff0d;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 10px 30px #0006;color:#fff;display:flex;flex-direction:column}.login-title{font-size:1.6rem;margin-bottom:.2rem}.login-subtitle{font-size:.9rem;color:#94a3b8;margin-bottom:1.5rem}.input-group{display:flex;flex-direction:column;margin-bottom:1rem}.input-group label{font-size:.8rem;margin-bottom:.3rem;color:#cbd5f5}.input-group input{padding:.6rem;border-radius:8px;border:none;background:#ffffff1a;color:#fff;outline:none;transition:.2s}.input-group input:focus{background:#fff3;box-shadow:0 0 0 2px #3b82f6}.login-button{margin-top:1rem;padding:.7rem;border:none;border-radius:8px;background:#3b82f6;color:#fff;font-weight:600;cursor:pointer;transition:.2s}.login-button:hover{background:#2563eb;transform:translateY(-1px)}.error-box{background:#ef444433;color:#fca5a5;padding:.5rem;border-radius:8px;margin-bottom:1rem;font-size:.85rem}.login-footer{margin-top:1rem;text-align:center;font-size:.8rem;color:#94a3b8;cursor:pointer}.login-footer:hover{color:#fff}@media(max-width:720px){.login-page{min-height:100vh;height:auto;padding:20px}.login-card{width:min(360px,100%)}}.dashboard-page{display:grid;gap:14px}.dashboard-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,280px);align-items:center;gap:14px;padding:8px 2px 4px;border-bottom:1px solid rgba(203,213,225,.72)}.dashboard-subtitle{margin:2px 0 0;max-width:760px;color:#64748b;font-size:13px;line-height:1.35}.dashboard-header .title{margin-bottom:0;font-size:28px;line-height:1.1}.dashboard-project-filter{width:100%;min-width:220px;max-width:280px;display:grid;gap:4px;justify-self:end}.dashboard-filter-label{font-size:12px;font-weight:800;color:#475569;letter-spacing:.04em;text-transform:uppercase}.dashboard-notice{padding:14px 16px;border-radius:12px;background:#fff;color:#334155;box-shadow:0 4px 14px #00000014}.dashboard-notice-warning{background:#fff7ed;color:#9a3412}.dashboard-notice-progress{border:1px solid rgba(14,116,144,.16);background:#ecfeff;color:#155e75;box-shadow:none}.dashboard-skeleton{display:grid;gap:14px}.dashboard-skeleton-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr) minmax(220px,280px);gap:12px}.dashboard-skeleton-card,.dashboard-skeleton-panel,.dashboard-skeleton-stat{border:1px solid rgba(226,232,240,.86);border-radius:20px;background:#fff}.dashboard-skeleton-card{min-height:180px;padding:18px 16px;display:grid;align-content:start;gap:12px}.dashboard-skeleton-stats{display:grid;gap:6px}.dashboard-skeleton-stat{min-height:48px}.dashboard-skeleton-line,.dashboard-skeleton-stat,.dashboard-skeleton-tile,.dashboard-skeleton-panels .dashboard-skeleton-panel{overflow:hidden;position:relative;background:#e8eef4}.dashboard-skeleton-line:after,.dashboard-skeleton-stat:after,.dashboard-skeleton-tile:after,.dashboard-skeleton-panels .dashboard-skeleton-panel:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent);animation:dashboard-skeleton-shimmer 1.35s ease-in-out infinite}.dashboard-skeleton-line{display:block;height:12px;border-radius:5px}.dashboard-skeleton-line-short{width:30%;height:10px}.dashboard-skeleton-line-title{width:62%;height:22px}.dashboard-skeleton-line-medium{width:72%}.dashboard-skeleton>.dashboard-skeleton-panel{min-height:120px;padding:18px;display:grid;gap:14px}.dashboard-skeleton-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.dashboard-skeleton-tile{height:54px;border-radius:8px}.dashboard-skeleton-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dashboard-skeleton-panels .dashboard-skeleton-panel{min-height:176px;display:block}@keyframes dashboard-skeleton-shimmer{to{transform:translate(100%)}}.dashboard-hero{display:grid;grid-template-columns:minmax(240px,.92fr) minmax(320px,1.24fr) minmax(280px,1.08fr) minmax(210px,.86fr);gap:12px;align-items:stretch}.dashboard-hero-management{grid-template-columns:minmax(240px,.78fr) minmax(0,1.18fr) minmax(240px,.82fr)}.dashboard-hero-card,.dashboard-panel,.dashboard-stat-card{background:#fff;border:1px solid rgba(226,232,240,.86);border-radius:20px;box-shadow:0 12px 28px #0f172a12}.dashboard-hero-card{padding:14px 16px;display:flex;flex-direction:column;overflow:hidden;min-width:0;box-sizing:border-box}.dashboard-hero-card-project{background:linear-gradient(180deg,#fff,#f8fafc)}.dashboard-hero-card-accent{background:radial-gradient(circle at top right,rgba(45,212,191,.32),transparent 30%),linear-gradient(135deg,#0f172a,#164e63 54%,#1e3a5f);color:#f8fafc;border-color:#7dd3fc3d}.dashboard-eyebrow{display:inline-block;margin-bottom:6px;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#e2e8f0db}.dashboard-eyebrow-dark{color:#64748b}.dashboard-hero-title{margin:0 0 4px;font-size:24px;line-height:1.08}.dashboard-hero-copy{margin:0 0 8px;color:#e2e8f0eb;line-height:1.35}.dashboard-hero-copy-summary{margin-bottom:8px;font-size:14px;line-height:1.4}.dashboard-summary-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:8px}.dashboard-summary-stand{color:#e2e8f0e0;font-size:11px;font-weight:700}.dashboard-summary-chip{display:inline-flex;align-items:center;min-height:21px;padding:3px 8px;border-radius:999px;background:#ffffff1f;color:#f8fafc;font-size:10px;font-weight:700}.dashboard-summary-chip-muted{background:#94a3b82e;color:#e2e8f0e6}.dashboard-project-description{margin:0 0 10px;color:#475569;line-height:1.35}.dashboard-project-facts{display:grid;gap:8px;margin-top:auto}.dashboard-project-fact{display:grid;gap:2px;padding:8px 10px;border-radius:12px;background:#f8fafc;border:1px solid rgba(226,232,240,.92)}.dashboard-project-fact-label{color:#64748b;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.dashboard-project-fact-value{color:#0f172a;font-size:13px;line-height:1.3}.dashboard-project-fact-positive{background:#ecfdf5;border-color:#10b98157}.dashboard-project-fact-positive .dashboard-project-fact-value{color:#047857}.dashboard-project-fact-negative{background:#fff1f2;border-color:#f43f5e52}.dashboard-project-fact-negative .dashboard-project-fact-value{color:#be123c}.dashboard-hero-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;align-content:start}.dashboard-hero-grid-stacked{grid-template-columns:1fr;grid-template-rows:repeat(6,minmax(0,1fr));align-self:stretch;min-width:0}.dashboard-stat-card{padding:8px 10px;background:linear-gradient(180deg,#fff,#f8fafc);min-height:0;display:flex;flex-direction:column;justify-content:center}.dashboard-stat-card-warning{background:linear-gradient(180deg,#fff7ed,#fff)}.dashboard-stat-card-alert{background:linear-gradient(180deg,#fff1f2,#fff)}.dashboard-stat-label{display:block;margin-bottom:4px;font-size:10px;font-weight:800;color:#64748b;letter-spacing:.03em;text-transform:uppercase}.dashboard-stat-value{font-size:20px;line-height:1;color:#0f172a}.dashboard-stat-value-compact{font-size:16px;line-height:1.15;overflow-wrap:anywhere}.dashboard-panel{padding:18px}.dashboard-project-overview{gap:14px}.dashboard-management-project-list{display:grid;gap:18px}.dashboard-management-project-list-scrollable{max-height:min(1500px,76vh);overflow-y:auto;padding-right:2px}.dashboard-management-project{display:grid;gap:18px}.dashboard-management-project-divider{border-top:1px solid rgba(203,213,225,.86)}.dashboard-management-loading{align-items:center;color:#64748b;display:flex;font-size:13px;font-weight:800;min-height:132px}.dashboard-management-load-more{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:center;padding:4px 0 0}.dashboard-management-load-more-button{background:#0f766e;border:1px solid #0f766e;border-radius:7px;color:#fff;cursor:pointer;font-weight:850;padding:9px 12px}.dashboard-management-load-more span{color:#64748b;font-size:12px;font-weight:800}.dashboard-project-overview-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.dashboard-project-overview-card{background:#fff;border:1px solid rgba(203,213,225,.86);border-radius:8px;display:grid;gap:12px;padding:14px}.dashboard-project-overview-main{align-items:start;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto}.dashboard-project-overview-card strong{color:#0f172a;display:block;font-size:16px;line-height:1.2}.dashboard-project-overview-card span{color:#64748b;display:block;font-size:12px;font-weight:650;line-height:1.35;margin-top:4px}.dashboard-project-overview-card dl{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin:0}.dashboard-project-overview-card dt{color:#64748b;font-size:10px;font-weight:850;text-transform:uppercase}.dashboard-project-overview-card dd{color:#0f172a;font-size:12px;font-weight:800;margin:2px 0 0}.dashboard-project-overview-negative{color:#be123c!important}.dashboard-project-overview-score{align-items:center;background:#f8fafc;border:1px solid rgba(148,163,184,.24);border-radius:8px;display:grid;gap:2px;justify-items:center;min-width:58px;padding:7px 9px}.dashboard-project-overview-score span{color:#64748b;font-size:10px;font-weight:900;letter-spacing:.06em;margin:0}.dashboard-project-overview-score strong{font-size:20px;line-height:1}.dashboard-project-overview-score-critical strong{color:#dc2626}.dashboard-project-overview-score-warning strong{color:#f97316}.dashboard-project-overview-score-good strong,.dashboard-project-overview-score-strong strong{color:#16a34a}.dashboard-project-overview-score-loading strong{color:#64748b}.dashboard-project-overview-summary{background:#f8fafc;border:1px solid rgba(226,232,240,.9);border-radius:8px;color:#334155;font-size:12px;font-weight:650;line-height:1.4;max-height:7.1em;overflow:hidden;padding:10px}.dashboard-sps-card{align-items:center;background:radial-gradient(circle at top right,rgba(20,184,166,.12),transparent 32%),linear-gradient(180deg,#fff,#f8fafc);border:1px solid rgba(226,232,240,.9);border-radius:20px;box-shadow:0 12px 28px #0f172a12;display:grid;gap:18px;grid-template-columns:minmax(0,1fr) minmax(250px,360px);overflow:hidden;padding:18px;position:relative}.dashboard-sps-card-hero{align-content:start;gap:10px;grid-template-columns:1fr;padding:14px 16px}.dashboard-sps-card-hero .dashboard-sps-content{gap:8px}.dashboard-sps-card-hero .dashboard-sps-description{display:block;overflow:visible}.dashboard-sps-card-hero .dashboard-sps-components{display:none}.dashboard-sps-card-hero .dashboard-sps-gauge{height:104px;max-width:230px}.dashboard-sps-card-hero .dashboard-sps-gauge-svg{height:104px}.dashboard-sps-card-hero .dashboard-sps-needle{bottom:9px;height:58px}.dashboard-sps-card-hero .dashboard-sps-needle-hub{bottom:0}.dashboard-sps-card-hero .dashboard-sps-value-row strong{font-size:32px}.dashboard-sps-card:before{background:#cbd5e1;content:"";inset:0 auto 0 0;position:absolute;width:6px}.dashboard-sps-card-critical{border-color:#fda4af;background:linear-gradient(180deg,#fff1f2,#fff)}.dashboard-sps-card-critical:before{background:#dc2626}.dashboard-sps-card-warning{border-color:#fdba74;background:linear-gradient(180deg,#fff7ed,#fff)}.dashboard-sps-card-warning:before{background:#f97316}.dashboard-sps-card-stable{border-color:#fde68a;background:linear-gradient(180deg,#fefce8,#fff)}.dashboard-sps-card-stable:before{background:#facc15}.dashboard-sps-card-strong,.dashboard-sps-card-good{border-color:#86efac;background:linear-gradient(180deg,#f0fdf4,#fff)}.dashboard-sps-card-strong:before,.dashboard-sps-card-good:before{background:#16a34a}.dashboard-sps-content{display:grid;gap:14px;min-width:0}.dashboard-sps-abbreviation{background:#0f172a;border-radius:999px;color:#fff;display:inline-flex;font-size:12px;font-weight:900;letter-spacing:.08em;margin-bottom:8px;padding:5px 9px}.dashboard-sps-title{color:#0f172a;font-size:24px;line-height:1.1;margin:0 0 6px}.dashboard-sps-description{color:#475569;font-size:14px;line-height:1.45;margin:0}.dashboard-sps-components{display:flex;flex-wrap:wrap;gap:7px}.dashboard-sps-components span{background:#0f172a0f;border:1px solid rgba(148,163,184,.26);border-radius:999px;color:#334155;font-size:12px;font-weight:750;padding:4px 8px}.dashboard-sps-gauge-wrap{display:grid;gap:8px;justify-items:center}.dashboard-sps-gauge{height:132px;max-width:280px;position:relative;width:100%}.dashboard-sps-gauge-svg{display:block;height:132px;width:100%}.dashboard-sps-gauge-segment{fill:none;stroke-linecap:round;stroke-width:18}.dashboard-sps-needle{background:#0f172a;border-radius:999px;bottom:12px;box-shadow:0 2px 8px #0f172a3d;height:76px;left:50%;position:absolute;transform-origin:50% calc(100% - 6px);width:4px}.dashboard-sps-needle-hub{background:#fff;border:4px solid #0f172a;border-radius:999px;bottom:3px;height:16px;left:50%;position:absolute;transform:translate(-50%);width:16px}.dashboard-sps-value-row{align-items:baseline;display:flex;gap:10px}.dashboard-sps-value-row strong{color:#0f172a;font-size:42px;line-height:1}.dashboard-sps-value-row span{color:#64748b;font-size:12px;font-weight:800}.dashboard-timeline-panel{overflow:hidden}.dashboard-section-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:14px}.dashboard-section-head-compact{align-items:center;margin-bottom:12px}.dashboard-section-title{margin:0;font-size:19px;color:#0f172a}.dashboard-section-note{color:#64748b;font-size:14px}.dashboard-timeline-toggle,.dashboard-timeline-reset,.dashboard-timeline-segment{border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#334155;font-size:12px;font-weight:700}.dashboard-timeline-toggle,.dashboard-timeline-reset{padding:8px 12px}.dashboard-timeline-shell{display:grid;gap:12px}.dashboard-timeline-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.dashboard-timeline-segmented{display:inline-flex;gap:6px;padding:4px;border-radius:12px;background:#e2e8f0}.dashboard-timeline-segment{padding:7px 10px}.dashboard-timeline-segment-active{border-color:#0f766e;background:linear-gradient(135deg,#ccfbf1,#ecfeff);color:#115e59}.dashboard-timeline-meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.dashboard-timeline-summary{color:#475569;font-size:13px;font-weight:600}.dashboard-timeline-summary strong{color:#0f172a}.dashboard-timeline-legend{display:inline-flex;gap:10px;align-items:center;flex-wrap:wrap}.dashboard-timeline-legend-item{display:inline-flex;gap:6px;align-items:center;color:#475569;font-size:12px;font-weight:600}.dashboard-timeline-dot{width:8px;height:8px;border-radius:999px}.dashboard-timeline-dot-warning{background:#f97316}.dashboard-timeline-dot-signal{background:#0ea5e9}.dashboard-timeline-scroll{overflow-x:auto;overflow-y:hidden;padding-bottom:8px}.dashboard-timeline-scroll::-webkit-scrollbar{height:10px}.dashboard-timeline-scroll::-webkit-scrollbar-thumb{border-radius:999px;background:#cbd5e1;border:2px solid #f8fafc}.dashboard-timeline-scroll::-webkit-scrollbar-track{background:#f8fafc;border-radius:999px}.dashboard-timeline-track{display:grid;align-items:end;gap:2px;min-height:124px;width:max-content;min-width:100%;padding:12px 14px 8px;border:1px solid rgba(226,232,240,.95);border-radius:18px;background:linear-gradient(180deg,#fffffffa,#f1f5f9f5);position:relative}.dashboard-timeline-day{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;margin:0;padding:0;min-width:0;display:grid;grid-template-rows:16px 16px 14px 1fr 18px;align-items:end;gap:4px;background:transparent;cursor:pointer;position:relative;color:#64748b}.dashboard-timeline-day:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:10px;background:transparent;transition:background .14s ease,box-shadow .14s ease}.dashboard-timeline-day:after{content:"";position:absolute;left:-1px;top:10px;bottom:10px;width:1px;background:#94a3b824}.dashboard-timeline-day-window:before{background:#94a3b814}.dashboard-timeline-day-selected:before{background:#0d948824;box-shadow:inset 0 0 0 1px #0d94882e}.dashboard-timeline-day-today:before{box-shadow:inset 0 0 0 1px #2563eb42}.dashboard-timeline-day-month-start:after{background:#2563eb52;width:2px}.dashboard-timeline-day-year-start:after{background:#0f172a6b;width:3px}.dashboard-timeline-year,.dashboard-timeline-month,.dashboard-timeline-week,.dashboard-timeline-day-label{position:relative;z-index:1;text-align:center}.dashboard-timeline-year{color:#0f172a;font-size:11px;font-weight:800}.dashboard-timeline-month{color:#334155;font-size:11px;font-weight:700;text-transform:capitalize}.dashboard-timeline-week{color:#64748b;font-size:10px;font-weight:700}.dashboard-timeline-bars{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:end;align-items:center;gap:3px;min-height:34px}.dashboard-timeline-bar{width:calc(100% - 4px);max-width:14px;min-height:6px;border-radius:999px}.dashboard-timeline-bar-warning{background:linear-gradient(180deg,#fb923c,#ea580c)}.dashboard-timeline-bar-signal{background:linear-gradient(180deg,#38bdf8,#2563eb)}.dashboard-timeline-day-label{color:#64748b;font-size:10px;font-weight:700}.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.dashboard-kpi-card{position:relative;overflow:hidden;border-radius:18px;padding:15px 16px;border:1px solid rgba(226,232,240,.9);background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:inset 0 1px #ffffffb3,0 8px 18px #0f172a0d}.dashboard-kpi-card:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:#cbd5e1}.dashboard-kpi-card-good{border-color:#86efac;background:linear-gradient(180deg,#f0fdf4,#dcfce7)}.dashboard-kpi-card-good:before{background:#16a34a}.dashboard-kpi-card-warning{border-color:#fdba74;background:linear-gradient(180deg,#fff7ed,#ffedd5)}.dashboard-kpi-card-warning:before{background:#ea580c}.dashboard-kpi-card-critical{border-color:#fda4af;background:linear-gradient(180deg,#fff1f2,#ffe4e6)}.dashboard-kpi-card-critical:before{background:#e11d48}.dashboard-kpi-card-stable{border-color:#fde68a;background:linear-gradient(180deg,#fefce8,#fef9c3)}.dashboard-kpi-card-stable:before{background:#facc15}.dashboard-kpi-card-strong{border-color:#86efac;background:linear-gradient(180deg,#f0fdf4,#dcfce7)}.dashboard-kpi-card-strong:before{background:#16a34a}.dashboard-kpi-head{display:flex;justify-content:flex-start;gap:10px;align-items:center;margin-bottom:10px}.dashboard-kpi-label{font-weight:800;color:#0f172a}.dashboard-kpi-value{display:block;margin-bottom:3px;font-size:32px;line-height:1;color:#0f172a}.dashboard-kpi-target{margin-bottom:8px;font-size:12px;color:#64748b}.dashboard-kpi-description{margin:0;color:#475569;font-size:13px;line-height:1.35}.dashboard-assessment-basis{padding:0;border:1px solid #ccfbf1;border-radius:20px;background:radial-gradient(circle at top right,rgba(20,184,166,.16),transparent 34%),linear-gradient(180deg,#fff,#f0fdfa);box-shadow:0 12px 28px #0f766e12;overflow:hidden}.dashboard-assessment-basis-compact{border-radius:12px;box-shadow:none}.dashboard-assessment-basis-compact .dashboard-assessment-summary{padding:11px 14px}.dashboard-assessment-basis-compact .dashboard-assessment-basis-content{padding:0 14px 14px}.dashboard-assessment-basis-compact .dashboard-assessment-chip-row{margin-top:8px}.dashboard-assessment-basis-compact .dashboard-assessment-thresholds div{border-radius:10px;padding:10px 12px}.dashboard-assessment-summary{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:16px 18px;cursor:pointer;list-style:none}.dashboard-assessment-summary::-webkit-details-marker{display:none}.dashboard-assessment-summary span{color:#0f766e;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.dashboard-assessment-summary strong{color:#0f172a}.dashboard-assessment-basis-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);gap:14px;padding:0 18px 18px}.dashboard-assessment-basis h2,.dashboard-assessment-basis p{margin:0}.dashboard-assessment-basis p{margin-top:5px;color:#334155}.dashboard-assessment-chip-row,.dashboard-assessment-thresholds{display:flex;flex-wrap:wrap;gap:8px}.dashboard-assessment-chip-row{margin-top:12px}.dashboard-assessment-chip-row span{padding:5px 9px;border-radius:999px;background:#ccfbf1;color:#115e59;font-size:12px;font-weight:800}.dashboard-assessment-thresholds{align-items:stretch}.dashboard-assessment-thresholds div{flex:1;min-width:190px;padding:13px 14px;border-radius:16px;border:1px solid #99f6e4;background:#ffffffc7}.dashboard-assessment-thresholds strong,.dashboard-assessment-thresholds span{display:block}.dashboard-assessment-thresholds strong{color:#115e59}.dashboard-assessment-thresholds span{margin-top:5px;color:#0f766e;font-size:13px}.dashboard-analysis-unavailable{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:18px;border:1px solid #bfdbfe;border-radius:20px;background:radial-gradient(circle at top right,rgba(14,165,233,.16),transparent 34%),linear-gradient(180deg,#eff6ff,#fff);box-shadow:0 12px 28px #2563eb14}.dashboard-analysis-unavailable-eyebrow{display:inline-block;margin-bottom:6px;color:#1d4ed8;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.dashboard-analysis-unavailable-title{margin:0 0 8px;color:#0f172a;font-size:20px;line-height:1.2}.dashboard-analysis-unavailable-copy{margin:0;max-width:820px;color:#334155;line-height:1.5}.dashboard-analysis-signal-grid{display:grid;grid-template-columns:repeat(2,minmax(130px,1fr));gap:10px}.dashboard-analysis-signal{min-width:130px;padding:12px 14px;border-radius:16px;border:1px solid #dbeafe;background:#ffffffd1}.dashboard-analysis-signal span{display:block;margin-bottom:5px;color:#64748b;font-size:11px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.dashboard-analysis-signal strong{color:#0f172a;font-size:24px;line-height:1}.dashboard-content-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.dashboard-content-grid-single{grid-template-columns:minmax(0,1fr)}.dashboard-warning-list,.dashboard-feed-list{display:grid;gap:10px}.dashboard-feed-main{min-width:0;display:grid;gap:12px}.dashboard-feed-main-expanded{padding-top:2px}.dashboard-feed-panel-summary{align-items:center;cursor:pointer;display:flex;gap:12px;justify-content:space-between;list-style:none}.dashboard-feed-panel-summary::-webkit-details-marker{display:none}.dashboard-feed-panel-collapsible[open] .dashboard-feed-panel-summary{margin-bottom:14px}.dashboard-feed-panel-collapsible[open]>.dashboard-feed-panel-summary .dashboard-feed-toggle{background:#0f172a;color:#fff}.dashboard-feed-panel-collapsible[open]>.dashboard-feed-panel-summary .dashboard-feed-toggle{font-size:0}.dashboard-feed-panel-collapsible[open]>.dashboard-feed-panel-summary .dashboard-feed-toggle:after{content:"Schliessen";font-size:12px}.dashboard-feed-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:end;padding:0 2px 2px}.dashboard-feed-search{flex:1;display:grid;gap:8px}.dashboard-feed-scroll{max-height:760px;overflow:auto;padding-right:8px}.dashboard-feed-scroll::-webkit-scrollbar{width:10px}.dashboard-feed-scroll::-webkit-scrollbar-thumb{border-radius:999px;background:#cbd5e1;border:2px solid #f8fafc}.dashboard-feed-scroll::-webkit-scrollbar-track{background:#f8fafc;border-radius:999px}.dashboard-warning-card{border:1px solid rgba(226,232,240,.9);border-radius:16px;background:#fff;box-shadow:0 8px 18px #0f172a0b}.dashboard-warning-panel-compact{padding:14px 16px}.dashboard-warning-panel-compact .dashboard-warning-list{gap:8px}.dashboard-warning-panel-compact .dashboard-warning-card{border-radius:10px;box-shadow:none}.dashboard-warning-panel-compact .dashboard-warning-summary{padding:10px 12px}.dashboard-warning-panel-compact .dashboard-card-title-compact{font-size:14px}.dashboard-warning-panel-compact .dashboard-card-meta{font-size:12px}.dashboard-warning-panel-compact .dashboard-feed-preview{font-size:13px;-webkit-line-clamp:1}.dashboard-warning-card-medium{border-color:#fdba74}.dashboard-warning-card-high{border-color:#fda4af;background:linear-gradient(180deg,#fff7f7,#fff)}.dashboard-warning-head,.dashboard-feed-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:12px}.dashboard-card-title{margin:0 0 6px;font-size:18px;color:#0f172a}.dashboard-card-meta{margin:0;color:#64748b;font-size:13px}.dashboard-card-copy{margin:0;color:#334155;line-height:1.6}.dashboard-pill{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:700}.dashboard-pill-warning{background:#fff1f2;color:#be123c}.dashboard-pill-info{background:#e0f2fe;color:#075985}.dashboard-risk-row,.dashboard-feed-meta-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.dashboard-risk-chip{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#f1f5f9;color:#334155;font-size:12px;font-weight:600}.dashboard-recommendations{margin-top:16px}.dashboard-mini-title{display:block;margin-bottom:8px;font-size:13px;font-weight:700;color:#334155}.dashboard-list{margin:0;padding-left:18px;color:#334155}.dashboard-list li+li{margin-top:6px}.dashboard-feed-item{position:relative;padding-left:22px}.dashboard-feed-line{position:absolute;left:6px;top:10px;bottom:-14px;width:2px;background:linear-gradient(180deg,#cbd5e1,#e2e8f0)}.dashboard-feed-card{position:relative;border:1px solid rgba(226,232,240,.9);border-radius:16px;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:0 8px 18px #0f172a0b}.dashboard-feed-card:before{content:"";position:absolute;left:-22px;top:18px;width:14px;height:14px;border-radius:999px;background:#2563eb;border:3px solid #eff6ff;box-shadow:0 0 0 4px #2563eb1f}.dashboard-feed-summary,.dashboard-warning-summary{list-style:none;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:14px 16px;cursor:pointer}.dashboard-warning-summary::-webkit-details-marker{display:none}.dashboard-warning-summary-main{min-width:0;flex:1}.dashboard-warning-summary-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:6px}.dashboard-feed-summary::-webkit-details-marker{display:none}.dashboard-feed-summary-main{min-width:0;flex:1}.dashboard-feed-summary-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:6px}.dashboard-card-title-compact{margin-bottom:0;font-size:16px}.dashboard-feed-summary-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:6px}.dashboard-feed-summary-inline{color:#64748b;font-size:12px;font-weight:600}.dashboard-feed-author-inline{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline;margin-bottom:8px}.dashboard-feed-author-primary{color:#0f172a;font-size:14px;font-weight:700}.dashboard-feed-author-secondary{color:#1d4ed8;font-size:12px;font-weight:700}.dashboard-feed-preview{margin:0;color:#475569;font-size:14px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dashboard-feed-toggle{flex-shrink:0;padding:4px 10px;border-radius:999px;background:#e2e8f0;color:#334155;font-size:12px;font-weight:700}.dashboard-feed-details,.dashboard-warning-details{padding:0 16px 16px;border-top:1px solid #e2e8f0}.dashboard-feed-card[open] .dashboard-feed-toggle{background:#dbeafe;color:#1d4ed8}.dashboard-warning-card[open] .dashboard-feed-toggle{background:#fee2e2;color:#be123c}.dashboard-warning-info-link{display:inline-flex;margin-top:14px;margin-right:14px;color:#0f766e;font-size:13px;font-weight:800}.dashboard-empty-box,.dashboard-empty-note{color:#64748b}.dashboard-empty-box{padding:26px 16px;border-radius:14px;background:#f8fafc;text-align:center}.dashboard-empty-note{margin:0}@media(max-width:1100px){.dashboard-hero,.dashboard-skeleton-hero,.dashboard-skeleton-panels,.dashboard-content-grid,.dashboard-analysis-unavailable,.dashboard-assessment-basis-content,.dashboard-sps-card{grid-template-columns:1fr}.dashboard-sps-gauge-wrap{justify-items:start}}@media(max-width:900px){.dashboard-header,.dashboard-section-head,.dashboard-warning-head{flex-direction:column;align-items:stretch}.dashboard-project-filter{min-width:0}.dashboard-hero-grid{grid-template-columns:1fr}.dashboard-skeleton-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-feed-toolbar{flex-direction:column;align-items:stretch}.dashboard-timeline-toolbar,.dashboard-timeline-meta{align-items:stretch}}@media(max-width:640px){.dashboard-warning-summary,.dashboard-feed-summary,.dashboard-warning-summary-top,.dashboard-feed-summary-top{flex-direction:column;align-items:stretch}.dashboard-feed-toggle{align-self:flex-start}.dashboard-sps-card{padding:16px}.dashboard-sps-gauge-wrap{justify-items:center}.dashboard-sps-title{font-size:21px}}@media(prefers-reduced-motion:reduce){.dashboard-skeleton-line:after,.dashboard-skeleton-stat:after,.dashboard-skeleton-tile:after,.dashboard-skeleton-panels .dashboard-skeleton-panel:after{animation:none}}.project-page-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,280px);align-items:center;gap:14px;padding:8px 2px 4px;border-bottom:1px solid rgba(203,213,225,.72)}.project-page-header-title{margin-bottom:0;font-size:28px;line-height:1.1}.project-page-header-subtitle{margin:2px 0 0;max-width:760px;color:#64748b;font-size:13px;line-height:1.35}.project-page-header-filter{width:100%;min-width:220px;max-width:280px;display:grid;gap:4px;justify-self:end}.project-page-header-filter-label{font-size:12px;font-weight:800;color:#475569;letter-spacing:.04em;text-transform:uppercase}@media(max-width:900px){.project-page-header{grid-template-columns:1fr;align-items:stretch}.project-page-header-filter{max-width:none;justify-self:stretch}}.projects-page{padding:30px;font-family:system-ui;background:#f7f9fc}.projects-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0 12px}.projects-count{color:#475569;font-size:12px;font-weight:700}.projects-primary-action,.projects-action-button{border:1px solid #cbd5e1;border-radius:5px;background:#fff;color:#334155;cursor:pointer;font-size:12px;font-weight:700}.projects-primary-action{padding:8px 14px}.projects-primary-action:disabled,.projects-action-button:disabled{cursor:not-allowed;opacity:.55}.table-container.projects-table-panel{border:1px solid #cbd5e1;border-radius:8px;background:#fff;box-shadow:0 6px 18px #0f172a14;overflow-x:auto}.projects-table{width:100%;border-collapse:collapse;table-layout:fixed}.projects-table th{padding:8px 10px;border-bottom:1px solid #dbe3ee;background:#f1f5f9;color:#64748b;font-size:11px;font-weight:700;letter-spacing:.03em;text-align:left;text-transform:uppercase}.projects-table td{padding:6px 10px;border-bottom:1px solid #e5eaf1;color:#1f2937;font-size:12px;vertical-align:middle}.projects-row-hover{background:#f8fafc}.projects-row-editing td,.projects-create-row td{padding-top:10px;padding-bottom:10px;vertical-align:top}.projects-table .input{width:100%;min-height:30px;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:6px;padding:5px 7px;background:#fff;font-size:12px}.projects-id{color:#64748b;font-variant-numeric:tabular-nums}.projects-actions{text-align:right;white-space:nowrap}.projects-action-button{padding:5px 8px;font-size:11px}.projects-action-button+.projects-action-button{margin-left:5px}.projects-save-button{font-weight:800}.projects-table th:nth-child(1),.projects-table td:nth-child(1){width:54px}.projects-table th:nth-child(2),.projects-table td:nth-child(2){width:17%}.projects-table th:nth-child(3),.projects-table td:nth-child(3){width:39%}.projects-table th:nth-child(4),.projects-table td:nth-child(4),.projects-table th:nth-child(5),.projects-table td:nth-child(5){width:11%;white-space:nowrap}.projects-table th:nth-child(6),.projects-table td:nth-child(6){width:86px}.projects-table th:nth-child(7),.projects-table td:nth-child(7){width:190px}@media(max-width:900px){.projects-page{padding:20px 14px}.projects-table{min-width:900px}}.file-upload-field{display:grid;gap:10px}.file-upload-input{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.file-upload-dropzone{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:center;min-height:112px;padding:18px;border:1px dashed #93c5fd;border-radius:18px;background:linear-gradient(180deg,#eff6ffeb,#f8fafcf5);color:#1e3a8a;cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}.file-upload-dropzone:hover,.file-upload-dropzone-dragging{border-color:#2563eb;background:linear-gradient(180deg,#eff6ff,#eef2ff);box-shadow:0 12px 28px #2563eb1f}.file-upload-dropzone:active{transform:translateY(1px)}.file-upload-dropzone-disabled{cursor:not-allowed;opacity:.62;box-shadow:none}.file-upload-icon{width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;border-radius:14px;background:#dbeafe;color:#1d4ed8;flex-shrink:0}.file-upload-copy{display:grid;gap:4px;min-width:0}.file-upload-copy strong{color:#0f172a;font-size:15px;line-height:1.25}.file-upload-copy span{color:#475569;font-size:13px;line-height:1.35}.file-upload-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:11px 13px;border-radius:14px;border:1px solid #e2e8f0;background:#f8fafc;color:#64748b;font-size:13px}.file-upload-meta-selected{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.file-upload-file-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:800;color:#1e3a8a}.file-upload-file-detail{flex-shrink:0;font-weight:700}.file-upload-remove{flex-shrink:0;border:1px solid #bfdbfe;background:#fff;color:#1d4ed8;padding:6px 10px;border-radius:8px;cursor:pointer;font-size:12px;font-weight:800}.file-upload-remove:disabled{cursor:not-allowed;opacity:.6}@media(max-width:640px){.file-upload-dropzone{grid-template-columns:1fr}.file-upload-meta{align-items:flex-start;flex-direction:column}}.project-file-import-page{display:grid;gap:20px}.project-file-import-header{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.project-file-import-subtitle{margin:0;max-width:760px;color:#5f6b7a}.project-file-import-filter{min-width:280px;display:grid;gap:8px}.project-file-import-label{font-size:14px;font-weight:600;color:#4b5563}.project-file-import-feedback{padding:14px 16px;border-radius:16px;border:1px solid transparent;font-weight:600;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.project-file-import-feedback-success{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.project-file-import-feedback-warning{background:#fff7ed;border-color:#fdba74;color:#c2410c}.project-file-import-feedback-link{border-radius:8px;background:#fff;color:#1d4ed8;font-size:13px;font-weight:800;padding:7px 10px;text-decoration:none}.project-file-import-panel{padding:20px;border-radius:20px;border:1px solid #e2e8f0;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:0 14px 32px #0f172a0f}.project-file-import-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:20px}.project-file-import-section-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:16px}.project-file-import-section-title{margin:0;font-size:20px}.project-file-import-section-note{color:#64748b;font-size:14px}.project-file-import-section-copy{color:#64748b;font-size:13px;font-weight:600;margin:4px 0 0}.project-file-import-field{display:grid;gap:8px}.project-file-import-field span{font-size:14px;font-weight:600;color:#4b5563}.project-file-import-textarea{min-height:96px;resize:vertical}.project-file-import-initial-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr) minmax(105px,.75fr);gap:14px;margin-bottom:14px}.project-file-import-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.project-file-import-version-list,.project-file-import-run-list{display:grid;gap:12px}.project-file-import-candidate-list{display:grid;gap:14px}.project-file-import-version-card,.project-file-import-run-card,.project-file-import-candidate-card{border:1px solid #dbe4ee;border-radius:12px;padding:14px;background:#fff}.project-file-import-candidate-card{display:grid;gap:12px}.project-file-import-candidate-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.project-file-import-candidate-head strong{color:#0f172a;display:block}.project-file-import-candidate-head span,.project-file-import-candidate-meta dt{color:#64748b;font-size:12px;font-weight:700}.project-file-import-candidate-meta{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin:0}.project-file-import-candidate-meta div{background:#f8fafc;border:1px solid rgba(148,163,184,.22);border-radius:8px;display:grid;gap:3px;padding:8px}.project-file-import-candidate-meta dd{color:#0f172a;font-size:13px;font-weight:800;margin:0}.project-file-import-candidate-mode,.project-file-import-member-option{align-items:center;display:flex;flex-wrap:wrap;gap:14px}.project-file-import-candidate-mode label,.project-file-import-member-option>label:first-child{align-items:center;color:#334155;display:inline-flex;font-size:13px;font-weight:800;gap:6px}.project-file-import-candidate-form{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.project-file-import-version-card-selected{border-color:#93c5fd;box-shadow:0 0 0 3px #3b82f61f}.project-file-import-version-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}.project-file-import-version-meta{color:#64748b;font-size:13px}.project-file-import-version-badges{display:flex;gap:8px;flex-wrap:wrap}.project-file-import-badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:#e2e8f0;color:#334155;font-size:11px;font-weight:700}.project-file-import-badge-current{background:#d1fae5;color:#047857}.project-file-import-run-text{margin:0;color:#334155}.project-file-import-empty-box{padding:18px 12px;text-align:center;color:#64748b;background:#f8fafc;border-radius:12px}@media(max-width:1000px){.project-file-import-grid{grid-template-columns:1fr}}@media(max-width:900px){.project-file-import-header,.project-file-import-section-head,.project-file-import-candidate-head,.project-file-import-version-head{flex-direction:column;align-items:stretch}.project-file-import-filter{min-width:0}.project-file-import-initial-grid{grid-template-columns:1fr}}.project-assessment-page{display:grid;gap:18px}.project-assessment-panel{padding:20px;border:1px solid #e2e8f0;border-radius:20px;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:0 14px 32px #0f172a0f}.project-assessment-notice{padding:14px 16px;border-radius:16px;border:1px solid transparent;font-weight:700}.project-assessment-notice-success{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.project-assessment-notice-warning{border-color:#fdba74;background:#fff7ed;color:#c2410c}.project-assessment-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}.project-assessment-version-config{align-items:start}.project-assessment-version-state{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:#ffffff21;color:inherit;font-size:12px;font-weight:800}.project-assessment-form span,.project-assessment-advanced-grid span,.project-assessment-kpi-item>span{display:block;margin-bottom:6px;color:#475569;font-size:12px;font-weight:800}.project-assessment-section-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:16px}.project-assessment-section-head h2,.project-assessment-section-head h3,.project-assessment-section-head p{margin:0}.project-assessment-section-head p,.project-assessment-section-head span{color:#64748b}.project-assessment-slider-list,.project-assessment-form,.project-assessment-kpi-list,.project-assessment-version-list{display:grid;gap:12px}.project-assessment-slider-row{display:grid;grid-template-columns:180px minmax(180px,1fr) 120px;gap:14px;align-items:center}.project-assessment-slider-row span,.project-assessment-slider-row strong{color:#0f172a;font-weight:800}.project-assessment-slider-row input[type=range]{accent-color:#0f766e}.project-assessment-examples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}.project-assessment-examples div{padding:13px 14px;border-radius:16px;border:1px solid #bfdbfe;background:#eff6ff}.project-assessment-examples strong,.project-assessment-examples span{display:block}.project-assessment-examples strong{color:#1e3a8a}.project-assessment-examples span{margin-top:5px;color:#1d4ed8;font-size:13px}.project-assessment-save-panel{border-color:#99f6e4;background:linear-gradient(180deg,#fff,#f0fdfa)}.project-assessment-save-card{padding:16px;border-radius:16px}.project-assessment-save-panel .project-assessment-section-head{align-items:flex-start;margin-bottom:10px}.project-assessment-save-panel .project-assessment-section-head>span{border-radius:999px;background:#ccfbf1;color:#115e59;font-size:12px;font-weight:850;padding:5px 9px;white-space:nowrap}.project-assessment-save-scope{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.project-assessment-save-scope span{display:inline-flex;margin:0;border:1px solid rgba(15,118,110,.18);border-radius:999px;background:#ffffffb8;color:#0f766e;font-size:11px;font-weight:850;padding:4px 8px}.project-assessment-textarea,.project-assessment-kpi-description{min-height:88px;resize:vertical}.project-assessment-kpi-description{min-height:132px;line-height:1.45}.project-assessment-checkbox{display:inline-flex;gap:8px;align-items:center;color:#334155;font-weight:700}.project-assessment-checkbox span{margin:0}.project-assessment-kpi-item{display:grid;grid-template-columns:minmax(150px,.52fr) minmax(100px,.18fr) minmax(360px,1.3fr);gap:12px;align-items:start}.project-assessment-advanced-summary{cursor:pointer;color:#0f172a;font-weight:800}.project-assessment-advanced-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.project-assessment-advanced-grid small{display:block;margin-top:5px;color:#0f766e;font-size:12px;font-weight:800}.project-assessment-version-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px;border:1px solid #e2e8f0;border-radius:16px;background:#fff}.project-assessment-version-card-active{border-color:#5eead4;box-shadow:0 0 0 3px #2dd4bf29}.project-assessment-version-select-panel{align-self:stretch}.project-assessment-version-card p{margin:4px 0;color:#334155;font-weight:700}.project-assessment-version-card span{color:#64748b;font-size:12px}.project-assessment-version-state{background:#ccfbf1;color:#115e59}.project-assessment-empty{padding:18px;border-radius:14px;background:#f8fafc;color:#64748b;text-align:center}.project-assessment-instruction-head{display:grid;gap:4px;margin-bottom:16px;color:#0f172a}.project-assessment-instruction-head span{color:#64748b;font-size:13px}.project-assessment-instruction-table-wrap{overflow-x:auto}.project-assessment-instruction-table{min-width:760px;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;background:#fff}.project-assessment-instruction-table th,.project-assessment-instruction-table td{padding:10px;vertical-align:top}.project-assessment-instruction-table th:first-child{width:100px}.project-assessment-instruction-table th:nth-child(2){width:200px}.project-assessment-instruction-table th:nth-child(4){width:62px}.project-assessment-instruction-table th:last-child{width:104px}.project-assessment-instruction-text{min-height:70px;resize:vertical}.project-assessment-instruction-actions{display:flex;gap:10px;margin:14px 0 20px}@media(max-width:1100px){.project-assessment-grid,.project-assessment-examples,.project-assessment-slider-row,.project-assessment-kpi-item,.project-assessment-advanced-grid{grid-template-columns:1fr}}@media(max-width:640px){.project-assessment-section-head,.project-assessment-version-card{grid-template-columns:1fr}}.cost-control-page{display:grid;gap:18px}.cost-control-panel{background:#fff;border:1px solid rgba(226,232,240,.9);border-radius:8px;box-shadow:0 6px 18px #0f172a0f;display:grid;gap:14px;padding:16px}.cost-control-panel h2,.cost-control-panel h3{color:#0f172a;line-height:1.2;margin:0}.cost-control-summary-panel{border-color:#cbd5e1b8;background:linear-gradient(180deg,#fff,#fbfdff)}.cost-control-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.cost-control-summary-grid-primary{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.cost-control-secondary-details{border:1px solid rgba(148,163,184,.28);border-radius:8px;overflow:hidden}.cost-control-secondary-details summary{align-items:center;background:#f8fafc;color:#0f172a;cursor:pointer;display:flex;font-weight:850;justify-content:space-between;padding:10px 12px}.cost-control-secondary-details .cost-control-summary-grid,.cost-control-csv-structure .cost-control-note{margin:12px}.cost-control-kpi{background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid rgba(226,232,240,.9);border-radius:12px;box-shadow:inset 0 1px #ffffffb8,0 8px 18px #0f172a0d;display:grid;gap:8px;min-height:120px;overflow:hidden;padding:13px 14px;position:relative}.cost-control-kpi:before{background:#cbd5e1;content:"";inset:0 auto 0 0;position:absolute;width:5px}.cost-control-kpi-head{align-items:center;display:flex;gap:10px;justify-content:space-between}.cost-control-kpi-indicator{background:#e2e8f0;border-radius:999px;display:inline-flex;height:9px;width:9px}.cost-control-kpi-label{color:#334155;font-size:12px;font-weight:850}.cost-control-kpi-value{color:#0f172a;font-size:25px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.05;overflow-wrap:anywhere}.cost-control-kpi-description{color:#475569;font-size:12px;font-weight:600;line-height:1.35}.cost-control-kpi-primary{border-color:#bae6fd;background:linear-gradient(180deg,#f0f9ff,#e0f2fe)}.cost-control-kpi-primary:before,.cost-control-kpi-primary .cost-control-kpi-indicator{background:#0284c7}.cost-control-kpi-positive{border-color:#86efac;background:linear-gradient(180deg,#f0fdf4,#dcfce7)}.cost-control-kpi-positive:before,.cost-control-kpi-positive .cost-control-kpi-indicator{background:#16a34a}.cost-control-kpi-warning{border-color:#fdba74;background:linear-gradient(180deg,#fff7ed,#ffedd5)}.cost-control-kpi-warning:before,.cost-control-kpi-warning .cost-control-kpi-indicator{background:#ea580c}.cost-control-kpi-critical,.cost-control-kpi-risk{border-color:#fda4af;background:linear-gradient(180deg,#fff1f2,#ffe4e6)}.cost-control-kpi-critical:before,.cost-control-kpi-critical .cost-control-kpi-indicator,.cost-control-kpi-risk:before,.cost-control-kpi-risk .cost-control-kpi-indicator{background:#e11d48}.cost-control-kpi-progress,.cost-control-kpi-forecast{border-color:#93c5fd;background:linear-gradient(180deg,#eff6ff,#dbeafe)}.cost-control-kpi-progress:before,.cost-control-kpi-progress .cost-control-kpi-indicator,.cost-control-kpi-forecast:before,.cost-control-kpi-forecast .cost-control-kpi-indicator{background:#2563eb}.cost-control-kpi-spend,.cost-control-kpi-change{border-color:#99f6e4;background:linear-gradient(180deg,#f0fdfa,#ccfbf1)}.cost-control-kpi-spend:before,.cost-control-kpi-spend .cost-control-kpi-indicator,.cost-control-kpi-change:before,.cost-control-kpi-change .cost-control-kpi-indicator{background:#0f766e}.cost-control-toolbar,.cost-control-form{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.cost-control-toolbar{justify-content:space-between}.cost-control-bulk-bar{align-items:center;background:#f8fafc;border:1px solid rgba(148,163,184,.24);border-radius:8px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:10px 12px}.cost-control-field{display:grid;gap:5px;min-width:170px}.cost-control-field-wide{flex:1 1 420px}.cost-control-upload-field{flex-basis:100%}.cost-control-field label{color:#475569;font-size:12px;font-weight:800}.cost-control-actions{display:flex;flex-wrap:wrap;gap:8px}.cost-control-actions-right{justify-content:flex-end}.cost-control-button{border:1px solid rgba(15,23,42,.14);border-radius:7px;background:#fff;color:#0f172a;cursor:pointer;font-weight:800;padding:8px 11px}.cost-control-button-primary{background:#0f766e;border-color:#0f766e;color:#fff}.cost-control-button:disabled{cursor:not-allowed;opacity:.55}.cost-control-note{background:#f8fafc;border:1px solid rgba(148,163,184,.22);border-radius:8px;color:#475569;font-size:13px;font-weight:650;line-height:1.45;padding:10px 12px}.cost-control-status{border-radius:999px;display:inline-flex;font-size:12px;font-weight:800;padding:4px 8px;background:#e2e8f0;color:#334155}.cost-control-status-approved,.cost-control-status-frozen,.cost-control-status-implemented{background:#dcfce7;color:#166534}.cost-control-status-returned,.cost-control-status-rejected{background:#fee2e2;color:#991b1b}.cost-control-status-submitted,.cost-control-status-under_review{background:#fef3c7;color:#92400e}.cost-control-empty,.cost-control-error{color:#64748b;font-weight:700}.cost-control-error{color:#b91c1c}.cost-control-inline-error{background:#fef2f2;border:1px solid rgba(185,28,28,.22);border-radius:8px;color:#991b1b;display:grid;gap:4px;line-height:1.4;margin-top:10px;padding:10px 12px}.cost-control-inline-error span{color:#7f1d1d;font-size:12px;font-weight:700}.cost-control-muted{color:#64748b;font-size:12px;font-weight:700;margin-top:4px}.cost-control-textarea{min-height:110px;resize:vertical}.cost-control-import-result{border:1px solid rgba(148,163,184,.24);border-radius:8px;display:grid;gap:8px;padding:12px}.cost-control-section-header,.cost-control-status-header{align-items:center;display:flex;gap:12px;justify-content:space-between}.cost-control-section-header h3{margin:0}.cost-control-status-grid,.cost-control-status-panel{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.cost-control-status-grid div,.cost-control-status-card{background:#f8fafc;border:1px solid rgba(148,163,184,.22);border-radius:8px;display:grid;gap:4px;padding:10px}.cost-control-status-grid span,.cost-control-status-card span{color:#64748b;font-size:11px;font-weight:800;text-transform:uppercase}.cost-control-status-grid strong,.cost-control-status-card strong{color:#0f172a;font-size:18px;font-variant-numeric:tabular-nums}.cost-control-status-card-positive{background:#f0fdf4;border-color:#1665342e}.cost-control-status-card-warning{background:#fffbeb;border-color:#92400e33}.cost-control-status-card-muted{background:#f8fafc}.cost-control-error-list{color:#b91c1c;margin:0}.cost-control-table-select{text-align:center}.cost-control-table-select input,.cost-control-invoice-table th:first-child input{height:16px;width:16px}.cost-control-select-header{align-items:center;display:inline-flex;gap:8px}.cost-control-invoice-row-actions{flex-wrap:nowrap;justify-content:flex-start}.cost-control-invoice-row-actions .cost-control-button{min-width:86px;white-space:nowrap}.cost-control-import-groups{display:grid;gap:8px}.cost-control-import-group,.cost-control-import-debug{border:1px solid rgba(148,163,184,.28);border-radius:8px;overflow:hidden}.cost-control-import-group-error{border-color:#b91c1c47}.cost-control-import-group summary,.cost-control-import-debug summary{align-items:center;background:#f8fafc;cursor:pointer;display:flex;gap:12px;justify-content:space-between;padding:10px 12px}.cost-control-import-group summary span,.cost-control-import-debug summary{color:#0f172a;font-weight:800}.cost-control-import-group summary strong{color:#64748b;font-size:12px}.cost-control-import-group-body{display:grid;gap:8px;padding:10px 12px}.cost-control-import-group-body div{display:grid;gap:2px}.cost-control-import-group-body span{color:#64748b;font-size:11px;font-weight:800;text-transform:uppercase}.cost-control-import-group-body ul,.cost-control-import-debug ul{margin:0;padding-left:20px}.cost-control-import-debug{color:#475569;font-size:12px}.cost-control-row-error{color:#b91c1c;font-size:12px;font-weight:800;line-height:1.35;margin-top:6px}.cost-control-row-error ul{margin:6px 0 0;padding-left:16px}.cost-control-position-status-on_track,.cost-control-mapping-confirmed{background:#dcfce7;color:#166534}.cost-control-position-status-watch,.cost-control-mapping-suggested{background:#fef3c7;color:#92400e}.cost-control-position-status-over_budget,.cost-control-position-status-critical,.cost-control-mapping-rejected{background:#fee2e2;color:#991b1b}.cost-control-position-status-no_budget_data,.cost-control-mapping-unmapped{background:#e2e8f0;color:#334155}.cost-control-table-wrap{background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-shadow:0 6px 18px #0f172a14;overflow-x:auto}.cost-control-table{width:100%;min-width:980px;border-collapse:collapse;table-layout:fixed}.cost-control-table th{background:#f1f5f9;border-bottom:1px solid #dbe3ee;color:#64748b;font-size:11px;font-weight:700;letter-spacing:.03em;padding:8px 10px;text-align:left;text-transform:uppercase;white-space:nowrap}.cost-control-table td{border-bottom:1px solid #e5eaf1;color:#1f2937;font-size:12px;line-height:1.35;padding:6px 10px;vertical-align:middle}.cost-control-table tbody tr:last-child td{border-bottom:0}.cost-control-table tbody tr:hover td{background:#f8fafc}.cost-control-table tbody tr.cost-control-row-highlight-error td{background:#fff7f7;box-shadow:inset 0 1px #b91c1c2e,inset 0 -1px #b91c1c2e}.cost-control-table tbody tr.cost-control-row-highlight-error td:first-child{box-shadow:inset 3px 0 #b91c1c,inset 0 1px #b91c1c2e,inset 0 -1px #b91c1c2e}.cost-control-table-number{font-variant-numeric:tabular-nums;text-align:right}.cost-control-table th,.cost-control-table td{overflow-wrap:anywhere}.cost-control-table-input{min-width:0;width:100%}.cost-control-table-number-input{font-variant-numeric:tabular-nums;text-align:right}.cost-control-readonly-value{color:#334155;display:inline-flex;font-variant-numeric:tabular-nums;font-weight:800;min-height:36px;align-items:center}.cost-control-table .cost-control-button{border-color:#cbd5e1;border-radius:5px;color:#334155;font-size:11px;font-weight:700;padding:5px 8px}.cost-control-table .cost-control-button-primary{border-color:#0f766e;color:#fff}.cost-control-table .cost-control-status{font-size:10px;font-weight:700;padding:2px 7px}.cost-control-position-table th:nth-child(1),.cost-control-position-table td:nth-child(1){width:12%}.cost-control-position-table th:nth-child(2),.cost-control-position-table td:nth-child(2){width:24%}.cost-control-position-table th:nth-child(3),.cost-control-position-table td:nth-child(3){width:10%}.cost-control-position-table th:nth-child(n+4),.cost-control-position-table td:nth-child(n+4){width:10.6%}.cost-control-budget-table{min-width:1040px}.cost-control-import-run-table{min-width:960px}.cost-control-import-run-table th:nth-child(1),.cost-control-import-run-table td:nth-child(1){width:20%}.cost-control-import-run-table th:nth-child(2),.cost-control-import-run-table td:nth-child(2){width:14%}.cost-control-import-run-table th:nth-child(3),.cost-control-import-run-table td:nth-child(3){width:10%}.cost-control-import-run-table th:nth-child(4),.cost-control-import-run-table td:nth-child(4){width:34%}.cost-control-import-run-table th:nth-child(5),.cost-control-import-run-table td:nth-child(5){width:22%}.cost-control-invoice-table{min-width:1180px}.cost-control-invoice-table th:nth-child(1),.cost-control-invoice-table td:nth-child(1){text-align:center;width:82px}.cost-control-invoice-table th:nth-child(2),.cost-control-invoice-table td:nth-child(2){width:30%}.cost-control-invoice-table th:nth-child(3),.cost-control-invoice-table td:nth-child(3){width:18%}.cost-control-invoice-table th:nth-child(4),.cost-control-invoice-table td:nth-child(4){width:17%}.cost-control-invoice-table th:nth-child(5),.cost-control-invoice-table td:nth-child(5){width:13%}.cost-control-invoice-table th:nth-child(6),.cost-control-invoice-table td:nth-child(6){width:150px}.cost-control-invoice-table th:nth-child(5),.cost-control-invoice-table td:nth-child(5){text-align:right}.cost-control-invoice-table th:nth-child(6),.cost-control-invoice-table td:nth-child(6){text-align:left}.cost-control-segmented{background:#f1f5f9;border:1px solid rgba(148,163,184,.26);border-radius:8px;display:inline-flex;flex-wrap:wrap;gap:2px;padding:3px}.cost-control-segmented button{align-items:center;background:transparent;border:0;border-radius:6px;color:#475569;cursor:pointer;display:inline-flex;font-size:12px;font-weight:800;gap:6px;padding:7px 10px}.cost-control-segmented button span{background:#64748b24;border-radius:999px;color:#475569;font-size:11px;font-variant-numeric:tabular-nums;min-width:22px;padding:2px 6px}.cost-control-segmented button.is-active{background:#fff;color:#0f172a;box-shadow:0 1px 2px #0f172a14}.cost-control-segmented button.is-active span{background:#e2e8f0;color:#0f172a}.cost-control-budget-table th:nth-child(1),.cost-control-budget-table td:nth-child(1){width:18%}.cost-control-budget-table th:nth-child(2),.cost-control-budget-table td:nth-child(2){width:10%}.cost-control-budget-table th:nth-child(3),.cost-control-budget-table td:nth-child(3),.cost-control-budget-table th:nth-child(4),.cost-control-budget-table td:nth-child(4),.cost-control-budget-table th:nth-child(5),.cost-control-budget-table td:nth-child(5){width:13%}.cost-control-budget-table th:nth-child(6),.cost-control-budget-table td:nth-child(6){width:7%}.cost-control-budget-table th:nth-child(7),.cost-control-budget-table td:nth-child(7){width:11%}.cost-control-budget-table th:nth-child(8),.cost-control-budget-table td:nth-child(8){width:15%}.risk-page{display:grid;gap:18px}.risk-panel{background:#fff;border:1px solid rgba(148,163,184,.28);border-radius:8px;display:grid;gap:14px;padding:16px}.table-container.risk-table-panel{background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-shadow:0 6px 18px #0f172a14;overflow-x:auto}.risk-table{width:100%;border-collapse:collapse;table-layout:fixed}.risk-table-project-filtered{min-width:1180px}.risk-table-all-projects{min-width:1320px}.risk-table th{background:#f1f5f9;border-bottom:1px solid #dbe3ee;color:#64748b;font-size:11px;font-weight:700;letter-spacing:.03em;padding:8px 10px;text-align:left;text-transform:uppercase;white-space:nowrap}.risk-table td{border-bottom:1px solid #e5eaf1;color:#1f2937;font-size:12px;line-height:1.35;overflow-wrap:anywhere;padding:6px 10px;vertical-align:middle}.risk-table tbody tr:hover{background:#f8fafc}.risk-table .risk-button{border-radius:5px;font-size:11px;font-weight:700;min-height:26px;padding:5px 8px}.risk-table .risk-row-actions{gap:5px;justify-content:flex-end;white-space:nowrap}.risk-table .risk-status,.risk-table .risk-ai-pill{font-size:10px;font-weight:700;padding:2px 7px}.risk-table .risk-score{border-radius:6px;min-width:46px;padding:3px 6px}.risk-table .risk-score strong{font-size:14px}.risk-table .risk-score span{font-size:9px}.risk-table td:nth-child(1) strong{font-variant-numeric:tabular-nums}.risk-table-project-filtered td:nth-child(5),.risk-table-project-filtered td:nth-child(6),.risk-table-project-filtered td:nth-child(7),.risk-table-all-projects td:nth-child(6),.risk-table-all-projects td:nth-child(7),.risk-table-all-projects td:nth-child(8){font-variant-numeric:tabular-nums}.risk-table-project-filtered th:nth-child(1),.risk-table-project-filtered td:nth-child(1),.risk-table-all-projects th:nth-child(1),.risk-table-all-projects td:nth-child(1){width:88px}.risk-table-project-filtered th:nth-child(2),.risk-table-project-filtered td:nth-child(2){width:280px}.risk-table-all-projects th:nth-child(2),.risk-table-all-projects td:nth-child(2){width:250px}.risk-table-all-projects th:nth-child(3),.risk-table-all-projects td:nth-child(3){width:160px}.risk-table-project-filtered th:nth-child(3),.risk-table-project-filtered td:nth-child(3),.risk-table-all-projects th:nth-child(4),.risk-table-all-projects td:nth-child(4){width:118px}.risk-table-project-filtered th:nth-child(4),.risk-table-project-filtered td:nth-child(4),.risk-table-all-projects th:nth-child(5),.risk-table-all-projects td:nth-child(5){width:112px}.risk-table-project-filtered th:nth-child(5),.risk-table-project-filtered td:nth-child(5),.risk-table-all-projects th:nth-child(6),.risk-table-all-projects td:nth-child(6){width:72px}.risk-table-project-filtered th:nth-child(6),.risk-table-project-filtered td:nth-child(6),.risk-table-project-filtered th:nth-child(7),.risk-table-project-filtered td:nth-child(7),.risk-table-all-projects th:nth-child(7),.risk-table-all-projects td:nth-child(7),.risk-table-all-projects th:nth-child(8),.risk-table-all-projects td:nth-child(8){width:74px}.risk-table-project-filtered th:nth-child(8),.risk-table-project-filtered td:nth-child(8),.risk-table-all-projects th:nth-child(9),.risk-table-all-projects td:nth-child(9){width:122px}.risk-table-project-filtered th:nth-child(9),.risk-table-project-filtered td:nth-child(9),.risk-table-all-projects th:nth-child(10),.risk-table-all-projects td:nth-child(10){width:128px}.risk-table-project-filtered th:nth-child(10),.risk-table-project-filtered td:nth-child(10),.risk-table-project-filtered th:nth-child(11),.risk-table-project-filtered td:nth-child(11),.risk-table-all-projects th:nth-child(11),.risk-table-all-projects td:nth-child(11),.risk-table-all-projects th:nth-child(12),.risk-table-all-projects td:nth-child(12){width:88px}.risk-table-project-filtered th:nth-child(12),.risk-table-project-filtered td:nth-child(12),.risk-table-all-projects th:nth-child(13),.risk-table-all-projects td:nth-child(13){width:130px}.risk-kpi-grid{background:linear-gradient(180deg,#fff,#fbfdff);border-color:#cbd5e1b8;gap:12px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.risk-kpi{background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid rgba(226,232,240,.9);border-radius:12px;box-shadow:inset 0 1px #ffffffb8,0 8px 18px #0f172a0d;display:grid;gap:8px;min-height:120px;overflow:hidden;padding:13px 14px;position:relative}.risk-kpi:before{background:#cbd5e1;content:"";inset:0 auto 0 0;position:absolute;width:5px}.risk-kpi-head{align-items:center;display:flex;gap:10px;justify-content:space-between}.risk-kpi-indicator{background:#e2e8f0;border-radius:999px;display:inline-flex;height:9px;width:9px}.risk-kpi-label,.risk-field span,.risk-definition-grid dt{color:#334155;font-size:12px;font-weight:850}.risk-kpi-value{color:#0f172a;font-size:25px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.05;overflow-wrap:anywhere}.risk-kpi-description{color:#475569;font-size:12px;font-weight:600;line-height:1.35}.risk-kpi-primary{background:linear-gradient(180deg,#f0f9ff,#e0f2fe);border-color:#bae6fd}.risk-kpi-primary:before,.risk-kpi-primary .risk-kpi-indicator{background:#0284c7}.risk-kpi-progress,.risk-kpi-forecast{background:linear-gradient(180deg,#eff6ff,#dbeafe);border-color:#93c5fd}.risk-kpi-progress:before,.risk-kpi-progress .risk-kpi-indicator,.risk-kpi-forecast:before,.risk-kpi-forecast .risk-kpi-indicator{background:#2563eb}.risk-kpi-warning{background:linear-gradient(180deg,#fff7ed,#ffedd5);border-color:#fdba74}.risk-kpi-warning:before,.risk-kpi-warning .risk-kpi-indicator{background:#ea580c}.risk-kpi-critical{background:linear-gradient(180deg,#fff1f2,#ffe4e6);border-color:#fda4af}.risk-kpi-critical:before,.risk-kpi-critical .risk-kpi-indicator{background:#e11d48}.risk-kpi-change{background:linear-gradient(180deg,#f0fdfa,#ccfbf1);border-color:#99f6e4}.risk-kpi-change:before,.risk-kpi-change .risk-kpi-indicator{background:#0f766e}.risk-muted{color:#64748b;font-size:12px;font-weight:650}.risk-toolbar,.risk-actions,.risk-row-actions,.risk-tabs,.risk-ai-values,.risk-source-form,.risk-sync-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.risk-toolbar{justify-content:space-between}.risk-section-header{align-items:center;display:flex;gap:12px;justify-content:space-between}.risk-section-header h2,.risk-section-header p{margin:0}.risk-section-header p{color:#64748b;font-size:12px;font-weight:700;margin-top:3px}.risk-form,.risk-assessment-form{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.risk-filter-grid{align-items:end;display:flex;flex:1 1 auto;flex-wrap:wrap;gap:8px;min-width:0}.risk-filter-grid .risk-field{flex:0 1 150px;min-width:130px}.risk-filter-grid .risk-field:first-child{flex:1 1 240px;min-width:220px}.risk-field{display:grid;gap:5px}.risk-field-wide{grid-column:1 / -1}.risk-textarea{min-height:110px;resize:vertical}.risk-button{align-items:center;background:#fff;border:1px solid rgba(15,23,42,.16);border-radius:7px;color:#0f172a;cursor:pointer;display:inline-flex;font-size:13px;font-weight:800;min-height:32px;padding:7px 10px;text-decoration:none}.risk-button-primary{background:#0f766e;border-color:#0f766e;color:#fff}.risk-button:disabled,.risk-scale-option:disabled{cursor:not-allowed;opacity:.55}.risk-status{border-radius:999px;display:inline-flex;font-size:12px;font-weight:850;padding:4px 8px;white-space:nowrap}.risk-status-draft,.risk-status-rejected{background:#e2e8f0;color:#334155}.risk-status-identified{background:#dbeafe;color:#1d4ed8}.risk-status-assessed{background:#e0e7ff;color:#3730a3}.risk-status-active{background:#fee2e2;color:#991b1b}.risk-status-monitoring,.risk-status-open{background:#fef3c7;color:#92400e}.risk-status-proposed{background:#dbeafe;color:#1d4ed8}.risk-status-approved{background:#e0e7ff;color:#3730a3}.risk-status-in_progress{background:#fef3c7;color:#92400e}.risk-status-implemented{background:#dcfce7;color:#166534}.risk-status-cancelled{background:#e2e8f0;color:#334155}.risk-status-closed,.risk-status-resolved{background:#dcfce7;color:#166534}.risk-score{align-items:center;border-radius:8px;display:inline-grid;gap:0;justify-items:center;min-width:58px;padding:5px 7px}.risk-score strong{font-size:18px;line-height:1}.risk-score span{font-size:10px;font-weight:850;text-transform:uppercase}.risk-score-low{background:#ecfdf5;color:#047857}.risk-score-moderate{background:#fefce8;color:#854d0e}.risk-score-high{background:#fff7ed;color:#c2410c}.risk-score-critical{background:#fef2f2;color:#b91c1c}.risk-ai-pill{background:#eef2ff;border-radius:999px;color:#3730a3;display:inline-flex;font-size:12px;font-weight:850;padding:3px 7px}.risk-empty,.risk-error{color:#64748b;font-weight:750}.risk-error{background:#fef2f2;border:1px solid rgba(185,28,28,.22);border-radius:8px;color:#991b1b;padding:10px 12px}.risk-feedback{background:#ecfdf5;border:1px solid rgba(4,120,87,.22);border-radius:8px;color:#047857;font-weight:800;padding:10px 12px}.risk-detail-header{align-items:start;border-bottom:1px solid rgba(203,213,225,.72);display:flex;gap:12px;justify-content:space-between;padding:6px 2px 10px}.risk-detail-header h1{color:#0f172a;font-size:28px;line-height:1.15;margin:3px 0}.risk-detail-header p,.risk-back-link{color:#64748b;font-size:13px;font-weight:750;margin:0}.risk-tab{background:#f8fafc;border:1px solid rgba(148,163,184,.22);border-radius:7px;color:#475569;font-size:13px;font-weight:850;padding:7px 10px}.risk-tab-active{background:#0f172a;color:#fff}.risk-overview-grid{grid-template-columns:minmax(0,1.5fr) minmax(220px,.7fr) minmax(220px,.8fr)}.risk-summary h2,.risk-actions-panel h2,.risk-assessment-form h2{color:#0f172a;font-size:17px;margin:0}.risk-summary p{color:#334155;margin:8px 0 12px}.risk-definition-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:0}.risk-definition-grid div,.risk-readonly-scale{background:#f8fafc;border:1px solid rgba(148,163,184,.22);border-radius:8px;display:grid;gap:3px;padding:9px}.risk-definition-grid dd{color:#0f172a;font-weight:800;margin:0}.risk-score-panel,.risk-actions-panel{align-content:start;display:grid;gap:8px}.risk-readonly-scale{grid-template-columns:minmax(0,1fr) auto}.risk-readonly-scale span{color:#64748b;font-size:12px;font-weight:800}.risk-readonly-scale strong{color:#0f172a;font-variant-numeric:tabular-nums}.risk-scale{display:grid;gap:5px;grid-template-columns:repeat(5,minmax(32px,1fr))}.risk-scale-option{background:#fff;border:1px solid rgba(148,163,184,.5);border-radius:7px;color:#334155;font-weight:850;min-height:34px;padding:4px}.risk-scale-option-active{background:#0f766e;border-color:#0f766e;color:#fff}.risk-score-preview{align-items:center;display:flex;gap:10px}.risk-score-preview>span:last-child{color:#64748b;font-size:12px;font-weight:700}.risk-ai-list{gap:10px}.risk-measure-recommendation-header{border-top:1px solid rgba(203,213,225,.72);margin-top:4px;padding-top:14px}.risk-ai-card{border:1px solid rgba(148,163,184,.24);border-radius:8px;display:grid;gap:10px;padding:12px}.risk-ai-card-header{align-items:center;display:flex;gap:12px;justify-content:space-between}.risk-ai-card-header div{display:grid;gap:3px}.risk-ai-card-header strong{color:#0f172a}.risk-ai-card-header span,.risk-ai-trace small{color:#64748b;font-size:12px;font-weight:750}.risk-ai-values span{background:#f8fafc;border:1px solid rgba(148,163,184,.2);border-radius:999px;color:#334155;font-size:12px;font-weight:800;padding:4px 8px}.risk-ai-business-grid{display:grid;gap:8px;grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(190px,.8fr));margin:0}.risk-ai-business-grid div,.risk-ai-verification{background:#f8fafc;border:1px solid rgba(148,163,184,.22);border-radius:8px;display:grid;gap:5px;padding:10px}.risk-ai-business-grid dt,.risk-ai-verification h3{color:#64748b;font-size:12px;font-weight:850;margin:0}.risk-ai-business-grid dd,.risk-ai-verification p{color:#1f2937;font-size:13px;font-weight:650;line-height:1.45;margin:0}.risk-ai-verification{background:#fff;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.risk-ai-verification small{color:#64748b;font-size:12px;font-weight:750;grid-column:1 / -1}.risk-ai-trace{background:#f8fafc;border-radius:8px;color:#334155;display:grid;gap:6px;padding:10px}.risk-ai-trace p{margin:0}.risk-source-form{align-items:end;display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr)) auto}.risk-history{gap:10px}.risk-history article{border:1px solid rgba(148,163,184,.24);border-radius:8px;display:grid;gap:5px;padding:12px}.risk-history span{color:#64748b;font-size:13px;font-weight:700}.risk-history pre{background:#0f172a;border-radius:8px;color:#e2e8f0;overflow:auto;padding:10px}.risk-sync-actions{min-width:260px}.risk-sync-actions .input{max-width:180px}@media(max-width:1050px){.risk-overview-grid{grid-template-columns:1fr}}@media(max-width:720px){.risk-detail-header,.risk-ai-card-header,.risk-toolbar,.risk-section-header{align-items:stretch;flex-direction:column}.risk-source-form,.risk-ai-business-grid{grid-template-columns:1fr}.risk-filter-grid,.risk-filter-grid .risk-field,.risk-filter-grid .risk-field:first-child{flex:1 1 100%;min-width:0;width:100%}}.risk-import-page{display:grid;gap:18px}.risk-import-feedback{border-radius:8px;font-size:13px;font-weight:800;padding:10px 12px}.risk-import-feedback-success{background:#ecfdf5;border:1px solid rgba(4,120,87,.22);color:#047857}.risk-import-feedback-warning{background:#fef2f2;border:1px solid rgba(185,28,28,.22);color:#991b1b}.risk-import-kpi-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.risk-import-kpi,.risk-import-panel{background:#fff;border:1px solid rgba(226,232,240,.9);border-radius:8px;box-shadow:0 6px 18px #0f172a0f}.risk-import-kpi{display:grid;gap:2px;padding:13px}.risk-import-kpi span,.risk-import-field span{color:#64748b;font-size:12px;font-weight:800}.risk-import-kpi strong{color:#0f172a;font-size:23px;font-variant-numeric:tabular-nums}.risk-import-kpi small,.risk-import-muted,.risk-import-empty{color:#64748b;font-size:12px;font-weight:700}.risk-import-panel{display:grid;gap:14px;padding:16px}.risk-import-section-head,.risk-import-toolbar,.risk-import-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.risk-import-section-head,.risk-import-toolbar{justify-content:space-between}.risk-import-section-head h2,.risk-import-toolbar h2{color:#0f172a;margin:0}.risk-import-section-head p,.risk-import-toolbar p{color:#64748b;font-size:12px;font-weight:700;margin:3px 0 0}.risk-import-form,.risk-import-filter-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.risk-import-filter-grid{min-width:min(420px,100%)}.risk-import-field{display:grid;gap:5px}.risk-import-field-wide{grid-column:1 / -1}.risk-import-textarea{min-height:96px;resize:vertical}.risk-import-file-field small,.risk-import-help span,.risk-import-preview span{color:#64748b;font-size:12px;font-weight:700;line-height:1.45}.risk-import-help{background:#f8fafc;border:1px solid #dbe3ee;border-radius:8px;display:grid;gap:7px;padding:12px}.risk-import-help strong,.risk-import-preview strong{color:#0f172a;font-size:13px}.risk-import-help code,.risk-import-file-field code{background:#e2e8f0;border-radius:5px;color:#334155;font-size:11px;font-weight:800;padding:1px 5px}.risk-import-file-error{background:#fef2f2;border:1px solid rgba(185,28,28,.22);border-radius:8px;color:#991b1b;font-size:13px;font-weight:800;padding:10px 12px}.risk-import-preview{border:1px solid #dbe3ee;border-radius:8px;display:grid;gap:10px;padding:12px}.risk-import-preview>div{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}.risk-import-preview pre{background:#0f172a;border-radius:8px;color:#e2e8f0;font-size:12px;margin:0;max-height:220px;overflow:auto;padding:12px}.risk-import-button{align-items:center;background:#fff;border:1px solid rgba(15,23,42,.16);border-radius:7px;color:#0f172a;cursor:pointer;display:inline-flex;font-size:13px;font-weight:800;min-height:32px;padding:7px 10px}.risk-import-button-primary{background:#0f766e;border-color:#0f766e;color:#fff}.risk-import-button:disabled{cursor:not-allowed;opacity:.55}.table-container.risk-import-table-panel{background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-shadow:0 6px 18px #0f172a14;overflow-x:auto}.risk-import-table{border-collapse:collapse;min-width:1180px;table-layout:fixed;width:100%}.risk-import-run-table{min-width:1080px}.risk-import-row-table{min-width:1260px}.risk-import-table th{background:#f1f5f9;border-bottom:1px solid #dbe3ee;color:#64748b;font-size:11px;font-weight:700;letter-spacing:.03em;padding:8px 10px;text-align:left;text-transform:uppercase;white-space:nowrap}.risk-import-table td{border-bottom:1px solid #e5eaf1;color:#1f2937;font-size:12px;line-height:1.35;overflow-wrap:anywhere;padding:6px 10px;vertical-align:middle}.risk-import-run-table th:nth-child(1),.risk-import-run-table td:nth-child(1){width:70px}.risk-import-run-table th:nth-child(2),.risk-import-run-table td:nth-child(2){width:130px}.risk-import-run-table th:nth-child(3),.risk-import-run-table td:nth-child(3){width:155px}.risk-import-run-table th:nth-child(4),.risk-import-run-table td:nth-child(4){min-width:0;width:240px}.risk-import-run-table td:nth-child(4){color:#0f172a;font-weight:750}.risk-import-run-table th:nth-child(5),.risk-import-run-table td:nth-child(5){text-transform:uppercase;width:78px}.risk-import-run-table th:nth-child(6),.risk-import-run-table td:nth-child(6){width:122px}.risk-import-run-table th:nth-child(7),.risk-import-run-table td:nth-child(7),.risk-import-run-table th:nth-child(8),.risk-import-run-table td:nth-child(8){text-align:right;width:76px}.risk-import-run-table th:nth-child(9),.risk-import-run-table td:nth-child(9){width:148px}.risk-import-run-table th:nth-child(10),.risk-import-run-table td:nth-child(10){width:94px}.risk-import-table tbody tr:hover,.risk-import-row-selected{background:#f8fafc}.risk-import-table .risk-import-button{border-radius:5px;font-size:11px;min-height:26px;padding:5px 8px}.risk-import-pill,.risk-import-status{border-radius:999px;display:inline-flex;font-size:11px;font-weight:800;padding:3px 7px;white-space:nowrap}.risk-import-pill{background:#eef2ff;color:#3730a3}.risk-import-status-uploaded,.risk-import-status-pending{background:#dbeafe;color:#1d4ed8}.risk-import-status-validated,.risk-import-status-valid,.risk-import-status-committed{background:#dcfce7;color:#166534}.risk-import-status-warning{background:#fef3c7;color:#92400e}.risk-import-status-conflict,.risk-import-status-invalid,.risk-import-status-failed{background:#fef2f2;color:#b91c1c}.risk-import-status-cancelled{background:#e2e8f0;color:#334155}@media(max-width:760px){.risk-import-section-head,.risk-import-toolbar,.risk-import-actions{align-items:stretch;flex-direction:column}.risk-import-filter-grid{min-width:0;width:100%}}.measure-page{display:grid;gap:18px}.measure-panel{background:#fff;border:1px solid rgba(226,232,240,.9);border-radius:8px;box-shadow:0 6px 18px #0f172a0f;display:grid;gap:14px;padding:16px}.measure-panel h2,.measure-panel h3{color:#0f172a;margin:0}.measure-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px}.measure-kpi{background:#f8fafc;border:1px solid rgba(148,163,184,.22);border-radius:8px;display:grid;gap:2px;padding:12px}.measure-kpi span,.measure-field span,.measure-definition-grid dt{color:#64748b;font-size:12px;font-weight:800}.measure-kpi strong{color:#0f172a;font-size:22px;font-variant-numeric:tabular-nums}.measure-kpi small,.measure-muted{color:#64748b;font-size:12px;font-weight:650}.measure-toolbar,.measure-actions,.measure-row-actions,.measure-tabs,.measure-ai-values,.measure-source-form,.measure-sync-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.measure-toolbar{justify-content:space-between}.measure-form,.measure-execution-form{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.measure-filter-grid{align-items:end;display:flex;flex:1 1 auto;flex-wrap:wrap;gap:8px;min-width:0}.measure-filter-grid .measure-field{flex:0 1 150px;min-width:130px}.measure-filter-grid .measure-field:first-child{flex:1 1 240px;min-width:220px}.measure-field{display:grid;gap:5px}.measure-field-wide{grid-column:1 / -1}.measure-textarea{min-height:110px;resize:vertical}.measure-button{align-items:center;background:#fff;border:1px solid rgba(15,23,42,.16);border-radius:7px;color:#0f172a;cursor:pointer;display:inline-flex;font-size:13px;font-weight:800;min-height:32px;padding:7px 10px;text-decoration:none}.measure-button-primary{background:#0f766e;border-color:#0f766e;color:#fff}.measure-button:disabled{cursor:not-allowed;opacity:.55}.table-container.measure-table-panel{background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-shadow:0 6px 18px #0f172a14;overflow-x:auto}.measure-table{border-collapse:collapse;table-layout:fixed;width:100%}.measure-table-project-filtered{min-width:1160px}.measure-table-all-projects{min-width:1280px}.measure-table th{background:#f1f5f9;border-bottom:1px solid #dbe3ee;color:#64748b;font-size:11px;font-weight:700;letter-spacing:.03em;padding:8px 10px;text-align:left;text-transform:uppercase;white-space:nowrap}.measure-table td{border-bottom:1px solid #e5eaf1;color:#1f2937;font-size:12px;line-height:1.35;overflow-wrap:anywhere;padding:6px 10px;vertical-align:middle}.measure-table-project-filtered th:nth-child(1),.measure-table-project-filtered td:nth-child(1),.measure-table-all-projects th:nth-child(1),.measure-table-all-projects td:nth-child(1){width:88px}.measure-table-project-filtered th:nth-child(2),.measure-table-project-filtered td:nth-child(2){width:270px}.measure-table-all-projects th:nth-child(2),.measure-table-all-projects td:nth-child(2){width:250px}.measure-table-all-projects th:nth-child(3),.measure-table-all-projects td:nth-child(3){width:160px}.measure-table-project-filtered th:nth-child(3),.measure-table-project-filtered td:nth-child(3),.measure-table-all-projects th:nth-child(4),.measure-table-all-projects td:nth-child(4){width:122px}.measure-table-project-filtered th:nth-child(4),.measure-table-project-filtered td:nth-child(4),.measure-table-all-projects th:nth-child(5),.measure-table-all-projects td:nth-child(5){width:104px}.measure-table-project-filtered th:nth-child(5),.measure-table-project-filtered td:nth-child(5),.measure-table-all-projects th:nth-child(6),.measure-table-all-projects td:nth-child(6){width:88px}.measure-table-project-filtered th:nth-child(6),.measure-table-project-filtered td:nth-child(6),.measure-table-all-projects th:nth-child(7),.measure-table-all-projects td:nth-child(7){width:132px}.measure-table-project-filtered th:nth-child(7),.measure-table-project-filtered td:nth-child(7),.measure-table-all-projects th:nth-child(8),.measure-table-all-projects td:nth-child(8){text-align:right;width:68px}.measure-table-project-filtered th:nth-child(8),.measure-table-project-filtered td:nth-child(8),.measure-table-all-projects th:nth-child(9),.measure-table-all-projects td:nth-child(9){width:112px}.measure-table-project-filtered th:nth-child(9),.measure-table-project-filtered td:nth-child(9),.measure-table-all-projects th:nth-child(10),.measure-table-all-projects td:nth-child(10){width:96px}.measure-table-project-filtered th:nth-child(10),.measure-table-project-filtered td:nth-child(10),.measure-table-all-projects th:nth-child(11),.measure-table-all-projects td:nth-child(11){width:108px}.measure-table-project-filtered th:nth-child(11),.measure-table-project-filtered td:nth-child(11),.measure-table-all-projects th:nth-child(12),.measure-table-all-projects td:nth-child(12){width:118px}.measure-table-project-filtered th:nth-child(12),.measure-table-project-filtered td:nth-child(12),.measure-table-all-projects th:nth-child(13),.measure-table-all-projects td:nth-child(13),.measure-table-project-filtered th:nth-child(13),.measure-table-project-filtered td:nth-child(13),.measure-table-all-projects th:nth-child(14),.measure-table-all-projects td:nth-child(14){width:62px}.measure-table-project-filtered th:nth-child(14),.measure-table-project-filtered td:nth-child(14),.measure-table-all-projects th:nth-child(15),.measure-table-all-projects td:nth-child(15){width:92px}.measure-table-project-filtered th:nth-child(n+10),.measure-table-project-filtered td:nth-child(n+10),.measure-table-all-projects th:nth-child(n+11),.measure-table-all-projects td:nth-child(n+11){padding-left:6px;padding-right:6px}.measure-risk-link-table{min-width:1190px}.measure-risk-link-table th:nth-child(1),.measure-risk-link-table td:nth-child(1){width:420px}.measure-risk-link-table th:nth-child(2),.measure-risk-link-table td:nth-child(2){width:104px}.measure-risk-link-table th:nth-child(3),.measure-risk-link-table td:nth-child(3){width:64px}.measure-risk-link-table th:nth-child(4),.measure-risk-link-table td:nth-child(4){width:92px}.measure-risk-link-table th:nth-child(5),.measure-risk-link-table td:nth-child(5){width:190px}.measure-risk-link-table th:nth-child(6),.measure-risk-link-table td:nth-child(6){width:108px}.measure-risk-link-table th:nth-child(7),.measure-risk-link-table td:nth-child(7){width:118px}.measure-risk-link-table th:nth-child(8),.measure-risk-link-table td:nth-child(8){width:94px}.measure-risk-link-table th:nth-child(n+2),.measure-risk-link-table td:nth-child(n+2){padding-left:6px;padding-right:6px}.measure-risk-link-risk-cell{white-space:nowrap}.measure-risk-link-risk-cell strong,.measure-risk-link-risk-cell .measure-muted{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.measure-table tbody tr:hover{background:#f8fafc}.measure-table .measure-button{border-radius:5px;font-size:11px;font-weight:700;min-height:26px;padding:5px 6px}.measure-table .measure-row-actions{gap:4px;justify-content:flex-end;white-space:nowrap}.measure-status,.measure-type,.measure-priority,.measure-ai-pill,.measure-sync-pill{border-radius:999px;display:inline-flex;font-size:11px;font-weight:800;padding:3px 7px;white-space:nowrap}.measure-status-draft,.measure-status-cancelled,.measure-status-rejected{background:#e2e8f0;color:#334155}.measure-status-proposed,.measure-status-identified{background:#dbeafe;color:#1d4ed8}.measure-status-assessed,.measure-status-approved{background:#e0e7ff;color:#3730a3}.measure-status-in_progress,.measure-status-open{background:#fef3c7;color:#92400e}.measure-status-implemented,.measure-status-resolved,.measure-status-closed{background:#dcfce7;color:#166534}.measure-status-active{background:#fee2e2;color:#991b1b}.measure-status-monitoring{background:#f3e8ff;color:#6b21a8}.measure-risk-link-table .measure-status-monitoring{background:#fef3c7;color:#92400e}.measure-type{background:#f1f5f9;color:#334155}.measure-priority-low{background:#ecfdf5;color:#047857}.measure-priority-medium{background:#eef2ff;color:#3730a3}.measure-priority-high{background:#fff7ed;color:#c2410c}.measure-priority-critical,.measure-sync-pill{background:#fef2f2;color:#b91c1c}.measure-ai-pill{background:#eef2ff;color:#3730a3}.measure-overdue{color:#b91c1c;font-weight:850}.measure-progress{align-items:center;display:grid;gap:4px;min-width:86px}.measure-progress-bar{background:#e2e8f0;border-radius:999px;height:7px;overflow:hidden}.measure-progress-bar span{background:#0f766e;border-radius:inherit;display:block;height:100%}.measure-progress strong{color:#334155;font-size:11px;font-variant-numeric:tabular-nums}.measure-empty,.measure-error{color:#64748b;font-weight:750}.measure-error{background:#fef2f2;border:1px solid rgba(185,28,28,.22);border-radius:8px;color:#991b1b;padding:10px 12px}.measure-detail-header{align-items:start;border-bottom:1px solid rgba(203,213,225,.72);display:flex;gap:12px;justify-content:space-between;padding:6px 2px 10px}.measure-detail-header h1{color:#0f172a;font-size:28px;line-height:1.15;margin:3px 0}.measure-detail-header p,.measure-back-link{color:#64748b;font-size:13px;font-weight:750;margin:0}.measure-tab{background:#f8fafc;border:1px solid rgba(148,163,184,.22);border-radius:7px;color:#475569;font-size:13px;font-weight:850;padding:7px 10px}.measure-tab-active{background:#0f172a;color:#fff}.measure-overview-grid{grid-template-columns:minmax(0,1.5fr) minmax(220px,.7fr) minmax(220px,.8fr)}.measure-summary p{color:#334155;margin:8px 0 12px}.measure-definition-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:0}.measure-definition-grid div,.measure-readonly-scale{background:#f8fafc;border:1px solid rgba(148,163,184,.22);border-radius:8px;display:grid;gap:3px;padding:9px}.measure-definition-grid dd{color:#0f172a;font-weight:800;margin:0}.measure-score-panel,.measure-actions-panel{align-content:start;display:grid;gap:8px}.measure-owner-assignment{background:#f8fafc;border:1px solid rgba(148,163,184,.24);border-radius:8px;display:grid;gap:9px;padding:10px}.measure-owner-assignment p{margin:0}.measure-owner-assignment .measure-button{justify-content:center}.measure-readonly-scale{grid-template-columns:minmax(0,1fr)}.measure-readonly-scale span{color:#64748b;font-size:12px;font-weight:800}.measure-readonly-scale strong{color:#0f172a}.measure-overdue-note{background:#fef2f2;border:1px solid rgba(185,28,28,.2);border-radius:8px;color:#991b1b;font-weight:850;padding:9px}.measure-section-header{align-items:center;display:flex;gap:12px;justify-content:space-between}.measure-section-header p{color:#64748b;font-size:12px;font-weight:700;margin:3px 0 0}.measure-checkbox{align-items:center;color:#334155;display:flex;font-size:13px;font-weight:800;gap:8px}.measure-ai-list,.measure-history-list{gap:10px}.measure-ai-card,.measure-history-list article{border:1px solid rgba(148,163,184,.24);border-radius:8px;display:grid;gap:10px;padding:12px}.measure-ai-card-header{align-items:center;display:flex;gap:12px;justify-content:space-between}.measure-ai-card-header div{display:grid;gap:3px}.measure-ai-card-header strong,.measure-history-list article strong{color:#0f172a}.measure-ai-card-header span,.measure-history-list article span{color:#64748b;font-size:12px;font-weight:750}.measure-ai-values span{background:#f8fafc;border:1px solid rgba(148,163,184,.2);border-radius:999px;color:#334155;font-size:12px;font-weight:800;padding:4px 8px}.measure-ai-trace{background:#f8fafc;border-radius:8px;color:#334155;display:grid;gap:6px;padding:10px}.measure-ai-trace p{margin:0}.measure-source-form{align-items:end;display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr)) auto}.measure-history-list pre{background:#0f172a;border-radius:8px;color:#e2e8f0;overflow:auto;padding:10px}.measure-sync-actions{min-width:260px}.measure-sync-actions .input{max-width:180px}@media(max-width:1050px){.measure-overview-grid{grid-template-columns:1fr}}@media(max-width:720px){.measure-detail-header,.measure-ai-card-header,.measure-toolbar,.measure-section-header{align-items:stretch;flex-direction:column}.measure-source-form{grid-template-columns:1fr}.measure-filter-grid,.measure-filter-grid .measure-field,.measure-filter-grid .measure-field:first-child{flex:1 1 100%;min-width:0;width:100%}.measure-risk-link-risk-cell,.measure-risk-link-risk-cell strong,.measure-risk-link-risk-cell .measure-muted{overflow:visible;text-overflow:clip;white-space:normal}}.persons-page{padding:30px;font-family:system-ui;background:#f7f9fc}.persons-header{display:grid;gap:4px;padding:8px 2px 4px;border-bottom:1px solid rgba(203,213,225,.72)}.persons-title{margin-bottom:0;font-size:28px;line-height:1.1}.persons-subtitle{margin:2px 0 0;max-width:760px;color:#64748b;font-size:13px;line-height:1.35}.persons-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0 12px}.persons-count{color:#475569;font-size:12px;font-weight:700}.persons-primary-action,.persons-action-button{border:1px solid #cbd5e1;border-radius:5px;background:#fff;color:#334155;cursor:pointer;font-size:12px;font-weight:700}.persons-primary-action{padding:8px 14px}.persons-primary-action:disabled{cursor:not-allowed;opacity:.55}.persons-inline-error{padding:12px 14px;border-radius:8px;background:#fff;color:#334155;border:1px solid #cbd5e1;margin-top:14px;font-weight:700}.persons-empty{padding:28px 16px;margin-top:14px;text-align:center;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#64748b}.table-container.persons-table-panel{border:1px solid #cbd5e1;border-radius:8px;background:#fff;box-shadow:0 6px 18px #0f172a14;overflow-x:auto}.persons-table{width:100%;border-collapse:collapse;table-layout:fixed}.persons-table th{padding:8px 10px;border-bottom:1px solid #dbe3ee;background:#f1f5f9;color:#64748b;font-size:11px;font-weight:700;letter-spacing:.03em;text-align:left;text-transform:uppercase}.persons-table td{padding:6px 10px;border-bottom:1px solid #e5eaf1;color:#1f2937;font-size:12px;vertical-align:middle}.persons-row-hover{background:#f8fafc}.persons-row-editing td,.persons-create-row td{padding-top:10px;padding-bottom:10px;vertical-align:top}.persons-table .input{width:100%;min-height:30px;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:6px;padding:5px 7px;background:#fff;font-size:12px}.persons-id{color:#64748b;font-variant-numeric:tabular-nums}.persons-actions{text-align:right;white-space:nowrap}.persons-action-button{padding:5px 8px;font-size:11px}.persons-action-button+.persons-action-button{margin-left:5px}.persons-save-button{font-weight:800}.persons-table th:nth-child(1),.persons-table td:nth-child(1){width:54px}.persons-table th:nth-child(2),.persons-table td:nth-child(2),.persons-table th:nth-child(3),.persons-table td:nth-child(3){width:14%}.persons-table th:nth-child(4),.persons-table td:nth-child(4){width:29%}.persons-table th:nth-child(5),.persons-table td:nth-child(5){width:82px;white-space:nowrap}.persons-table th:nth-child(6),.persons-table td:nth-child(6){width:17%}.persons-table th:nth-child(7),.persons-table td:nth-child(7){width:190px}@media(max-width:900px){.persons-page{padding:20px 14px}.persons-table{min-width:860px}}.project-members-page{padding:30px;font-family:system-ui;background:#f7f9fc}.project-members-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0 12px}.project-members-role-panel{background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-shadow:0 6px 18px #0f172a14;display:grid;gap:12px;margin-top:14px;padding:14px}.project-members-role-head{align-items:center;display:flex;gap:12px;justify-content:space-between}.project-members-role-head h2{color:#0f172a;font-size:18px;margin:0}.project-members-role-head p{color:#64748b;font-size:12px;font-weight:700;margin:3px 0 0}.project-members-role-list{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.project-members-role-list article{background:#f8fafc;border:1px solid rgba(148,163,184,.22);border-radius:8px;display:grid;gap:4px;padding:10px}.project-members-role-list strong{color:#0f172a}.project-members-role-list span{color:#64748b;font-size:12px;font-weight:700}.project-members-role-create{grid-template-columns:minmax(120px,1fr)}.project-members-count{color:#475569;font-size:12px;font-weight:700}.project-members-primary-action,.project-members-action-button{border:1px solid #cbd5e1;border-radius:5px;background:#fff;color:#334155;cursor:pointer;font-size:12px;font-weight:700}.project-members-primary-action{padding:8px 14px}.project-members-primary-action:disabled{cursor:not-allowed;opacity:.55}.table-container.project-members-table-panel{border:1px solid #cbd5e1;border-radius:8px;background:#fff;box-shadow:0 6px 18px #0f172a14;overflow-x:auto}.project-members-table{width:100%;border-collapse:collapse;table-layout:fixed}.project-members-table th{padding:8px 10px;border-bottom:1px solid #dbe3ee;background:#f1f5f9;color:#64748b;font-size:11px;font-weight:700;letter-spacing:.03em;text-align:left;text-transform:uppercase}.project-members-table td{padding:6px 10px;border-bottom:1px solid #e5eaf1;color:#1f2937;font-size:12px;vertical-align:middle}.project-members-row-hover{background:#f8fafc}.project-members-row-editing td,.project-members-create-row td{padding-top:10px;padding-bottom:10px;vertical-align:top}.project-members-table .input{width:100%;min-height:30px;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:6px;padding:5px 7px;background:#fff;font-size:12px}.project-members-id{color:#64748b;font-variant-numeric:tabular-nums}.project-members-actions{text-align:right;white-space:nowrap}.project-members-action-button{padding:5px 8px;font-size:11px}.project-members-action-button+.project-members-action-button{margin-left:5px}.project-members-save-button{font-weight:800}.project-members-table th:nth-child(1),.project-members-table td:nth-child(1){width:54px}.project-members-table th:nth-child(2),.project-members-table td:nth-child(2){width:27%}.project-members-table th:nth-child(3),.project-members-table td:nth-child(3){width:28%}.project-members-table th:nth-child(4),.project-members-table td:nth-child(4){width:22%}.project-members-table th:nth-child(5),.project-members-table td:nth-child(5){width:190px}@media(max-width:900px){.project-members-page{padding:20px 14px}.project-members-table{min-width:760px}}.users-page{display:grid;gap:12px;padding:30px;font-family:system-ui;background:#f7f9fc}.users-header{padding:8px 2px 4px;border-bottom:1px solid rgba(203,213,225,.72)}.users-title{margin:0;font-size:28px;line-height:1.1}.users-subtitle{margin:2px 0 0;max-width:760px;color:#64748b;font-size:13px;line-height:1.35}.users-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.users-count{color:#475569;font-size:12px;font-weight:700}.users-primary-action,.users-action-button{border:1px solid #cbd5e1;border-radius:5px;background:#fff;color:#334155;cursor:pointer;font-size:12px;font-weight:700}.users-primary-action{padding:8px 14px}.users-action-button{padding:5px 8px;font-size:11px}.users-save-button{font-weight:800}.users-primary-action:disabled,.users-action-button:disabled{cursor:not-allowed;opacity:.55}.users-panel{border:1px solid #cbd5e1;border-radius:8px;background:#fff;box-shadow:0 6px 18px #0f172a14;overflow:hidden}.users-inline-error{padding:12px 14px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#334155;font-weight:700}.users-empty{padding:28px 16px;text-align:center;color:#64748b;font-size:12px}.users-table-wrap{overflow-x:auto}.users-table{width:100%;min-width:960px;border-collapse:collapse;table-layout:fixed}.users-table th{padding:8px 10px;border-bottom:1px solid #dbe3ee;background:#f1f5f9;color:#64748b;font-size:11px;font-weight:700;letter-spacing:.03em;text-align:left;text-transform:uppercase}.users-table td{padding:6px 10px;border-bottom:1px solid #e5eaf1;color:#1f2937;font-size:12px;vertical-align:middle}.users-table tr:hover{background:#f8fafc}.users-primary-cell{display:grid;gap:1px}.users-primary-cell span{color:#64748b;font-size:11px}.users-row-deleted td{color:#64748b}.users-status{display:inline-flex;border:1px solid #cbd5e1;border-radius:999px;padding:2px 7px;color:#475569;font-size:10px;font-weight:700}.users-actions{display:flex;justify-content:flex-end;gap:5px;white-space:nowrap}.users-table th:nth-child(1),.users-table td:nth-child(1){width:16%}.users-table th:nth-child(2),.users-table td:nth-child(2){width:18%}.users-table th:nth-child(3),.users-table td:nth-child(3),.users-table th:nth-child(4),.users-table td:nth-child(4){width:11%}.users-table th:nth-child(5),.users-table td:nth-child(5){width:17%}.users-table th:nth-child(6),.users-table td:nth-child(6){width:9%}.users-table th:nth-child(7),.users-table td:nth-child(7){width:12%}.users-table th:nth-child(8),.users-table td:nth-child(8){width:190px}.users-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;background:#0f172a6b}.users-dialog{display:grid;gap:18px;width:min(720px,100%);max-height:calc(100vh - 48px);overflow-y:auto;border:1px solid #cbd5e1;border-radius:8px;padding:22px;background:#fff;box-shadow:0 24px 64px #0f172a33}.users-dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.users-dialog-title{margin:0 0 4px;font-size:20px}.users-dialog-subtitle{margin:0;color:#64748b;font-size:13px}.users-dialog-close{border:1px solid #cbd5e1;border-radius:5px;padding:5px 8px;background:#fff;color:#334155;cursor:pointer;font-size:11px;font-weight:700}.users-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.users-field{display:grid;gap:5px}.users-field span{color:#475569;font-size:12px;font-weight:700}.users-field .input{min-height:30px;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:6px;padding:5px 7px;background:#fff;font-size:12px}.users-checkbox-field{display:flex;align-items:center;gap:10px;min-height:38px;padding-top:22px;color:#334155;font-size:12px;font-weight:700}.users-role-picker{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:12px;border:1px solid #dbe3ef;border-radius:8px;background:#f8fafc}.users-role-picker legend{padding:0 6px;color:#475569;font-size:11px;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.users-role-option{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:center;min-height:48px;padding:8px;border:1px solid #e2e8f0;border-radius:6px;background:#fff}.users-role-option span{display:grid;gap:2px;min-width:0}.users-role-option small{color:#64748b;overflow-wrap:anywhere}.users-role-empty{grid-column:1 / -1;color:#64748b;font-weight:600}.users-dialog-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:5px;margin-top:4px}@media(max-width:900px){.users-page{padding:20px 14px}.users-form,.users-role-picker{grid-template-columns:1fr}}.title{margin-bottom:16px}.nodes-toolbar{margin-bottom:12px}.nodes-view-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.nodes-view-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.nodes-segmented-control{display:inline-flex;padding:3px;border:1px solid #dbe3ef;border-radius:8px;background:#eef4ff}.nodes-segmented-button{min-width:82px;border:none;border-radius:6px;padding:7px 12px;background:transparent;color:#475569;cursor:pointer;font-weight:700}.nodes-segmented-button-active{background:#fff;color:#1d4ed8;box-shadow:0 1px 4px #0f172a1f}.nodes-scale-control{display:flex;align-items:center;gap:8px;color:#475569;font-size:12px;font-weight:700}.nodes-scale-select{width:130px;background:#fff}.nodes-timeline-options{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.nodes-timeline-legend{display:inline-flex;align-items:center;gap:12px;color:#64748b;font-size:11px;font-weight:700}.nodes-timeline-legend span{display:inline-flex;align-items:center;gap:5px}.nodes-legend-bar{width:18px;height:7px;border-radius:2px}.nodes-legend-bar-planned{background:#2563eb}.nodes-legend-bar-done{background:#16a34a}.nodes-legend-bar-delayed{background:#dc2626}.nodes-legend-diamond{width:8px;height:8px;background:#f59e0b;transform:rotate(45deg)}.nodes-collapse-actions{display:flex;gap:6px;flex-wrap:wrap}.nodes-feedback{margin-bottom:16px;padding:12px 14px;border-radius:10px;font-weight:600}.nodes-feedback-success{background:#e8f7ee;color:#1e7a41}.nodes-feedback-warning{background:#fff4e5;color:#9a5b00}.nodes-filter{display:flex;flex-direction:column;gap:6px;max-width:280px}.nodes-filter-label{font-size:14px;font-weight:600;color:#4b5563}.nodes-filter-select{background:#fff}.table-container{background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-shadow:0 6px 18px #0f172a14;overflow:hidden}table{width:100%;border-collapse:collapse;table-layout:fixed}.nodes-table th{padding:8px 10px;text-align:left;border-bottom:1px solid #dbe3ee;background:#f1f5f9;color:#64748b;font-size:11px;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.nodes-table td{padding:6px 10px;border-bottom:1px solid #e5eaf1;vertical-align:middle;font-size:12px}.input{width:100%;padding:5px 7px;border-radius:6px;border:1px solid #ddd;box-sizing:border-box;min-height:30px}.nodes-compact-input{padding:4px 6px;min-height:28px;font-size:12px}.edit-button{border:1px solid #cbd5e1;background:#fff;padding:5px 8px;border-radius:5px;cursor:pointer;color:#334155;font-size:11px;font-weight:700}.edit-button:disabled{cursor:not-allowed;opacity:.55}.save-button{border:1px solid #15803d;background:#16a34a;padding:5px 8px;border-radius:5px;cursor:pointer;color:#fff;font-size:11px;font-weight:700}.cancel-button{border:1px solid #cbd5e1;background:#fff;padding:5px 8px;border-radius:5px;cursor:pointer;color:#475569;font-size:11px;font-weight:700}.delete-button{border:1px solid #fecaca;background:#fff;padding:5px 8px;border-radius:5px;cursor:pointer;color:#b91c1c;font-size:11px;font-weight:700}.add-row{text-align:center;padding:12px;background:#f8fafc}.add-button{border:1px solid #bfdbfe;background:#eff6ff;padding:8px 14px;border-radius:5px;cursor:pointer;color:#1d4ed8;font-size:12px;font-weight:700}.nodes-primary-action{border-color:#1d4ed8;background:#2563eb;color:#fff}.add-button:disabled{cursor:not-allowed;opacity:.6}.nodes-table{table-layout:fixed}.nodes-tree-panel{overflow:visible}.nodes-col-task{width:38%}.nodes-col-period{width:18%}.nodes-col-status{width:11%}.nodes-col-progress{width:13%}.nodes-col-actions{width:20%}.nodes-row:hover{position:relative;z-index:2;background:#f8fafc}.nodes-row-parent{background:#2563eb09}.nodes-row-child,.nodes-table .nodes-task-tone-low,.nodes-table .nodes-task-tone-medium,.nodes-table .nodes-task-tone-high{background:#fff}.nodes-table .nodes-task-tone-done{background:#16a34a0e}.nodes-table .nodes-task-tone-delayed{background:#dc26260e}.nodes-task-tone-done .nodes-task-title,.nodes-task-tone-done .nodes-timeline-label-title{color:#166534}.nodes-task-tone-delayed .nodes-task-title,.nodes-task-tone-delayed .nodes-timeline-label-title{color:#92400e}.nodes-task-cell{position:relative;transition:background-color .15s ease}.nodes-task-content{position:relative;display:flex;align-items:center;gap:7px;min-height:28px}.nodes-task-title{overflow:hidden;word-break:break-word;font-weight:600;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.nodes-task-edit-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1.2fr) minmax(0,.9fr);gap:6px;width:100%}.nodes-item-type-switch{display:inline-flex;grid-column:1 / -1;padding:2px;border:1px solid #dbe3ef;border-radius:7px;background:#eef4ff;width:fit-content}.nodes-item-type-button{border:0;border-radius:5px;padding:5px 9px;background:transparent;color:#475569;cursor:pointer;font-size:11px;font-weight:700}.nodes-item-type-button-active{background:#fff;color:#1d4ed8;box-shadow:0 1px 3px #0f172a1f}.nodes-edit-parent{grid-column:1 / -1}.nodes-create-row{background:#eff6ff}.nodes-create-row td,.nodes-row-editing td{padding-top:10px;padding-bottom:10px;vertical-align:top}.nodes-create-form{display:grid;gap:6px}.nodes-edit-field{display:grid;gap:4px;color:#64748b;font-size:11px;font-weight:700}.nodes-milestone-complete{display:inline-flex;align-items:center;gap:6px;color:#334155;font-size:12px;font-weight:700}.nodes-task-edit-title{min-width:0}.nodes-row-child .nodes-task-title{font-weight:500}.nodes-tree-type-marker{width:14px;height:7px;flex:0 0 auto;border-radius:2px;background:#2563eb}.nodes-tree-type-marker-milestone{width:9px;height:9px;margin:0 3px;border-radius:1px;background:#f59e0b;transform:rotate(45deg)}.nodes-toggle-button{display:inline-flex;align-items:center;justify-content:center;gap:3px;min-width:34px;height:24px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#334155;cursor:pointer;font-size:12px;font-weight:800;padding:0 5px}.nodes-toggle-count{color:#64748b;font-size:10px;font-weight:800}.nodes-toggle-spacer{width:34px;min-width:34px}.nodes-status{display:inline-flex;padding:2px 7px;border-radius:999px;background:#e2e8f0;color:#475569;font-size:10px;font-weight:700}.nodes-status-progress{background:#dbeafe;color:#1d4ed8}.nodes-status-done{background:#dcfce7;color:#15803d}.nodes-status-delayed{background:#fee2e2;color:#b91c1c}.nodes-progress{display:flex;flex-direction:column;gap:3px}.nodes-progress-readonly{display:flex;flex-direction:column;gap:4px}.nodes-progress-value{font-size:11px;color:#555}.nodes-progress-track{width:100%;height:7px;overflow:hidden;border-radius:999px;background:#94a3b838}.nodes-progress-bar{height:100%;border-radius:inherit}.nodes-actions{display:flex;gap:5px;justify-content:flex-end;flex-wrap:wrap}.nodes-secondary-text{color:#475569;font-size:12px}.nodes-task-meta-separator{color:#94a3b8;font-size:11px}.nodes-period-cell{display:flex;align-items:center;gap:5px;white-space:nowrap}.nodes-period-edit{display:grid;gap:6px}.nodes-tree-tooltip{position:absolute;top:32px;left:36px;z-index:15;display:none;width:260px;padding:10px 12px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#0f172a;box-shadow:0 10px 24px #0f172a2e;pointer-events:none}.nodes-task-content:hover .nodes-tree-tooltip{display:block}.nodes-tree-tooltip strong{display:block;margin-bottom:7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nodes-tree-tooltip div{display:grid;grid-template-columns:86px minmax(0,1fr);gap:4px 8px;font-size:11px}.nodes-tree-tooltip span{color:#64748b}.nodes-tree-tooltip b{font-weight:600}.nodes-empty-state{padding:24px 14px;text-align:center;color:#6b7280}.nodes-timeline-panel{background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-shadow:0 6px 18px #0f172a14;overflow:hidden}.nodes-timeline-scroll{max-height:min(720px,calc(100vh - 236px));overflow:auto}.nodes-timeline{--timeline-list-width: 430px;--timeline-surface: #242938;--timeline-header: #2c3142;--timeline-label-bg: rgba(43, 49, 66, .97);--timeline-border: rgba(203, 213, 225, .22);--timeline-grid: rgba(203, 213, 225, .2);--timeline-weekend: rgba(255, 255, 255, .07);--timeline-today: #5eead4;--timeline-today-bg: rgba(20, 184, 166, .16);--timeline-title: #f8fafc;--timeline-muted: #c2cad6;--timeline-header-text: #f1f5f9;--timeline-week-text: #f8fafc;--timeline-week-muted: #c2cad6;--timeline-day-text: #c3ccda;--timeline-day-muted: #aeb8c7;--timeline-shadow: rgba(0, 0, 0, .18);--timeline-tone-low: transparent;--timeline-tone-medium: transparent;--timeline-tone-high: transparent;--timeline-tone-done: rgba(22, 163, 74, .11);--timeline-tone-delayed: rgba(220, 38, 38, .13);min-width:calc(var(--timeline-list-width) + var(--timeline-axis-width, 980px));background:var(--timeline-surface)}.nodes-timeline-light{--timeline-surface: #ffffff;--timeline-header: #f1f5f9;--timeline-label-bg: #ffffff;--timeline-border: #dbe3ee;--timeline-grid: #e5eaf1;--timeline-weekend: #f8fafc;--timeline-today: #0369a1;--timeline-today-bg: rgba(14, 165, 233, .08);--timeline-title: #0f172a;--timeline-muted: #64748b;--timeline-header-text: #475569;--timeline-week-text: #0f172a;--timeline-week-muted: #64748b;--timeline-day-text: #475569;--timeline-day-muted: #64748b;--timeline-shadow: rgba(15, 23, 42, .1);--timeline-tone-low: transparent;--timeline-tone-medium: transparent;--timeline-tone-high: transparent;--timeline-tone-done: rgba(22, 163, 74, .055);--timeline-tone-delayed: rgba(220, 38, 38, .055)}.nodes-timeline-header,.nodes-timeline-row{display:grid;grid-template-columns:var(--timeline-list-width) var(--timeline-axis-width, 980px)}.nodes-timeline-header{position:sticky;top:0;z-index:3;min-height:52px;background:var(--timeline-header);border-bottom:1px solid var(--timeline-border)}.nodes-timeline-title-cell{position:sticky;left:0;z-index:5;display:grid;grid-template-columns:minmax(0,1fr) 68px 92px;align-items:center;gap:8px;padding:0 10px;border-right:1px solid var(--timeline-border);color:var(--timeline-header-text);font-size:12px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.nodes-timeline-column-progress,.nodes-timeline-column-status{border-left:1px solid var(--timeline-border);padding-left:8px}.nodes-timeline-axis{position:relative;min-height:52px;overflow:hidden;background:var(--timeline-header)}.nodes-timeline-week-row{position:absolute;top:0;right:0;bottom:26px;left:0;border-bottom:1px solid var(--timeline-border)}.nodes-timeline-week{position:absolute;top:0;bottom:0;display:flex;align-items:center;gap:6px;padding:0 8px;border-right:1px dashed var(--timeline-border);color:var(--timeline-week-text);white-space:nowrap}.nodes-timeline-week strong{font-size:12px;font-weight:900}.nodes-timeline-week span{color:var(--timeline-week-muted);font-size:11px;font-weight:700}.nodes-timeline-day-row{position:absolute;right:0;bottom:0;left:0;display:flex;height:26px}.nodes-timeline-day{display:flex;flex:0 0 auto;align-items:center;justify-content:center;gap:5px;min-width:0;border-right:1px solid var(--timeline-grid);color:var(--timeline-day-text);font-size:10px;font-weight:800;white-space:nowrap}.nodes-timeline-day small{color:var(--timeline-day-muted);font-size:10px;font-weight:700}.nodes-timeline-day-weekend{background:var(--timeline-weekend)}.nodes-timeline-day-today,.nodes-timeline-day-today small{color:var(--timeline-today)}.nodes-timeline-body{position:relative}.nodes-timeline-body-grid{position:absolute;top:0;right:0;bottom:0;left:var(--timeline-list-width);pointer-events:none}.nodes-timeline-grid-column{position:absolute;top:0;bottom:0;border-right:1px solid var(--timeline-grid)}.nodes-timeline-grid-column-weekend{background:var(--timeline-weekend)}.nodes-timeline-grid-column-today{border-right-color:var(--timeline-today);border-left:1px solid var(--timeline-today);background:var(--timeline-today-bg)}.nodes-timeline-row{position:relative;z-index:1;min-height:40px;border-bottom:1px solid var(--timeline-border);border-left:3px solid transparent;background:transparent}.nodes-timeline-row-summary{background:color-mix(in srgb,var(--timeline-surface) 94%,#2563eb 6%);font-weight:700}.nodes-timeline-row.nodes-task-tone-low{background:var(--timeline-tone-low)}.nodes-timeline-row.nodes-task-tone-medium{background:var(--timeline-tone-medium)}.nodes-timeline-row.nodes-task-tone-high{background:var(--timeline-tone-high)}.nodes-timeline-row.nodes-task-tone-done{background:var(--timeline-tone-done)}.nodes-timeline-row.nodes-task-tone-delayed{background:var(--timeline-tone-delayed)}.nodes-timeline-label{position:sticky;left:0;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) 68px 92px;align-items:center;gap:8px;min-width:0;padding-right:10px;border-right:1px solid var(--timeline-border);background:var(--timeline-label-bg)}.nodes-timeline-title-row{position:relative;display:flex;align-items:center;gap:6px;min-width:0}.nodes-timeline-label-title{overflow:hidden;color:var(--timeline-title);font-size:12px;font-weight:600;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.nodes-timeline-edit{position:absolute;top:50%;right:2px;transform:translateY(-50%);opacity:0;transition:opacity .14s ease}.nodes-timeline-row:hover .nodes-timeline-edit,.nodes-timeline-edit:focus-visible{opacity:1}.nodes-timeline .nodes-timeline-label-title{color:var(--timeline-title)}.nodes-timeline-toggle{flex:0 0 auto;min-width:28px;width:28px;height:22px;padding:0 3px}.nodes-timeline .nodes-toggle-spacer{width:28px;min-width:28px}.nodes-timeline-cell-progress{color:var(--timeline-muted);font-size:11px;font-weight:700;white-space:nowrap;border-left:1px solid var(--timeline-border);padding-left:8px}.nodes-timeline-status{overflow:hidden;padding:2px 7px;border-radius:999px;background:#e2e8f0;color:#475569;font-size:10px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.nodes-timeline-status-progress{background:#dbeafe;color:#1d4ed8}.nodes-timeline-status-done{background:#dcfce7;color:#15803d}.nodes-timeline-status-delayed{background:#fee2e2;color:#b91c1c}.nodes-timeline-lane{position:relative;min-height:40px}.nodes-timeline-bar{position:absolute;top:11px;height:18px;min-width:6px;overflow:hidden;border:1px solid transparent;border-radius:3px;background:linear-gradient(90deg,var(--timeline-progress-color) 0,var(--timeline-progress-color) var(--timeline-progress, 0%),var(--timeline-progress-rest-color) var(--timeline-progress, 0%),var(--timeline-progress-rest-color) 100%);box-shadow:0 1px 3px var(--timeline-shadow);opacity:1;cursor:default}.nodes-timeline-bar:hover,.nodes-timeline-bar:focus-visible{box-shadow:0 0 0 2px #2563eb3d,0 3px 8px var(--timeline-shadow);outline:none}.nodes-timeline-bar-summary{top:9px;height:22px;border-radius:2px;opacity:.9}.nodes-timeline-milestone{position:absolute;top:13px;width:13px;height:13px;border:1px solid #a16207;background:#f59e0b;box-shadow:0 1px 4px var(--timeline-shadow);transform:translate(-50%) rotate(45deg)}.nodes-timeline-milestone:focus-visible{outline:2px solid #2563eb;outline-offset:3px}.nodes-timeline-milestone-done{border-color:#15803d;background:#22c55e}.nodes-timeline-milestone-overdue{border-color:#b91c1c;background:#ef4444}.nodes-timeline-bar-progress{position:absolute;top:50%;right:3px;display:inline-flex;align-items:center;justify-content:center;min-width:29px;height:14px;padding:0 4px;border-radius:3px;background:#0f172aa8;color:#fff;font-size:9px;font-weight:800;line-height:1;text-shadow:none;transform:translateY(-50%)}.nodes-timeline-light .nodes-timeline-bar-progress{background:#ffffffdb;color:#0f172a;box-shadow:0 1px 3px #0f172a2e}.nodes-timeline-missing-date{position:absolute;top:12px;left:12px;color:var(--timeline-muted);font-size:11px;font-weight:700}.nodes-timeline-tooltip{position:absolute;top:34px;left:clamp(8px,var(--timeline-tooltip-left, 8px),calc(100% - 286px));z-index:12;display:none;width:270px;padding:10px 12px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#0f172a;box-shadow:0 10px 24px #0f172a2e;pointer-events:none}.nodes-timeline-row:hover{z-index:11}.nodes-timeline-row:hover .nodes-timeline-tooltip,.nodes-timeline-row:focus-within .nodes-timeline-tooltip{display:block}.nodes-timeline-tooltip strong{display:block;margin-bottom:7px;overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.nodes-timeline-tooltip div{display:grid;grid-template-columns:76px minmax(0,1fr);gap:4px 8px;font-size:11px}.nodes-timeline-tooltip span{color:#64748b}.nodes-timeline-tooltip b{font-weight:600}@media(max-width:900px){.nodes-view-toolbar{align-items:stretch;flex-direction:column}.nodes-segmented-control{width:100%}.nodes-segmented-button{flex:1}.nodes-col-period,.nodes-col-status,.nodes-col-actions{width:auto}.nodes-task-edit-grid{grid-template-columns:1fr}.nodes-actions{justify-content:flex-start}}.input{width:100%;padding:6px 8px;border-radius:6px;border:1px solid #ddd;box-sizing:border-box}.information-flow-header{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:20px}.information-flow-subtitle{margin:0;color:#5f6b7a;max-width:720px}.information-flow-filter{display:flex;flex-direction:column;gap:8px;min-width:260px}.information-flow-filter-label{font-size:14px;font-weight:600;color:#4b5563}.information-flow-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}.information-flow-stat-card{background:#fff;border-radius:10px;box-shadow:0 4px 14px #00000014;padding:18px 20px}.information-flow-stat-card-highlight{background:linear-gradient(135deg,#f2f7ff,#edfdf3)}.information-flow-stat-label{display:block;margin-bottom:8px;font-size:13px;color:#6b7280}.information-flow-stat-value{font-size:28px;color:#1f2937}.information-flow-stat-value-small{font-size:18px}.information-flow-overview,.information-flow-timeline{background:#fff;border-radius:10px;box-shadow:0 4px 14px #00000014;padding:20px}.information-flow-overview{margin-bottom:20px}.information-flow-section-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:18px}.information-flow-section-title{margin:0;font-size:18px}.information-flow-section-note{color:#6b7280;font-size:14px}.information-flow-range-panel{display:grid;gap:16px}.information-flow-range-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,220px));gap:14px}.information-flow-range-field{display:grid;gap:8px}.information-flow-range-actions{display:flex;flex-wrap:wrap;gap:10px}.information-flow-range-button{border:none;background:#e7f0ff;color:#214a88;padding:9px 14px;border-radius:999px;cursor:pointer;font-weight:600}.information-flow-range-button-secondary{background:#f3f4f6;color:#4b5563}.information-flow-range-summary{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline;padding:14px 16px;border-radius:12px;background:#f8fafc;color:#334155}.information-flow-range-warning{color:#b45309;font-weight:600}.information-flow-list{position:relative}.information-flow-item{display:grid;grid-template-columns:42px minmax(0,1fr);gap:14px}.information-flow-item+.information-flow-item{margin-top:18px}.information-flow-marker-column{position:relative;display:flex;justify-content:center}.information-flow-line{position:absolute;top:0;bottom:-18px;width:2px;background:linear-gradient(180deg,#dbeafe,#cbd5e1)}.information-flow-marker{position:relative;z-index:1;margin-top:6px;width:14px;height:14px;border-radius:999px;background:#60a5fa;border:3px solid #eaf2ff;box-shadow:0 0 0 4px #60a5fa1f}.information-flow-item-new .information-flow-marker{background:#22c55e;box-shadow:0 0 0 6px #22c55e29}.information-flow-item-history .information-flow-marker{background:#2563eb;box-shadow:0 0 0 6px #2563eb24}.information-flow-card{border:1px solid #edf1f5;border-radius:14px;padding:16px 18px;background:linear-gradient(180deg,#fff,#fbfdff)}.information-flow-item-new .information-flow-card{border-color:#ccebd7;background:linear-gradient(180deg,#f7fff9,#fff)}.information-flow-item-history .information-flow-card{border-color:#d9e7ff;background:linear-gradient(180deg,#f7fbff,#fff)}.information-flow-card-head{display:flex;justify-content:space-between;gap:16px;margin-bottom:12px}.information-flow-card-title{margin:0 0 6px;font-size:18px;color:#1f2937}.information-flow-card-meta{margin:0;color:#6b7280;font-size:13px}.information-flow-author-block{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin-top:8px}.information-flow-author-name{color:#1f2937;font-size:14px;font-weight:700}.information-flow-author-role{color:#1d4ed8;font-size:12px;font-weight:700}.information-flow-badges{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.information-flow-badge{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;background:#eef4ff;color:#31558a;font-size:12px;font-weight:600}.information-flow-badge-new{background:#e8f7ee;color:#1e7a41}.information-flow-badge-history{background:#eef4ff;color:#31558a}.information-flow-badge-action{background:#f3f4f6;color:#4b5563}.information-flow-card-content{margin:0;color:#334155;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.information-flow-card-content-expanded{display:block;overflow:visible}.information-flow-detail-button{margin-top:14px;border:none;background:#eef4ff;color:#31558a;padding:8px 12px;border-radius:8px;cursor:pointer}.information-flow-details{margin-top:16px;padding-top:16px;border-top:1px solid #edf1f5;display:grid;gap:14px}.information-flow-detail-block{display:grid;gap:8px}.information-flow-detail-label{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#64748b}.information-flow-detail-note{margin:0;color:#64748b}.information-flow-history-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}.information-flow-history-list-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;background:#f8fafc;color:#334155}.information-flow-history-action{min-width:96px;font-weight:600;color:#1f2937}.information-flow-history-payload{margin:0;padding:12px;border-radius:10px;background:#0f172a;color:#e2e8f0;overflow-x:auto;white-space:pre-wrap;word-break:break-word;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:12px;line-height:1.5}.information-flow-empty-box{padding:28px 16px;text-align:center;border-radius:10px;background:#f8fafc;color:#64748b}@media(max-width:900px){.information-flow-header,.information-flow-card-head{flex-direction:column;align-items:stretch}.information-flow-summary{grid-template-columns:1fr}.information-flow-filter{min-width:0}.information-flow-range-inputs{grid-template-columns:1fr}.information-flow-badges{justify-content:flex-start}}.page{padding:30px;font-family:system-ui;background:#f7f9fc}.title{margin-bottom:8px}.input{width:100%;padding:10px 12px;border-radius:8px;border:1px solid #d7dce3;box-sizing:border-box;background:#fff}.save-button{border:none;background:#e8f7ee;padding:10px 14px;border-radius:8px;cursor:pointer}.save-button:disabled{cursor:not-allowed;opacity:.65}.information-capture-header{margin-bottom:18px}.information-capture-subtitle{margin:0;max-width:760px;color:#5f6b7a}.information-capture-notification{margin-bottom:18px;padding:16px 18px;border-radius:12px;border:1px solid transparent;box-shadow:0 8px 24px #0f172a0f}.information-capture-notification p{margin:6px 0 0}.information-capture-notification-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.information-capture-notification-info{background:#eef4ff;border-color:#cfe0ff;color:#274d84}.information-capture-notification-success{background:#edf9f0;border-color:#cfe8d7;color:#1f6b3a}.information-capture-notification-warning{background:#fff3e8;border-color:#ffd5b0;color:#8a4a14}.information-capture-notification-pulse{animation:information-capture-pulse 1.8s ease-in-out infinite}@keyframes information-capture-pulse{0%{box-shadow:0 8px 24px #f59e0b14}50%{box-shadow:0 10px 28px #f59e0b38}to{box-shadow:0 8px 24px #f59e0b14}}.information-capture-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:18px}.information-capture-panel{background:#fff;border-radius:12px;box-shadow:0 4px 14px #00000014;padding:20px}.information-capture-section-head{margin-bottom:16px}.information-capture-section-title{margin:0;font-size:18px}.information-capture-form{display:grid;gap:14px}.information-capture-field{display:grid;gap:8px;color:#334155}.information-capture-textarea{min-height:220px;resize:vertical}.information-capture-actions{display:flex;justify-content:flex-end}.information-capture-analysis{display:grid;gap:16px}.information-capture-analysis-panel{align-self:start}.information-capture-analysis-header{display:flex;justify-content:space-between;gap:12px;align-items:center}.information-capture-analysis-source{padding:5px 10px;border-radius:999px;background:#eef4ff;color:#31558a;font-size:12px;font-weight:700}.information-capture-analysis-summary{margin:0;color:#334155;line-height:1.55}.information-capture-risk-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.information-capture-risk-card{padding:12px;border-radius:10px;background:#f8fafc;display:grid;gap:6px}.information-capture-risk-card span{font-size:12px;color:#64748b}.information-capture-list-block{padding:14px;border-radius:12px;background:#f8fafc}.information-capture-measures-active{background:linear-gradient(135deg,#fff7ed,#fff1f2);border:1px solid #ffd0b1}.information-capture-list-title{display:block;margin-bottom:10px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#64748b}.information-capture-list{margin:0;padding-left:18px;color:#334155;display:grid;gap:8px}.information-capture-empty-note,.information-capture-analysis-placeholder{margin:0;color:#64748b;line-height:1.5}@media(max-width:980px){.information-capture-layout,.information-capture-risk-grid{grid-template-columns:1fr}}.information-pdf-import-page{display:grid;gap:20px}.information-pdf-import-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.information-pdf-import-subtitle{margin:8px 0 0;max-width:760px;color:#64748b}.information-pdf-import-layout{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(360px,1.05fr);gap:18px}.information-pdf-import-panel{background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:20px;padding:20px;box-shadow:0 14px 32px #0f172a0f}.information-pdf-import-results{background:radial-gradient(circle at top right,rgba(14,165,233,.12),transparent 32%),linear-gradient(180deg,#fff,#f8fafc)}.information-pdf-import-section-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:18px}.information-pdf-import-section-title{margin:0;font-size:20px;color:#0f172a}.information-pdf-import-section-note{font-size:13px;color:#64748b}.information-pdf-import-form{display:grid;gap:16px}.information-pdf-import-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.information-pdf-import-field{display:grid;gap:8px}.information-pdf-import-field span{font-size:13px;font-weight:700;color:#334155}.information-pdf-import-field-hint{font-size:12px;color:#64748b}.information-pdf-import-field-hint-warning{color:#c2410c;font-weight:700}.information-pdf-import-actions{display:flex;justify-content:flex-start}.information-pdf-import-notice{padding:14px 16px;border-radius:16px;border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8}.information-pdf-import-notice-warning{border-color:#fdba74;background:#fff7ed;color:#c2410c}.information-pdf-import-placeholder,.information-pdf-import-empty-note{color:#64748b;font-size:14px}.information-pdf-import-summary{display:grid;gap:14px}.information-pdf-import-summary-card,.information-pdf-import-assignment-card{border:1px solid #dbeafe;border-radius:16px;padding:14px 16px;background:#ffffffd1}.information-pdf-import-summary-label{display:inline-block;margin-bottom:6px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#64748b;font-weight:700}.information-pdf-import-summary-card strong,.information-pdf-import-assignment-card strong{color:#0f172a}.information-pdf-import-summary-card p,.information-pdf-import-suggestion-item p{margin:6px 0 0;color:#475569}.information-pdf-import-assignment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.information-pdf-import-assignment-head,.information-pdf-import-suggestion-top{display:flex;justify-content:space-between;gap:10px;align-items:baseline}.information-pdf-import-assignment-head span,.information-pdf-import-suggestion-top span{font-size:12px;color:#0f766e;font-weight:700}.information-pdf-import-assignment-selected{margin:10px 0 12px;font-size:15px;color:#0f172a;font-weight:700}.information-pdf-import-suggestion-list{display:grid;gap:10px}.information-pdf-import-suggestion-item{padding-top:10px;border-top:1px dashed #cbd5e1}.information-pdf-import-manual-warning{padding:14px 16px;border-radius:16px;background:#fff7ed;border:1px solid #fdba74;color:#9a3412;font-weight:600}.information-pdf-import-extract{margin:8px 0 0;max-height:220px;overflow:auto;white-space:pre-wrap}.information-pdf-import-link-row{display:flex;justify-content:flex-start}.information-pdf-import-inline-link{color:#0f766e;font-weight:700}@media(max-width:980px){.information-pdf-import-layout,.information-pdf-import-assignment-grid,.information-pdf-import-grid{grid-template-columns:1fr}}.meeting-protocol-page{display:grid;gap:18px}.meeting-notice{border:1px solid rgba(148,163,184,.28);border-radius:8px;font-size:14px;font-weight:750;padding:12px 14px}.meeting-notice-info{background:#eff6ff;color:#1d4ed8}.meeting-notice-success{background:#ecfdf5;color:#047857}.meeting-notice-warning{background:#fff7ed;color:#c2410c}.meeting-tabs{align-items:center;display:flex;gap:8px}.meeting-tabs button,.meeting-button,.meeting-upload{align-items:center;background:#fff;border:1px solid rgba(148,163,184,.42);border-radius:8px;color:#334155;cursor:pointer;display:inline-flex;font-size:13px;font-weight:850;justify-content:center;min-height:36px;padding:8px 12px}.meeting-tabs button.active,.meeting-button-primary{background:#0f766e;border-color:#0f766e;color:#fff}.meeting-button-danger{background:#b91c1c;border-color:#b91c1c;color:#fff}.meeting-tabs button:disabled,.meeting-button:disabled,.meeting-upload.disabled{cursor:not-allowed;opacity:.55}.meeting-band{align-items:center;background:#f8fafc;border:1px solid rgba(148,163,184,.25);border-radius:8px;display:grid;gap:16px;grid-template-columns:minmax(0,1fr) minmax(220px,320px);padding:16px}.meeting-band h2,.meeting-panel h2,.meeting-draft h3{color:#0f172a;font-size:18px;margin:0}.meeting-band p,.meeting-detail-head p{color:#64748b;font-size:13px;font-weight:700;margin:6px 0 0}.meeting-owner-select,.meeting-panel label{color:#334155;display:grid;font-size:13px;font-weight:800;gap:6px}.meeting-quick-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.meeting-quick-card{background:#fff;border:1px solid rgba(15,118,110,.24);border-left:4px solid #0f766e;border-radius:8px;color:#0f172a;cursor:pointer;display:grid;gap:6px;min-height:96px;padding:12px;text-align:left}.meeting-quick-card:hover{border-color:#0f766e8c;box-shadow:0 12px 28px #0f172a1a}.meeting-quick-card:disabled{cursor:not-allowed;opacity:.55}.meeting-quick-card span{font-size:15px;font-weight:900}.meeting-quick-card strong{color:#0f766e;font-size:13px}.meeting-quick-card small{color:#64748b;font-size:12px;font-weight:700;line-height:1.35}.meeting-workspace,.meeting-detail-grid{align-items:start;display:grid;gap:16px;grid-template-columns:minmax(320px,.85fr) minmax(0,1.25fr)}.meeting-detail-grid{grid-template-columns:minmax(0,1fr)}.meeting-detail-minimal{max-width:980px}.meeting-panel{background:#fff;border:1px solid rgba(148,163,184,.25);border-radius:8px;display:grid;gap:14px;padding:16px}.meeting-form-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.meeting-table-wrap{overflow-x:auto}.meeting-table{border-collapse:collapse;min-width:560px;width:100%}.meeting-table th,.meeting-table td{border-bottom:1px solid rgba(226,232,240,.95);color:#334155;font-size:13px;padding:10px;text-align:left}.meeting-table th{color:#64748b;font-size:12px;text-transform:uppercase}.meeting-table tbody tr{cursor:pointer}.meeting-table tbody tr:hover,.meeting-table tbody tr.selected{background:#f0fdfa}.meeting-status{border-radius:999px;display:inline-flex;font-size:12px;font-weight:900;padding:4px 8px;white-space:nowrap}.meeting-status-planned,.meeting-status-processing,.meeting-status-in_review{background:#fef3c7;color:#92400e}.meeting-status-recording{background:#fee2e2;color:#b91c1c}.meeting-status-draft{background:#dbeafe;color:#1d4ed8}.meeting-status-approved{background:#dcfce7;color:#047857}.meeting-status-rejected,.meeting-status-failed{background:#fee2e2;color:#991b1b}.meeting-detail-head{align-items:start;display:flex;gap:14px;justify-content:space-between}.meeting-detail-head h2{color:#0f172a;font-size:20px;margin:0}.meeting-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.meeting-start-steps{background:#f8fafc;border:1px solid rgba(148,163,184,.24);border-radius:8px;display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));padding:10px}.meeting-start-steps span{background:#fff;border:1px solid rgba(148,163,184,.25);border-radius:8px;color:#64748b;font-size:12px;font-weight:900;padding:8px 10px;text-align:center}.meeting-start-steps span.done{background:#ecfdf5;border-color:#10b98157;color:#047857}.meeting-actions.compact{margin-top:4px}.meeting-consent{align-items:center;display:flex;gap:8px}.meeting-actions>.input{max-width:420px}.meeting-primary-actions{background:#f8fafc;border:1px solid rgba(148,163,184,.24);border-radius:8px;padding:10px}.meeting-collapse{background:#fff;border:1px solid rgba(148,163,184,.24);border-radius:8px}.meeting-collapse>summary{color:#334155;cursor:pointer;font-size:13px;font-weight:900;list-style-position:inside;padding:10px 12px}.meeting-collapse[open]{display:grid;gap:10px;padding-bottom:12px}.meeting-collapse[open]>summary{border-bottom:1px solid rgba(226,232,240,.95)}.meeting-collapse>.meeting-panel,.meeting-collapse>.meeting-transcript,.meeting-collapse>.meeting-suggestions,.meeting-collapse>.meeting-privacy-note,.meeting-collapse>.input,.meeting-collapse>.meeting-microphone,.meeting-collapse>.meeting-realtime,.meeting-collapse>.meeting-realtime-diagnostics{margin-left:12px;margin-right:12px}.meeting-collapse>.meeting-panel{border:0;padding:0}.meeting-technical-collapse{margin-top:4px}.meeting-upload{position:relative}.meeting-upload input{top:0;right:0;bottom:0;left:0;opacity:0;position:absolute;width:100%}.meeting-privacy-note{background:#f8fafc;border:1px solid rgba(148,163,184,.24);border-radius:8px;color:#475569;font-size:13px;font-weight:750;padding:10px 12px}.meeting-microphone,.meeting-realtime{align-items:center;border:1px solid rgba(148,163,184,.26);border-radius:8px;display:flex;gap:10px;justify-content:space-between;padding:10px 12px}.meeting-microphone strong,.meeting-realtime strong{color:#0f172a;font-size:13px;font-weight:900}.meeting-microphone span,.meeting-realtime span{color:#475569;font-size:13px;font-weight:750;text-align:right}.meeting-microphone-active,.meeting-realtime-connected{background:#ecfdf5;border-color:#10b98157}.meeting-microphone-active span,.meeting-realtime-connected span{color:#047857}.meeting-microphone-checking,.meeting-realtime-connecting,.meeting-realtime-closing{background:#eff6ff;border-color:#3b82f64d}.meeting-microphone-checking span,.meeting-realtime-connecting span,.meeting-realtime-closing span{color:#1d4ed8}.meeting-microphone-blocked,.meeting-microphone-unsupported,.meeting-realtime-failed{background:#fff7ed;border-color:#f9731657}.meeting-microphone-blocked span,.meeting-microphone-unsupported span,.meeting-realtime-failed span{color:#c2410c}.meeting-microphone-stopped,.meeting-microphone-idle,.meeting-realtime-idle,.meeting-realtime-closed{background:#f8fafc}.meeting-realtime-mock{background:#fef3c7;border-color:#f59e0b57}.meeting-realtime-mock span{color:#92400e}.meeting-realtime-diagnostics{background:#f8fafc;border:1px solid rgba(148,163,184,.24);border-radius:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));padding:10px 12px}.meeting-realtime-diagnostics span{color:#475569;font-size:12px;font-weight:800;line-height:1.3}.meeting-processing-warning{background:#fff7ed;border:1px solid rgba(249,115,22,.34);border-radius:8px;display:grid;gap:6px;padding:10px 12px}.meeting-processing-warning strong{color:#9a3412;font-size:13px;font-weight:900}.meeting-processing-warning span{color:#c2410c;font-size:13px;font-weight:750;line-height:1.4}.meeting-draft{display:grid;gap:12px}.meeting-draft-heading{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}.meeting-draft textarea{min-height:120px;resize:vertical}.meeting-section-editor{border:1px solid rgba(226,232,240,.95);border-radius:8px;display:grid;gap:10px;padding:12px}.meeting-section-editor textarea{min-height:100px}.meeting-side{align-content:start}.meeting-transcript,.meeting-suggestions{display:grid;gap:10px;max-height:420px;overflow:auto}.meeting-transcript p,.meeting-suggestions p{color:#475569;font-size:13px;line-height:1.45;margin:0}.meeting-transcript p{background:#f8fafc;border-radius:8px;padding:10px}.meeting-transcript span{color:#0f766e;display:block;font-size:12px;font-weight:900;margin-bottom:4px}.meeting-suggestions article{border:1px solid rgba(226,232,240,.95);border-radius:8px;display:grid;gap:8px;padding:12px}.meeting-suggestions strong{color:#0f172a;font-size:14px}.meeting-suggestions article>span{color:#64748b;font-size:12px;font-weight:900;text-transform:uppercase}.meeting-suggestions article>div{display:flex;gap:8px}@media(max-width:980px){.meeting-band,.meeting-workspace,.meeting-detail-grid,.meeting-form-grid{grid-template-columns:1fr}.meeting-actions>.input{max-width:none;width:100%}}.analysis-monitor-page{display:grid;gap:20px}.analysis-monitor-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-end}.analysis-monitor-subtitle{margin:0;max-width:760px;color:#5f6b7a}.analysis-monitor-panel{background:#fff;border-radius:14px;box-shadow:0 4px 14px #00000014;padding:18px}.analysis-monitor-section-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:16px}.analysis-monitor-section-title{margin:0;font-size:20px}.analysis-monitor-section-note{color:#64748b;font-size:14px}.analysis-monitor-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:end}.analysis-monitor-field{display:grid;gap:8px}.analysis-monitor-field span{font-size:14px;font-weight:600;color:#4b5563}.analysis-monitor-filter-actions{display:flex;gap:8px;flex-wrap:wrap}.analysis-monitor-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:20px}.analysis-monitor-list{display:grid;gap:12px}.analysis-monitor-list-item{width:100%;text-align:left;border:1px solid #e2e8f0;border-radius:12px;padding:14px;background:#fff}.analysis-monitor-list-item-active{border-color:#93c5fd;box-shadow:0 0 0 3px #3b82f61f}.analysis-monitor-list-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}.analysis-monitor-list-meta,.analysis-monitor-metrics{color:#64748b;font-size:13px}.analysis-monitor-summary{margin:0 0 10px;color:#334155}.analysis-monitor-metrics{display:flex;flex-wrap:wrap;gap:10px}.analysis-monitor-risk-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700}.analysis-monitor-risk-badge-low,.analysis-monitor-risk-text-low{color:#166534}.analysis-monitor-risk-badge-low{background:#dcfce7}.analysis-monitor-risk-badge-medium,.analysis-monitor-risk-text-medium{color:#9a3412}.analysis-monitor-risk-badge-medium{background:#ffedd5}.analysis-monitor-risk-badge-high,.analysis-monitor-risk-text-high{color:#be123c}.analysis-monitor-risk-badge-high{background:#ffe4e6}.analysis-monitor-empty{padding:28px 16px;text-align:center;border-radius:12px;background:#f8fafc;color:#64748b}.analysis-monitor-detail{min-height:540px}.analysis-monitor-detail-head{margin-bottom:14px}.analysis-monitor-tabs{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}.analysis-monitor-tab{border:none;border-radius:999px;padding:8px 12px;background:#e2e8f0;color:#334155}.analysis-monitor-tab-active{background:#dbeafe;color:#1d4ed8}.analysis-monitor-detail-body{display:grid;gap:14px}.analysis-monitor-keyfacts{display:flex;gap:12px;flex-wrap:wrap;color:#475569;font-size:13px}.analysis-monitor-json-block{border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.analysis-monitor-json-title{padding:10px 12px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#475569;background:#f8fafc;border-bottom:1px solid #e2e8f0}.analysis-monitor-json-block pre{margin:0;padding:12px;overflow-x:auto;white-space:pre-wrap;word-break:break-word;color:#0f172a;background:#fff;font-size:12px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.analysis-monitor-outcome-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.analysis-monitor-outcome-card{border:1px solid #e2e8f0;border-radius:12px;padding:14px;background:#f8fafc}.analysis-monitor-outcome-card span{display:block;margin-bottom:8px;color:#64748b;font-size:12px}@media(max-width:1100px){.analysis-monitor-layout{grid-template-columns:1fr}.analysis-monitor-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.analysis-monitor-header,.analysis-monitor-section-head,.analysis-monitor-list-head{flex-direction:column;align-items:stretch}.analysis-monitor-filters,.analysis-monitor-outcome-cards{grid-template-columns:1fr}}.integration-admin-page{display:grid;gap:20px}.integration-admin-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-end}.integration-admin-subtitle{margin:0;max-width:780px;color:#5f6b7a}.integration-admin-template-bar{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px 16px;border-radius:14px;background:linear-gradient(135deg,#eff6ff,#f8fafc);border:1px solid #dbeafe}.integration-admin-template-label{font-size:13px;font-weight:700;color:#1e3a8a}.integration-admin-template-actions{display:flex;gap:8px;flex-wrap:wrap}.integration-admin-template-button{border:1px solid #93c5fd;border-radius:999px;padding:8px 12px;background:#fff;color:#1d4ed8;font-weight:700}.integration-admin-tabs{display:flex;gap:8px;flex-wrap:wrap}.integration-admin-tab{border:none;border-radius:999px;padding:8px 12px;background:#e2e8f0;color:#334155}.integration-admin-tab-active{background:#dbeafe;color:#1d4ed8}.integration-admin-feedback,.integration-admin-empty{padding:14px 16px;border-radius:12px;background:#fff;box-shadow:0 4px 14px #00000014}.integration-admin-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:20px}.integration-admin-panel{background:#fff;border-radius:14px;box-shadow:0 4px 14px #00000014;padding:18px}.integration-admin-section-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:16px}.integration-admin-section-title{margin:0;font-size:20px}.integration-admin-section-note{font-size:12px;font-weight:700;color:#64748b}.integration-admin-table-wrap{overflow-x:auto}.integration-admin-table{width:100%;border-collapse:collapse}.integration-admin-table th,.integration-admin-table td{padding:10px 12px;border-bottom:1px solid #e5e7eb;text-align:left;vertical-align:top;font-size:13px}.integration-admin-table th{color:#64748b;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.td-right{text-align:right}.integration-admin-row-actions{display:flex;justify-content:flex-end;gap:6px;flex-wrap:wrap}.integration-admin-form{display:grid;gap:14px}.integration-admin-field{display:grid;gap:8px}.integration-admin-field span{font-size:14px;font-weight:600;color:#4b5563}.integration-admin-textarea{min-height:96px;resize:vertical}.integration-admin-codearea{min-height:140px;resize:vertical;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:12px}.integration-admin-checkbox{display:flex;align-items:center;gap:8px}.integration-admin-inline-checks{display:flex;gap:14px;flex-wrap:wrap}.integration-admin-actions{display:flex;gap:8px;flex-wrap:wrap}.integration-admin-hint{padding:12px 14px;border-radius:12px;background:#f8fafc;border:1px solid #e2e8f0;color:#475569;font-size:13px;line-height:1.5}.integration-admin-review-list{display:grid;gap:12px}.integration-admin-review-item{width:100%;text-align:left;border:1px solid #e5e7eb;border-radius:12px;padding:14px;background:#fff}.integration-admin-review-item-active{border-color:#93c5fd;box-shadow:0 0 0 3px #3b82f61f}.integration-admin-review-item-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:8px}.integration-admin-review-badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.integration-admin-review-meta{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:8px;color:#64748b;font-size:12px}.integration-admin-review-preview{margin:0;color:#334155;font-size:13px}.integration-admin-detail-card{border:1px solid #e5e7eb;border-radius:12px;padding:14px;background:#f8fafc}.integration-admin-detail-title{margin-bottom:8px;font-size:13px;font-weight:700;color:#334155}.integration-admin-detail-meta{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px;color:#64748b;font-size:12px}.integration-admin-detail-copy{margin:0 0 12px;color:#334155}.integration-admin-detail-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.integration-admin-status-badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap}.integration-admin-status-badge-neutral{background:#e2e8f0;color:#334155}.integration-admin-status-badge-success{background:#dcfce7;color:#166534}.integration-admin-status-badge-warning{background:#fef3c7;color:#92400e}.integration-admin-status-badge-danger{background:#fee2e2;color:#b91c1c}.integration-admin-json-viewer{padding:12px;border-radius:10px;background:#fff;border:1px solid #e2e8f0;overflow-x:auto;font-size:12px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.integration-admin-json-block{display:grid;gap:8px}.integration-admin-json-row{display:grid;grid-template-columns:minmax(110px,180px) minmax(0,1fr);gap:10px;align-items:start}.integration-admin-json-row-array{grid-template-columns:minmax(50px,70px) minmax(0,1fr)}.integration-admin-json-key,.integration-admin-json-index{color:#475569;font-weight:700}.integration-admin-json-string{color:#0f766e}.integration-admin-json-number{color:#7c3aed}.integration-admin-json-null,.integration-admin-json-empty{color:#94a3b8}.integration-admin-future-note{padding:12px 14px;border-radius:12px;background:#eff6ff;color:#1d4ed8;font-size:13px}.integration-admin-publish-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.integration-admin-inline-link{color:#1d4ed8;font-weight:700}.integration-admin-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a57;display:grid;place-items:center;padding:20px;z-index:1000}.integration-admin-dialog{width:min(100%,420px);background:#fff;border-radius:18px;padding:20px;box-shadow:0 24px 60px #0f172a3d;display:grid;gap:14px}.integration-admin-dialog-title{margin:0;font-size:20px;color:#0f172a}.integration-admin-dialog-copy{margin:0;color:#475569;line-height:1.5}@media(max-width:1100px){.integration-admin-layout{grid-template-columns:1fr}}@media(max-width:800px){.integration-admin-template-bar,.integration-admin-header,.integration-admin-section-head{flex-direction:column;align-items:stretch}.integration-admin-publish-grid,.integration-admin-detail-split{grid-template-columns:1fr}.integration-admin-review-item-head{flex-direction:column}.integration-admin-review-badges{justify-content:flex-start}.integration-admin-json-row,.integration-admin-json-row-array{grid-template-columns:1fr;gap:4px}}.system-interactions-page{display:grid;gap:12px;padding:30px;font-family:system-ui;background:#f7f9fc}.system-interactions-header{display:flex;justify-content:space-between;align-items:end;gap:14px;padding:8px 2px 4px;border-bottom:1px solid rgba(203,213,225,.72)}.system-interactions-title{margin:0;font-size:28px;line-height:1.1}.system-interactions-subtitle{margin:2px 0 0;max-width:760px;color:#64748b;font-size:13px;line-height:1.35}.system-interactions-header-meta{display:grid;gap:4px;justify-items:end;color:#475569;font-size:12px;font-weight:700}.system-interactions-panel{border:1px solid #cbd5e1;border-radius:8px;background:#fff;box-shadow:0 6px 18px #0f172a14;padding:12px}.system-interactions-filterbar{display:grid;grid-template-columns:minmax(220px,320px) auto minmax(220px,1fr);gap:12px;align-items:end}.system-interactions-field{display:grid;gap:5px}.system-interactions-field span,.system-interactions-refresh-info span{color:#64748b;font-size:11px;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.system-interactions-field .input{min-height:30px;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:6px;padding:5px 7px;background:#fff;font-size:12px}.system-interactions-filter-actions{display:flex;align-items:end}.system-interactions-action-button{min-height:30px;border:1px solid #cbd5e1;border-radius:5px;padding:5px 10px;background:#fff;color:#334155;cursor:pointer;font-size:12px;font-weight:700}.system-interactions-action-button:disabled{cursor:not-allowed;opacity:.55}.system-interactions-refresh-info{display:grid;gap:3px;justify-items:end;color:#64748b;font-size:12px;text-align:right}.system-interactions-refresh-info strong{color:#1f2937}.system-interactions-refresh-info em{min-height:1rem;color:#64748b;font-size:11px;font-style:normal}.system-interactions-live-status{color:#64748b}.system-interactions-error{padding:12px 14px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#334155;font-weight:700}.system-interactions-section-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:10px}.system-interactions-section-title{margin:0;color:#334155;font-size:13px;font-weight:700}.system-interactions-section-note{color:#64748b;font-size:12px}.system-interactions-table-wrap{overflow-x:auto;margin:0 -12px -12px}.system-interactions-table{width:100%;min-width:860px;border-collapse:collapse;table-layout:fixed}.system-interactions-table th{padding:8px 10px;border-top:1px solid #dbe3ee;border-bottom:1px solid #dbe3ee;background:#f1f5f9;color:#64748b;font-size:11px;font-weight:700;letter-spacing:.03em;text-align:left;text-transform:uppercase}.system-interactions-table td{padding:6px 10px;border-bottom:1px solid #e5eaf1;color:#1f2937;font-size:12px;vertical-align:top}.system-interactions-table tr:hover{background:#f8fafc}.system-interactions-table th:nth-child(1),.system-interactions-table td:nth-child(1){width:16%}.system-interactions-table th:nth-child(2),.system-interactions-table td:nth-child(2){width:39%}.system-interactions-table th:nth-child(3),.system-interactions-table td:nth-child(3){width:17%;white-space:nowrap}.system-interactions-table th:nth-child(4),.system-interactions-table td:nth-child(4){width:14%}.system-interactions-table th:nth-child(5),.system-interactions-table td:nth-child(5){width:14%}.system-interactions-details-cell{line-height:1.4;overflow-wrap:anywhere}.system-interactions-art{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-weight:600}.system-interactions-empty{padding:28px 16px;text-align:center;color:#64748b;font-size:12px}@media(max-width:1024px){.system-interactions-page{padding:20px 14px}.system-interactions-filterbar{grid-template-columns:1fr}.system-interactions-filter-actions,.system-interactions-refresh-info,.system-interactions-header-meta{justify-items:start;text-align:left}.system-interactions-header{flex-direction:column;align-items:stretch}}.ai-interactions-page{background:#f7f9fc;display:grid;font-family:system-ui;gap:12px;padding:30px}.ai-interactions-header{align-items:end;border-bottom:1px solid rgba(203,213,225,.72);display:flex;gap:14px;justify-content:space-between;padding:8px 2px 4px}.ai-interactions-header h1{color:#0f172a;font-size:28px;line-height:1.1;margin:0}.ai-interactions-header p{color:#64748b;font-size:13px;line-height:1.35;margin:4px 0 0}.ai-interactions-tabs{display:flex;flex-wrap:wrap;gap:6px}.ai-interactions-tabs a{background:#fff;border:1px solid #cbd5e1;border-radius:6px;color:#334155;font-size:12px;font-weight:800;padding:7px 10px;text-decoration:none}.ai-interactions-tabs a.active{background:#0f766e;border-color:#0f766e;color:#fff}.ai-interactions-panel,.ai-interactions-detail-section{background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-shadow:0 6px 18px #0f172a12;padding:12px}.ai-interactions-filterbar,.ai-interactions-cost-filters{align-items:end;display:grid;gap:10px;grid-template-columns:repeat(4,minmax(150px,1fr))}.ai-interactions-field{display:grid;gap:5px}.ai-interactions-field-wide{grid-column:span 2}.ai-interactions-field span{color:#64748b;font-size:11px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.ai-interactions-field .input{background:#fff;border:1px solid #cbd5e1;border-radius:6px;box-sizing:border-box;font-size:12px;min-height:32px;padding:6px 8px}.ai-interactions-actions{align-items:end;display:flex;flex-wrap:wrap;gap:8px}.ai-interactions-button,.ai-interactions-link-button{background:#fff;border:1px solid #cbd5e1;border-radius:6px;color:#334155;cursor:pointer;display:inline-flex;font-size:12px;font-weight:800;line-height:1.2;padding:8px 10px;text-decoration:none}.ai-interactions-button-primary{background:#0f766e;border-color:#0f766e;color:#fff}.ai-interactions-button:disabled{cursor:not-allowed;opacity:.55}.ai-interactions-link-button{border:0;color:#0f766e;padding:0 0 6px}.ai-interactions-chips{display:flex;flex-wrap:wrap;gap:6px}.ai-interactions-chips span{background:#eef6f5;border:1px solid #c8e2df;border-radius:999px;color:#0f766e;font-size:11px;font-weight:800;padding:4px 8px}.ai-interactions-error{background:#fff;border:1px solid #fecdd3;border-radius:8px;color:#9f1239;font-size:13px;font-weight:800;padding:12px 14px}.ai-interactions-section-head{align-items:baseline;display:flex;gap:12px;justify-content:space-between;margin-bottom:10px}.ai-interactions-section-head h2,.ai-interactions-detail-section h2{color:#334155;font-size:13px;font-weight:800;margin:0}.ai-interactions-section-head span{color:#64748b;font-size:12px}.ai-interactions-table-wrap{margin:0 -12px;overflow-x:auto}.ai-interactions-table{border-collapse:collapse;min-width:1180px;table-layout:fixed;width:100%}.ai-interactions-table th{background:#f1f5f9;border-bottom:1px solid #dbe3ee;border-top:1px solid #dbe3ee;color:#64748b;font-size:11px;font-weight:800;letter-spacing:.03em;padding:8px 10px;text-align:left;text-transform:uppercase}.ai-interactions-table td{border-bottom:1px solid #e5eaf1;color:#1f2937;font-size:12px;padding:7px 10px;vertical-align:top}.ai-interactions-table tr:hover{background:#f8fafc}.ai-interactions-table a{color:#0f766e;font-weight:800;text-decoration:none}.ai-interactions-compact-value{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-interactions-status{align-items:center;border:1px solid #cbd5e1;border-radius:999px;color:#475569;display:inline-flex;font-size:11px;font-weight:800;line-height:1;min-height:21px;padding:0 8px;white-space:nowrap}.ai-interactions-status-succeeded{background:#f0fdf4;border-color:#bbf7d0;color:#166534}.ai-interactions-status-failed{background:#fff1f2;border-color:#fecdd3;color:#9f1239}.ai-interactions-status-fallback{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.ai-interactions-empty,.ai-interactions-empty-cell{color:#64748b;font-size:12px;padding:28px 16px;text-align:center}.ai-interactions-pagination{align-items:center;display:flex;gap:8px;justify-content:flex-end;padding-top:12px}.ai-interactions-pagination span{color:#64748b;font-size:12px;font-weight:800}.ai-interactions-detail{display:grid;gap:12px}.ai-interactions-key-values{display:grid;gap:0;grid-template-columns:repeat(3,minmax(180px,1fr));margin:10px 0 0}.ai-interactions-key-values div{border-top:1px solid #e5eaf1;display:grid;gap:4px;min-width:0;padding:9px 10px 8px 0}.ai-interactions-key-values dt{color:#64748b;font-size:11px;font-weight:800;text-transform:uppercase}.ai-interactions-key-values dd{color:#1f2937;font-size:12px;font-weight:700;margin:0;overflow-wrap:anywhere}.ai-interactions-entity-action{display:flex;justify-content:flex-end}.ai-interactions-raw-section{border-color:#fed7aa;box-shadow:0 6px 18px #9a341214}.ai-interactions-raw-head{align-items:center;display:flex;gap:12px;justify-content:space-between}.ai-interactions-raw-head span,.ai-interactions-copy-state{color:#9a3412;font-size:12px;font-weight:800}.ai-interactions-raw-grid{display:grid;gap:8px;margin-top:12px}.ai-interactions-raw-field{border:1px solid #e2e8f0;border-radius:7px;overflow:hidden}.ai-interactions-raw-field summary{align-items:center;background:#f8fafc;cursor:pointer;display:flex;justify-content:space-between;padding:8px 10px}.ai-interactions-raw-field summary span{color:#334155;font-size:12px;font-weight:800}.ai-interactions-raw-field pre{background:#0f172a;color:#e2e8f0;font-size:12px;line-height:1.45;margin:0;max-height:460px;overflow:auto;padding:12px;white-space:pre-wrap;word-break:break-word}.ai-interactions-cost-summary{display:grid;gap:10px;grid-template-columns:repeat(5,minmax(150px,1fr));margin-bottom:12px}.ai-interactions-cost-summary div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:7px;display:grid;gap:5px;padding:10px}.ai-interactions-cost-summary span{color:#64748b;font-size:11px;font-weight:800;text-transform:uppercase}.ai-interactions-cost-summary strong{color:#0f172a;font-size:18px;overflow-wrap:anywhere}.ai-interactions-cost-table{min-width:1100px}@media(max-width:1100px){.ai-interactions-page{padding:20px 14px}.ai-interactions-header{align-items:stretch;flex-direction:column}.ai-interactions-filterbar,.ai-interactions-cost-filters,.ai-interactions-key-values,.ai-interactions-cost-summary{grid-template-columns:1fr}.ai-interactions-field-wide{grid-column:auto}.ai-interactions-pagination,.ai-interactions-entity-action{justify-content:flex-start}}.rbac-page{display:grid;gap:18px}.rbac-page-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px;padding:8px 2px 4px;border-bottom:1px solid rgba(203,213,225,.72)}.rbac-eyebrow{color:#0f766e;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.rbac-title{margin:2px 0 4px;font-size:28px;line-height:1.1}.rbac-page-header p,.rbac-panel-head p{margin:0;color:#64748b;font-size:13px;line-height:1.4}.rbac-header-metrics{display:grid;grid-template-columns:repeat(3,minmax(82px,1fr));gap:8px}.rbac-header-metrics span{display:grid;gap:2px;min-height:58px;padding:10px 12px;border:1px solid #dbe3ef;border-radius:8px;background:#fff;color:#64748b;font-size:12px;font-weight:700}.rbac-header-metrics strong{color:#0f172a;font-size:20px}.rbac-layout{display:grid;grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:16px;align-items:start}.rbac-panel{background:#fffffff5;border:1px solid rgba(226,232,240,.92);border-radius:8px;box-shadow:0 8px 22px #0f172a14;padding:16px}.rbac-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px}.rbac-panel-head h2{margin:0 0 4px;color:#0f172a;font-size:19px}.rbac-alert{padding:12px 14px;border-radius:8px;font-weight:700}.rbac-alert-error{background:#fff1f2;border:1px solid #fecdd3;color:#be123c}.rbac-alert-success{background:#ecfdf5;border:1px solid #bbf7d0;color:#166534}.rbac-role-list{display:grid;gap:10px}.rbac-role-card{border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;overflow:hidden}.rbac-role-card-selected{border-color:#14b8a6;background:#f0fdfa;box-shadow:inset 3px 0 #14b8a6}.rbac-role-card button{width:100%;display:grid;gap:6px;padding:12px;border:0;background:transparent;color:#334155;text-align:left;cursor:pointer}.rbac-role-card code,.rbac-permission-title code{color:#475569;font-size:11px;word-break:break-word}.rbac-role-card-top{display:flex;justify-content:space-between;gap:10px;align-items:center}.rbac-system-pill,.rbac-custom-pill,.rbac-count-badge{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:800}.rbac-system-pill{background:#e0f2fe;color:#075985}.rbac-custom-pill,.rbac-count-badge{background:#ccfbf1;color:#115e59}.rbac-role-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;border-top:1px solid #e2e8f0;color:#64748b;font-size:12px;font-weight:700}.rbac-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px}.rbac-field,.rbac-toggle{display:grid;gap:6px}.rbac-field span,.rbac-toggle span{color:#475569;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.rbac-field-wide{grid-column:1 / -1}.rbac-textarea{min-height:72px;resize:vertical}.rbac-toggle{display:flex;align-items:center;min-height:32px}.rbac-permission-matrix{display:grid;gap:12px}.rbac-permission-group{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;background:#fff}.rbac-permission-group-head{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.rbac-permission-group-head h3{margin:0;font-size:14px;color:#0f172a}.rbac-permission-group-head span{color:#64748b;font-size:12px;font-weight:700}.rbac-permission-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.rbac-permission-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:12px;border-bottom:1px solid #edf2f7;border-right:1px solid #edf2f7;cursor:pointer}.rbac-permission-item-selected{background:#f0fdfa}.rbac-permission-content,.rbac-permission-title{display:grid;gap:4px;min-width:0}.rbac-permission-description{color:#64748b;font-size:12px;line-height:1.35}.rbac-editor-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}.rbac-primary-button,.rbac-secondary-button,.rbac-icon-button,.rbac-delete-link{border-radius:8px;cursor:pointer;font-weight:800}.rbac-primary-button{min-height:34px;border:1px solid #0f766e;padding:7px 12px;background:#0f766e;color:#fff}.rbac-secondary-button{min-height:34px;border:1px solid #cbd5e1;padding:7px 12px;background:#fff;color:#334155}.rbac-icon-button{width:34px;height:34px;border:1px solid #0f766e;background:#ccfbf1;color:#115e59;font-size:22px;line-height:1}.rbac-delete-link{border:0;background:transparent;color:#be123c;padding:0}.rbac-primary-button:disabled,.rbac-secondary-button:disabled,.rbac-icon-button:disabled,.rbac-delete-link:disabled,.rbac-permission-item input:disabled,.rbac-user-role-option input:disabled{cursor:not-allowed;opacity:.58}.rbac-empty{padding:22px 12px;border-radius:8px;background:#f8fafc;color:#64748b;text-align:center}.rbac-user-panel{display:grid;gap:6px}.rbac-user-grid{display:grid;grid-template-columns:minmax(240px,340px) minmax(0,1fr);gap:16px}.rbac-user-role-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.rbac-user-role-option{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:center;min-height:54px;padding:10px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.rbac-user-role-option span{display:grid;gap:2px;min-width:0}.rbac-user-role-option small{color:#64748b;overflow-wrap:anywhere}@media(max-width:1100px){.rbac-layout,.rbac-user-grid,.rbac-page-header{grid-template-columns:1fr}.rbac-header-metrics,.rbac-user-role-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.rbac-form-grid,.rbac-permission-list,.rbac-header-metrics,.rbac-user-role-list{grid-template-columns:1fr}}.auth-loading-shell{min-height:100vh;box-sizing:border-box;display:grid;place-items:center;background:linear-gradient(180deg,#eef2f7,#f8fafc 48%,#f3f4f6);color:#0f172a}.auth-loading-panel{width:min(360px,calc(100vw - 48px));display:grid;justify-items:center;gap:14px}.auth-loading-brand{margin:0;color:#0f172a;font-size:26px;line-height:1.1;font-weight:800}.auth-loading-line{width:100%;height:5px;border-radius:999px;overflow:hidden;background:#e2e8f0}.auth-loading-line:after{content:"";display:block;width:45%;height:100%;border-radius:inherit;background:#0f766e;animation:auth-loading-progress 1.1s ease-in-out infinite alternate}.auth-loading-label{color:#64748b;font-size:13px;font-weight:700}@keyframes auth-loading-progress{0%{transform:translate(0)}to{transform:translate(125%)}}@media(prefers-reduced-motion:reduce){.auth-loading-line:after{animation:none}}
