:root{--navy-950:#08162b;--navy-900:#0d203d;--navy-800:#17345e;--navy-700:#214a80;--blue:#28659a;--gold:#c69b3c;--gold-2:#d8b65d;--ink:#182238;--muted:#778197;--line:#e4e8ee;--paper:#fff;--bg:#f4f6f8;--green:#2f8f70;--red:#c65353;--cyan:#337f99;--purple:#7958a8;--shadow:0 10px 28px rgba(18,32,58,.07);font-family:"Noto Sans SC","Microsoft YaHei",sans-serif;color:var(--ink)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg)}body{font-size:14px}button,input,textarea,select{font:inherit}button,a{color:inherit}button{cursor:pointer}a{text-decoration:none}textarea{resize:vertical}.sidebar{position:fixed;inset:0 auto 0 0;width:240px;background:linear-gradient(180deg,var(--navy-950),#0b1b34 60%,#0a172c);color:#dce4ef;display:flex;flex-direction:column;z-index:30;overflow-y:auto}.brand{height:88px;padding:22px 20px 15px;display:flex;align-items:center;gap:12px}.brand-mark{width:36px;height:36px;border-radius:9px;background:rgba(205,163,65,.13);color:var(--gold-2);display:grid;place-items:center;font-size:19px;box-shadow:inset 0 0 0 1px rgba(220,181,89,.08)}.brand b{display:block;color:#f8fafc;font-size:16px;letter-spacing:.22em}.brand small{display:block;color:#68788f;font-size:9px;letter-spacing:.17em;margin-top:3px}.brand-rule{height:1px;margin:0 20px;background:linear-gradient(90deg,#274364,transparent)}.nav{padding:14px 12px;flex:1}.nav>a,.nav summary{min-height:40px;padding:9px 11px;border-radius:8px;display:flex;align-items:center;gap:10px;color:#8e9db1;font-size:13px;letter-spacing:.03em;transition:.2s;list-style:none}.nav>a i,.nav summary>i:first-child{width:18px;font-size:16px}.nav>a:hover,.nav summary:hover{background:#102845;color:#dbe4ef}.nav .active{background:rgba(208,168,70,.12);color:#ddbd70}.nav details .arrow{margin-left:auto;font-size:12px}.nav details[open] .arrow{transform:rotate(180deg)}.nav details>a{display:block;margin-left:26px;padding:7px 10px 7px 16px;color:#718198;font-size:12px;border-left:1px solid #203754}.nav details>a:hover{color:#d9b967}.admin-entry{margin:8px 14px;padding:10px 13px;border-radius:8px;background:#132944;color:#9eacc0;font-size:12px;display:flex;gap:9px;align-items:center}.sidebar-foot{padding:12px 20px 20px;color:#52637a;display:flex;justify-content:space-between;font-size:9px}.sidebar-foot small{font-size:8px}.shell{margin-left:240px;min-height:100vh}.topbar{height:72px;background:rgba(255,255,255,.95);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 30px;position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.project-picker{position:relative}.eyebrow{display:block;color:#a88a49;font-size:9px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.picker-button{border:0;background:transparent;padding:3px 0;display:flex;gap:7px;align-items:center}.picker-button b{font-size:13px}.top-actions{display:flex;align-items:center;gap:8px;position:relative}.icon-button{width:36px;height:36px;border:1px solid var(--line);background:#fff;border-radius:9px;position:relative}.icon-button .dot{position:absolute;right:8px;top:8px;width:5px;height:5px;border-radius:50%;background:var(--gold)}.user-button{border:0;background:transparent;display:flex;align-items:center;gap:8px;padding:4px 7px}.avatar{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#2b4b73,#152b48);font-weight:700}.user-button span:nth-child(2){text-align:left}.user-button b,.user-button small{display:block}.user-button b{font-size:12px}.user-button small{font-size:9px;color:var(--muted)}.dropdown{display:none;position:absolute;top:48px;left:0;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:10px;padding:6px;min-width:220px;z-index:50}.dropdown.show{display:block}.dropdown button,.dropdown a{display:block;width:100%;padding:9px 11px;border:0;background:transparent;text-align:left;border-radius:6px}.dropdown button:hover,.dropdown a:hover{background:#f2f4f7}.user-menu{left:auto;right:0;min-width:150px}.user-menu form{margin:0}.content{padding:28px 30px 60px;max-width:1680px;margin:auto}.page-head{display:flex;justify-content:space-between;align-items:end;margin:5px 0 24px}.page-head.compact{margin-bottom:18px}.page-head h1{font-size:25px;letter-spacing:.02em;margin:6px 0 3px}.page-head p{color:var(--muted);margin:0;font-size:12px}.date-chip,.report-status{background:#fff;border:1px solid var(--line);border-radius:9px;padding:8px 12px;color:#667188;font-size:11px}.panel{background:var(--paper);border:1px solid rgba(218,224,232,.85);border-radius:13px;box-shadow:0 3px 14px rgba(16,34,62,.025)}.btn{border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px 13px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:11px;white-space:nowrap}.btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(20,36,62,.08)}.btn.primary{background:linear-gradient(135deg,#c69b3c,#b3872e);border-color:#b4882f;color:#fff}.btn.ghost{background:#fff;color:#516078}.btn.wide{width:100%}.head-actions{display:flex;gap:8px}.alert{padding:11px 13px;border-radius:8px;margin:10px 0}.alert.danger{background:#fff1f1;color:#b84040}.alert.info{background:#eef7fb;color:#33718a}.status{display:inline-flex;align-items:center;gap:5px;color:#6d788d;font-size:10px}.status i{width:6px;height:6px;border-radius:50%;background:#8c97a9}.status.success{color:#278266}.status.success i{background:#31a17e}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.metric-card{min-height:120px;background:#fff;border:1px solid var(--line);border-radius:13px;padding:20px;display:flex;align-items:center;gap:15px;position:relative}.metric-card.accent{background:linear-gradient(135deg,#102845,#193b62);color:#fff;border:0}.metric-card>div>span,.metric-card>span:not(.metric-icon){display:block;color:#778398;font-size:11px}.metric-card.accent>div>span,.metric-card.accent small{color:#a9b6c9}.metric-card strong{display:block;font:700 28px/1.3 "Noto Sans SC";margin:5px 0}.metric-card small{color:#98a1b0;font-size:9px}.metric-card em{position:absolute;right:16px;top:16px;color:#368b70;font-size:10px;font-style:normal}.metric-icon{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;font-size:19px}.metric-icon.blue{background:#eef4fb;color:#356b9c}.metric-icon.cyan{background:#eaf7f7;color:#318087}.metric-icon.gold{background:#fbf5e8;color:#ae8431}.ring{width:72px;height:72px;border-radius:50%;margin-left:auto;background:conic-gradient(var(--gold-2) calc(var(--p)*1%),#294563 0);display:grid;place-items:center;position:relative}.ring:before{content:"";position:absolute;inset:7px;background:#163555;border-radius:50%}.ring b{z-index:1;font-size:15px}.dashboard-grid{display:grid;grid-template-columns:1.35fr 1fr .72fr;gap:16px}.progress-panel{grid-column:span 2;padding:20px}.templates-panel{padding:20px}.activity-panel{grid-column:span 2;padding:20px}.kpi-panel{padding:20px}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.panel-head h2,.section-title h2{font-size:15px;margin:3px 0}.panel-head a,.panel-head button{font-size:10px;color:#8a7853;border:0;background:transparent}.module-progress{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.module-progress>div{background:#f7f8fa;border-radius:9px;padding:12px}.module-progress>div>span{width:23px;height:23px;border-radius:6px;background:#e9edf2;color:#8893a4;display:grid;place-items:center;margin-bottom:8px}.module-progress .done>span{background:#eaf5f0;color:#2b8e6e}.module-progress b,.module-progress small{display:block}.module-progress b{font-size:11px}.module-progress small{font-size:8px;color:#99a2af;margin-top:3px}.template-row{display:flex;align-items:center;gap:10px;padding:10px;border-radius:9px;background:#f7f8fa;margin-bottom:8px}.file-icon{width:34px;height:34px;border-radius:8px;background:#f6edd9;color:#aa8130;display:grid;place-items:center}.template-row>span:nth-child(2){flex:1}.template-row b,.template-row small{display:block}.template-row b{font-size:11px}.template-row small{font-size:8px;color:#9099a7}.template-row em{font-style:normal;font-size:10px;color:#7a8493}.tag-list{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}.tag-list button,.filterbar button{border:0;background:#f2f4f7;border-radius:20px;padding:6px 9px;font-size:9px;color:#748095}.timeline>div{display:flex;gap:10px;padding:9px 0;border-bottom:1px solid #edf0f3}.timeline-icon{width:28px;height:28px;border-radius:8px;background:#eff4f9;color:#416f98;display:grid;place-items:center}.timeline p{margin:0}.timeline b,.timeline small{display:block}.timeline b{font-size:11px}.timeline small{font-size:9px;color:#9099a8;margin-top:2px}.kpi-row{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;margin-bottom:16px}.kpi-row>span{font-size:10px;color:#788398}.kpi-row>b{font-size:14px}.kpi-row>em{font-size:9px;color:#2d8b6d;font-style:normal}.kpi-row>div{grid-column:1/-1;height:4px;background:#edf0f3;border-radius:4px}.kpi-row>div i{display:block;height:100%;background:linear-gradient(90deg,#264f79,var(--gold));border-radius:4px}.steps{height:54px;background:#fff;border:1px solid var(--line);border-radius:11px;margin-bottom:16px;display:flex;align-items:center;justify-content:center}.steps a{display:flex;align-items:center;gap:7px;color:#8a94a4;font-size:11px}.steps a i{width:24px;height:24px;border:1px solid #d9dee5;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:9px}.steps a.active{color:#a27a29;font-weight:600}.steps a.active i{background:var(--gold);border-color:var(--gold);color:#fff}.steps>span{height:1px;width:65px;background:#dde2e8;margin:0 11px}.tabs{display:flex;background:#fff;border:1px solid var(--line);border-radius:10px;padding:4px;margin-bottom:16px;max-width:680px}.tabs a{flex:1;text-align:center;padding:8px 13px;border-radius:7px;color:#778196;font-size:10px}.tabs a.active{background:#122b4b;color:#fff;box-shadow:0 3px 8px rgba(17,41,71,.18)}.form-panel{padding:22px}.section-title{display:flex;align-items:center;gap:11px;margin-bottom:20px}.section-title>span{width:35px;height:35px;border-radius:9px;background:#f7f0df;color:#ad8431;display:grid;place-items:center;font-size:16px}.section-title>div{flex:1}.section-title p{margin:0;color:var(--muted);font-size:10px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid.single{grid-template-columns:1fr}.form-grid label,.mini-grid label,.rule-editor label{font-size:10px;color:#626e82}.form-grid input,.form-grid textarea,.form-grid select,.mini-grid input,.rule-editor input,.rule-editor textarea,.rule-editor select,.config-card textarea,.kano-card textarea,.strategy-grid textarea,.result-document textarea,.look-card textarea,.canvas-cell textarea,.okr-hero input,.okr-hero textarea,.kr-main input,.kr-main textarea,.kr-main select,.matrix-summary textarea,.chart-panel>textarea{display:block;width:100%;border:1px solid #dfe4ea;background:#fbfcfd;border-radius:8px;padding:10px;margin-top:6px;outline:none;color:var(--ink)}input:focus,textarea:focus,select:focus{border-color:#b99852;box-shadow:0 0 0 3px rgba(190,151,62,.09)}.span-2{grid-column:span 2}.tip-card{margin-top:13px;background:#fffaf0;border:1px solid #eee1bf;border-radius:10px;padding:14px;display:flex;gap:11px;color:#80672e}.tip-card>i{font-size:20px}.tip-card b{font-size:11px}.tip-card p{margin:3px 0 0;font-size:10px;color:#8a7a56}.five-look-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.look-card{padding:18px}.look-card header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.look-card header>span{width:36px;height:36px;border-radius:9px;background:#eef4f8;color:#2e648e;display:grid;place-items:center}.look-card header>div{flex:1}.look-card h2{font-size:14px;margin:2px 0}.look-card header small{font-size:8px;color:#b08b3f;letter-spacing:.12em}.look-card header button,.look-card footer button{border:0;background:transparent;color:#a98a4c}.look-card footer{display:flex;align-items:center;gap:7px;margin-top:10px}.look-card footer select{margin-left:auto;border:1px solid var(--line);border-radius:6px;padding:5px;font-size:9px}.upload-chip{border:1px solid var(--line);border-radius:7px;padding:6px 8px;color:#647187;font-size:9px;cursor:pointer}.mini-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:8px}.mini-grid input{padding:7px}.editable-list{min-height:60px}.result-document{padding:22px}.document-toolbar{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:14px}.result-document article{display:flex;gap:18px;padding:20px 0;border-bottom:1px solid #edf0f3}.result-document article>span{font:700 22px/1 serif;color:#d5b66d}.result-document article>div{flex:1}.result-document h2{font-size:15px;margin:0 0 8px}.swot-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.swot-card{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.swot-card header{padding:15px 17px;display:flex;align-items:center;gap:11px;border-bottom:1px solid var(--line)}.swot-card header strong{width:35px;height:35px;border-radius:8px;background:#eef4fb;color:#316b9d;display:grid;place-items:center;font-size:17px}.swot-card.green header strong{background:#eaf7f1;color:#2d8a68}.swot-card.gold header strong{background:#faf3e2;color:#a88131}.swot-card.red header strong{background:#fceded;color:#bb4d4d}.swot-card header div{flex:1}.swot-card h2,.swot-card small{display:block;margin:0}.swot-card h2{font-size:14px}.swot-card small{font-size:8px;color:#9aa3b0}.swot-card header button{border:0;background:#f2f4f7;border-radius:6px;width:28px;height:28px}.list-editor{padding:9px 15px}.list-editor>div{display:flex;align-items:center;gap:8px;border-bottom:1px solid #edf0f3;padding:8px 0}.list-editor>div>span{width:20px;color:#9ba3af;font-size:9px}.list-editor textarea{flex:1;border:0;background:transparent;resize:none;min-height:34px}.list-editor button{border:0;background:transparent;color:#aab1bb}.strategy-matrix{padding:20px}.strategy-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.strategy-grid label{padding:14px;border-radius:9px;background:#f8f9fb}.strategy-grid b,.strategy-grid small{display:block}.strategy-grid b{font-size:11px}.strategy-grid small{font-size:9px;color:#8b95a3;margin:3px 0}.table-wrap{overflow:auto}.table-wrap table{width:100%;border-collapse:collapse}.table-wrap th{background:#112b4b;color:#dbe3ed;font-size:9px;letter-spacing:.05em;padding:11px;text-align:left;white-space:nowrap}.table-wrap td{border-bottom:1px solid #e8ebef;padding:10px;font-size:10px}.table-wrap td small{display:block;color:#949dab}.table-wrap button{border:0;background:transparent;color:#486987;font-size:9px}.score-panel{padding:20px;margin-top:14px}.subhead{display:flex;align-items:center;gap:12px;margin:22px 0 12px}.subhead>span{font:700 24px serif;color:#ceb16c}.subhead h2{margin:0;font-size:17px}.subhead p{margin:2px 0;color:var(--muted);font-size:10px}.config-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.config-grid.three{grid-template-columns:repeat(3,1fr)}.config-card{padding:16px}.config-card>span{display:flex;gap:8px;align-items:center;margin-bottom:9px}.config-card>span i{color:#ad8738}.chart-panel{padding:20px;margin-top:14px}.chart{height:320px}.chart.tall{height:410px}.kano-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.kano-card{padding:15px}.kano-card>span i,.kano-card>span b,.kano-card>span small{display:block}.kano-card>span i{font-style:normal;font-size:9px;color:#936eb4}.kano-card>span b{font-size:13px;margin:4px 0}.kano-card>span small{font-size:8px;color:#949dab;min-height:25px}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:14px}.factor-list label{display:grid;grid-template-columns:1fr auto auto;gap:7px;padding:10px;background:#f7f8fa;border-radius:8px;margin:8px 0}.factor-list input{width:100%;border:1px solid var(--line);border-radius:6px;padding:6px}.factor-list span input{width:52px}.action-list article{display:flex;gap:8px;align-items:center;padding:9px;border-bottom:1px solid var(--line)}.action-list textarea{flex:1;border:0;background:#f8f9fa;padding:8px;border-radius:7px}.action-list button{border:0;background:transparent}.canvas-board{display:grid;grid-template-columns:1.05fr 1fr 1.35fr 1fr 1.05fr;grid-template-rows:1fr 1fr .8fr auto;gap:8px;background:#102745;padding:8px;border-radius:14px;min-height:630px}.canvas-cell{background:#fff;border-radius:7px;padding:14px;display:flex;flex-direction:column}.canvas-cell>span i,.canvas-cell>span b,.canvas-cell>span small{display:block}.canvas-cell>span i{font-style:normal;font-size:8px;color:#b09250}.canvas-cell>span b{font-size:12px;margin:3px 0}.canvas-cell>span small{font-size:8px;color:#969fad}.canvas-cell textarea{flex:1;min-height:80px;border:0;background:rgba(246,248,250,.85)}.canvas-cell.c1{grid-row:1/3;background:#eef5f2}.canvas-cell.c2{background:#f4f0f7}.canvas-cell.c3{grid-column:2;grid-row:2;background:#f4f0f7}.canvas-cell.c4{grid-column:3;grid-row:1/3;background:#fbf3df}.canvas-cell.c5{grid-column:4;grid-row:1;background:#eff4fa}.canvas-cell.c6{grid-column:4;grid-row:2;background:#eff4fa}.canvas-cell.c7{grid-column:5;grid-row:1/3;background:#f3edf0}.canvas-cell.c8{grid-column:1/3;grid-row:3;background:#f8eeee}.canvas-cell.c9{grid-column:3/6;grid-row:3;background:#ecf5ef}.flow-arrow{grid-column:1/6;color:#cab16f;text-align:center;font-size:10px;letter-spacing:.1em;padding:6px}.okr-hero{padding:20px;display:flex;align-items:center;gap:15px;background:linear-gradient(135deg,#102a49,#173c63);color:#fff}.okr-hero>span{font:700 34px serif;color:#d4af56}.okr-hero>div{flex:1}.okr-hero input,.okr-hero textarea{background:transparent;border-color:#456080;color:#fff;margin-top:5px}.okr-hero small{color:#9dafc4}.kr-list article{margin-top:11px;padding:16px;display:flex;gap:14px}.kr-index{font-weight:700;color:#a98435;width:40px}.kr-main{flex:1}.kr-main>input{font-weight:600}.kr-main>div{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.kr-main label{font-size:8px;color:#7f8999}.kr-list article>button{border:0;background:transparent;align-self:start}.dupont-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.dupont-kpis>div{background:#f7f8fa;border-radius:8px;padding:10px;text-align:center}.dupont-kpis span,.dupont-kpis b{display:block}.dupont-kpis span{font-size:8px;color:#8994a4}.dupont-kpis b{font-size:15px;margin-top:3px}.profile-card{padding:28px;display:grid;grid-template-columns:auto 1fr 2fr;gap:18px;align-items:start}.avatar.large{width:64px;height:64px;font-size:24px}.matrix-layout{display:grid;grid-template-columns:1fr 260px;gap:14px}.matrix-chart-panel,.matrix-summary{padding:20px}.matrix-chart{height:520px}.legend{display:flex;gap:10px}.bubble-controls{display:flex;gap:16px;align-items:center;border-top:1px solid var(--line);padding-top:12px;font-size:9px;color:#778196}.bubble-controls input{width:95px}.bubble-controls span{margin-left:auto}.bubble-controls span i{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--gold)}.matrix-summary h2{margin:4px 0 18px}.summary-score{display:grid;grid-template-columns:1fr 1fr;gap:8px}.summary-score div{background:#f5f7f9;border-radius:8px;padding:11px}.summary-score span,.summary-score b{display:block}.summary-score span{font-size:8px;color:#8d96a5}.summary-score b{font-size:20px;margin-top:3px}.matrix-summary hr{border:0;border-top:1px solid var(--line);margin:18px 0}.matrix-summary h3{font-size:11px}.search{height:36px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:0 10px;display:flex;align-items:center;gap:6px}.search input{border:0;outline:0;background:transparent;min-width:230px;font-size:10px}.grow{flex:1}.filterbar{display:flex;gap:7px;align-items:center;margin-bottom:14px}.filterbar button.active{background:#183657;color:#fff}.filterbar span{flex:1}.filterbar select{border:1px solid var(--line);border-radius:8px;padding:7px}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.project-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:18px;transition:.2s}.project-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.project-card header{display:flex;gap:11px;align-items:center}.project-symbol{width:40px;height:40px;border-radius:10px;background:#eef3f8;color:#315f89;display:grid;place-items:center}.project-card header>div{flex:1}.project-card header small,.project-card header h2{display:block;margin:0}.project-card header small{color:#a28649;font-size:8px}.project-card h2{font-size:14px;margin-top:4px}.project-card header>button{border:0;background:transparent}.project-card>p{height:38px;color:#8791a0;font-size:9px}.project-progress{display:flex;align-items:center;gap:9px}.project-progress>span{height:4px;background:#e8ebef;flex:1;border-radius:3px}.project-progress i{display:block;height:100%;background:linear-gradient(90deg,#1c4c75,#d0aa4a);border-radius:3px}.project-progress b{font-size:9px}.project-card footer{border-top:1px solid var(--line);padding-top:12px;margin-top:14px;display:flex;align-items:center;justify-content:space-between}.project-card footer small{font-size:8px;color:#9ba3af}.project-card footer button{border:0;background:transparent;font-size:9px}.project-card footer .enter{color:#a37c2b}.new-project-card{min-height:210px;border:1px dashed #bfc7d1;border-radius:13px;background:rgba(255,255,255,.4);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#818b9a}.new-project-card i{width:38px;height:38px;border-radius:50%;background:#fff;display:grid;place-items:center;font-size:18px}.new-project-card b{font-size:12px}.new-project-card span{font-size:9px}.library-tabs{display:flex;gap:5px;margin-bottom:13px}.library-tabs button{border:0;background:transparent;padding:9px 12px;border-radius:8px;color:#748093;font-size:10px}.library-tabs button.active{background:#142f50;color:#fff}.material-toolbar{padding:12px;display:flex;gap:8px;margin-bottom:12px}.material-toolbar select{border:1px solid var(--line);border-radius:8px;padding:7px;font-size:9px}.upload-zone{border:1px dashed #bfc7d1;background:#fafbfc;border-radius:12px;min-height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#7e899a;position:relative;margin-bottom:13px}.upload-zone>input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.upload-zone>i{font-size:26px;color:#b38b39}.upload-zone b{font-size:11px;margin-top:6px}.upload-zone span{font-size:8px;margin-top:4px}.upload-zone>div{z-index:2;margin-top:7px}.upload-zone label,.upload-zone select{font-size:9px}.material-row{padding:14px;display:flex;align-items:center;gap:12px;margin-bottom:8px}.material-icon{width:42px;height:42px;border-radius:9px;background:#eef4f8;color:#35688f;display:grid;place-items:center}.material-row h3{display:inline;margin:0;font-size:11px}.material-row p{margin:5px 0;color:#7f8999;font-size:9px}.material-row small{font-size:8px;color:#9ba3af}.badge{display:inline-block;background:#f0f2f5;color:#68758a;border-radius:10px;padding:2px 6px;font-size:8px;margin-left:5px}.badge.strict{background:#fce9e9;color:#b24a4a}.badge.deep{background:#fbf1dd;color:#9e7829}.row-actions button,.row-actions a{border:0;background:transparent;padding:7px;color:#718096}.empty-state{min-height:350px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#7d8797}.empty-state.small{min-height:220px}.empty-state>i{font-size:38px;color:#b5bdc7}.empty-state h2{font-size:15px;color:#455267;margin:10px 0 2px}.empty-state p{font-size:10px}.report-layout{display:grid;grid-template-columns:1fr 300px;gap:14px}.report-preview{padding:18px;min-height:760px}.report-preview iframe{width:100%;height:680px;border:1px solid var(--line);border-radius:8px}.report-side{display:flex;flex-direction:column;gap:12px}.report-side>.panel{padding:18px}.report-side h2{font-size:14px}.chapter{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid #edf0f3}.chapter span{font-size:8px;color:#b08a3b}.chapter b{font-size:9px;flex:1}.chapter i{color:#2f8e6e}.delivery-button{width:100%;border:1px solid var(--line);background:#fff;border-radius:8px;padding:10px;display:flex;gap:9px;align-items:center;text-align:left;margin-bottom:7px}.delivery-button>i{width:31px;height:31px;border-radius:7px;background:#f7f1e3;color:#aa8130;display:grid;place-items:center}.delivery-button b,.delivery-button small{display:block}.delivery-button b{font-size:10px}.delivery-button small{font-size:8px;color:#929baa}.snapshots{padding:18px;margin-top:13px}.snapshots>div:not(.section-title){display:grid;grid-template-columns:55px 1fr 180px 50px;gap:8px;padding:9px;border-top:1px solid var(--line);font-size:9px}.admin-shell{display:grid;grid-template-columns:190px 1fr;gap:18px}.admin-nav{background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px;height:max-content;position:sticky;top:92px}.admin-nav>span{display:block;color:#99907b;font-size:9px;padding:8px 10px}.admin-nav a{display:flex;gap:8px;padding:8px 10px;border-radius:7px;color:#758095;font-size:10px}.admin-nav a.active{background:#152f50;color:#fff}.admin-content{min-width:0}.admin-split{display:grid;grid-template-columns:280px 1fr;gap:12px}.admin-split>.panel{padding:15px}.list-head{display:flex;align-items:center;justify-content:space-between}.list-head input{width:120px;border:1px solid var(--line);border-radius:7px;padding:6px}.rule-row{border:0;border-bottom:1px solid var(--line);background:transparent;width:100%;padding:10px 5px;display:flex;text-align:left}.rule-row span{flex:1}.rule-row b,.rule-row small{display:block}.rule-row b{font-size:10px}.rule-row small{font-size:8px;color:#969fad}.rule-row em{font-style:normal;font-size:8px;color:#a07d31}.rule-editor textarea{min-height:350px}.form-row{display:flex;gap:8px;align-items:center}.form-row>*{flex:1}.permission-table input{accent-color:#b88d36}.storage{display:flex;align-items:baseline;gap:4px}.storage span,.storage small{font-size:9px;color:#8b95a4}.storage b{font-size:24px}.report-status{display:flex;gap:8px;align-items:center}.report-status>i{width:8px;height:8px;border-radius:50%;background:#2fa078}.report-status small,.report-status b{display:block}.report-status small{font-size:8px;color:#8c96a4}.report-status b{font-size:10px}.muted{color:var(--muted);font-size:10px}.toast{position:fixed;right:24px;bottom:24px;background:#142c4b;color:#fff;padding:11px 15px;border-radius:9px;box-shadow:var(--shadow);opacity:0;transform:translateY(12px);pointer-events:none;transition:.2s;z-index:100}.toast.show{opacity:1;transform:translateY(0)}.modal-backdrop{position:fixed;inset:0;background:rgba(5,15,29,.55);z-index:80;display:grid;place-items:center;padding:20px}.modal{width:min(620px,96vw);max-height:90vh;overflow:auto;background:#fff;border-radius:14px;box-shadow:0 25px 70px rgba(0,0,0,.25);padding:22px}.modal header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.modal h2{margin:0;font-size:17px}.modal header button{border:0;background:transparent;font-size:18px}.modal footer{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.login-page{display:grid;grid-template-columns:1.15fr .85fr;min-height:100vh}.login-visual{background:linear-gradient(145deg,#07162c,#102f50);color:#fff;position:relative;overflow:hidden;padding:40px 55px}.login-brand{display:flex;gap:12px;align-items:center}.login-brand b,.login-brand small{display:block}.login-brand b{letter-spacing:.22em}.login-brand small{color:#72869d;font-size:9px;letter-spacing:.15em}.visual-copy{position:absolute;left:12%;top:36%;z-index:2;max-width:560px}.visual-copy>span{font-size:10px;color:#d0ad59;letter-spacing:.25em}.visual-copy h1{font-size:40px;line-height:1.35;letter-spacing:.04em;margin:18px 0}.visual-copy p{color:#9fb0c3;line-height:1.8}.visual-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(88,115,145,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(88,115,145,.08) 1px,transparent 1px);background-size:50px 50px;mask-image:linear-gradient(120deg,#000,transparent 75%)}.login-panel{display:grid;place-items:center;background:#f7f8fa;padding:30px}.login-card{width:min(390px,100%);background:#fff;border:1px solid var(--line);border-radius:16px;padding:40px;box-shadow:var(--shadow)}.login-card h2{font-size:24px;margin:8px 0}.login-card>p{color:#8993a3;font-size:11px;margin-bottom:25px}.login-card>label{display:block;font-size:10px;margin:15px 0;color:#5d697d}.input-icon{display:flex;border:1px solid #dde2e8;border-radius:9px;margin-top:7px;align-items:center;padding:0 11px}.input-icon i{color:#9aa3af}.input-icon input{border:0;outline:0;padding:11px;width:100%}.login-card .form-row{justify-content:space-between;color:#8b94a3;font-size:9px}.login-card .form-row>*{flex:none}.check{display:flex;gap:5px;align-items:center}.demo-tip{text-align:center;color:#a2a9b4;font-size:8px;margin-top:15px}.error-page{display:grid;place-items:center;min-height:100vh;text-align:center}.error-page>div>b{font-size:72px;color:#c5a252}.error-page h1{font-size:21px}.error-page p{color:#8993a1}.large{font-size:22px}
@media(max-width:1200px){.metric-grid{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr 1fr}.templates-panel,.kpi-panel{grid-column:auto}.project-grid{grid-template-columns:1fr 1fr}.kano-grid{grid-template-columns:repeat(3,1fr)}.config-grid{grid-template-columns:1fr 1fr}.report-layout{grid-template-columns:1fr}.canvas-board{overflow:auto}.matrix-layout{grid-template-columns:1fr}.matrix-summary{display:grid;grid-template-columns:1fr 1fr;gap:15px}}@media(max-width:900px){.sidebar{width:min(86vw,280px)}.brand{padding:18px}.brand>span:last-child,.nav span,.sidebar-foot,.admin-entry{display:initial}.nav details>a{display:flex!important}.nav>a,.nav summary{justify-content:flex-start}.shell{margin-left:0}.content{padding:20px}.topbar{padding:0 18px}.five-look-grid,.swot-grid,.two-column,.form-grid,.admin-split{grid-template-columns:1fr}.span-2{grid-column:auto}.dashboard-grid{grid-template-columns:1fr}.dashboard-grid>*{grid-column:auto}.module-progress{grid-template-columns:repeat(2,1fr)}.project-grid{grid-template-columns:1fr}.report-side{grid-template-columns:1fr}.admin-shell{grid-template-columns:1fr}.admin-nav{position:static;display:flex;overflow:auto}.admin-nav a{white-space:nowrap}.login-page{grid-template-columns:1fr}.login-visual{display:none}.mini-grid{grid-template-columns:1fr 1fr}.config-grid,.config-grid.three{grid-template-columns:1fr}.profile-card{grid-template-columns:1fr}.kano-grid{grid-template-columns:1fr 1fr}}
