:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#14283d;background:#f4f7fb}
*{box-sizing:border-box}body{margin:0;background:#f4f7fb}button,input,select,textarea{font:inherit}
.shell{min-height:100vh}.main{max-width:840px;margin:auto;padding:22px 15px calc(96px + env(safe-area-inset-bottom))}
.head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:18px}.head h1{font-size:28px;letter-spacing:-.04em;color:#0c2747;margin:0}.head p{color:#6b7d90;font-size:13px;margin:5px 0}.eyebrow{font-size:10px!important;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:#3176a6!important}
.avatar{width:42px;height:42px;border-radius:50%;border:0;background:#0c2747;color:#fff;font-weight:800;flex:none}
.metrics{display:grid;grid-template-columns:1fr 1fr;gap:9px}.metric,.card,.panel,.hero,.detail>div,.formSection,.tile{background:#fff;border:1px solid #dbe4ed;border-radius:15px;box-shadow:0 2px 10px #10243a08}
.metric{padding:14px}.metric span{display:block;color:#697b8f;font-size:11px;font-weight:700}.metric b{display:block;font-size:28px;margin-top:7px;color:#173651}.metric.red{background:#fffafa;border-color:#f0c2c2}.metric.red b{color:#a63232}.metric.orange{background:#fffdf9;border-color:#f1d8bb}.metric.orange b{color:#9f5c1d}
.sec{display:flex;justify-content:space-between;align-items:center;margin:22px 2px 9px}.sec h2{font-size:16px;margin:0;color:#173651}.sec button{border:0;background:none;color:#12689f;font-weight:800}
.stack{display:grid;gap:8px}.card{display:flex;align-items:center;gap:11px;padding:13px;position:relative}.card.tap{cursor:pointer;padding-right:32px}.card.tap:after{content:'›';position:absolute;right:13px;color:#96a5b4;font-size:22px}.grow{flex:1;min-width:0}.row{display:flex;justify-content:space-between;gap:8px;align-items:center}.card b{font-size:13px;color:#173651}.card p{font-size:12px;color:#60738a;margin:3px 0}.card small{font-size:11px;color:#8694a3}
.icon,.badge{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;flex:none}.icon{background:#e9f3fa;color:#146d9e;font-size:20px}.badge{background:#173f62;color:white;font-size:13px;font-weight:800}
.pill{display:inline-flex;border-radius:999px;padding:4px 8px;background:#edf1f5;color:#596a7d;font-size:10px;font-weight:800}.pill.low,.pill.active,.pill.valid,.pill.completed,.pill.reviewed{background:#e4f4e9;color:#27683c}.pill.advisory{background:#eef5dc;color:#667729}.pill.moderate,.pill.open{background:#fff4c9;color:#846718}.pill.high{background:#fee6cf;color:#98531d}.pill.critical,.pill.expired,.pill.invalid{background:#fadddd;color:#9c2828}.pill.planned,.pill.requested,.pill.in-progress{background:#e7f1fa;color:#28658c}.pill.rejected,.pill.superseded{background:#edf0f3;color:#657180}
.nav{position:fixed;z-index:10;bottom:0;left:0;right:0;height:calc(68px + env(safe-area-inset-bottom));padding:5px 6px env(safe-area-inset-bottom);display:grid;grid-template-columns:repeat(5,1fr);background:#fffffff5;border-top:1px solid #d5dfe8;backdrop-filter:blur(14px)}.nav button{border:0;background:none;color:#728396;font-size:10px;font-weight:700;display:grid;place-content:center;gap:3px}.nav button span:first-child{font-size:19px}.nav button.active{color:#12689f}
.primary,.secondary,.danger,.ghost{width:100%;border-radius:12px;padding:12px 14px;font-weight:800;border:1px solid transparent;margin-top:9px}.primary{background:#12689f;color:white}.secondary{background:white;border-color:#ccd9e5;color:#173f62}.danger{background:white;border-color:#e3b4b4;color:#a03535}.ghost{background:transparent;color:#64778a}
.hero{padding:18px;text-align:center}.hero .badge,.hero .icon{margin:auto;width:58px;height:58px;border-radius:16px;font-size:17px}.hero h2{margin:10px 0 3px;color:#173651}.hero p{margin:0 0 8px;color:#687b90;font-size:13px}
.detail{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:9px}.detail>div{padding:11px}.detail span{font-size:10px;color:#8190a0;font-weight:700;display:block}.detail b{font-size:12px;color:#173651;word-break:break-word}
.back{border:0;background:none;color:#12689f;font-weight:800;padding:0;margin-bottom:14px}.workflow{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.workflow button{border:1px solid #dbe4ed;background:white;border-radius:12px;padding:10px 3px;color:#60748a}.workflow b{display:block;color:#173651;font-size:19px}.workflow span{font-size:9px;font-weight:700}
.panel{padding:14px;margin-top:14px;font-size:12px;line-height:1.5;color:#557087}.panel.warn{background:#fffaf1;border-color:#f0d2a9}.panel.exception{background:#fff8f1;border-color:#ebc796}.timeline{border-left:2px solid #dbe4ed;margin-left:7px;padding-left:18px}.event{position:relative;padding:3px 0 14px}.event:before{content:'';position:absolute;width:9px;height:9px;border-radius:50%;background:#4283ad;left:-24px;top:6px;border:2px solid #f4f7fb}.event b{font-size:12px}.event p{font-size:11px;color:#738396;margin:3px 0}
.formSection{padding:14px;margin:10px 0}.formSection h3{font-size:14px;color:#173651;margin:0 0 10px}.hint{font-size:11px;color:#718396;margin:-4px 0 9px}.field{display:grid;gap:5px;margin:11px 0}.field label{font-size:11px;font-weight:800;color:#4d6176}.field input,.field select,.field textarea{border:1px solid #cdd9e5;background:white;border-radius:11px;padding:12px;width:100%}.field textarea{min-height:84px;resize:vertical}.field .help{font-size:10px;color:#8292a3}.inline{display:grid;grid-template-columns:1fr 1fr;gap:8px}.toggleRow{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:9px 0}.toggleRow label{font-size:12px;font-weight:800;color:#4d6176}.toggleRow input{width:20px;height:20px}
.costGrid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:7px;align-items:end}.costHead{font-size:10px;color:#8292a3;font-weight:800}.costName{font-size:11px;font-weight:800;color:#4d6176;padding-bottom:12px}.totals{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:10px}.totalBox{background:#f5f8fb;border-radius:11px;padding:9px}.totalBox span{font-size:9px;color:#7c8c9e;display:block}.totalBox b{font-size:12px}
.modalBg{position:fixed;z-index:30;inset:0;background:#081b2baa;display:flex;align-items:flex-end}.modal{width:100%;max-height:92vh;overflow:auto;background:#f7f9fc;border-radius:20px 20px 0 0;padding:17px 17px calc(18px + env(safe-area-inset-bottom));margin:auto}.modalTop{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.modalTop h2{font-size:18px;margin:0}.x{border:0;background:#e8eef3;width:35px;height:35px;border-radius:50%}
.toast{position:fixed;z-index:40;left:15px;right:15px;bottom:calc(80px + env(safe-area-inset-bottom));background:#173651;color:#fff;padding:12px;border-radius:11px;text-align:center;font-size:12px}.file input{display:none}.leavers{margin-top:16px}.leavers summary{font-size:12px;font-weight:800;color:#64778a;margin-bottom:8px}.error{margin:30px 15px;background:#fff0f0;border:1px solid #efc2c2;border-radius:14px;padding:16px;color:#842b2b}
.adminGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tile{padding:14px;text-align:left;color:#173651}.tile b{display:block;font-size:13px}.tile span{display:block;color:#75869a;font-size:10px;margin-top:4px}.helpNav{display:grid;grid-template-columns:1fr 1fr;gap:7px}.helpNav button{border:1px solid #dbe4ed;background:#fff;border-radius:12px;padding:10px;color:#35617f;font-weight:800;font-size:11px}.helpText h2{font-size:17px;color:#173651;margin-top:24px}.helpText h3{font-size:13px;color:#173651;margin-top:16px}.helpText p,.helpText li{font-size:12px;line-height:1.55;color:#526c83}.helpText ul{padding-left:20px}.release{border-left:3px solid #12689f;padding-left:12px;margin:12px 0}.release b{font-size:13px}.release p{font-size:11px;margin:3px 0}
@media(min-width:700px){.metrics{grid-template-columns:repeat(5,1fr)}.modalBg{align-items:center}.modal{max-width:560px;border-radius:20px}.nav{left:50%;right:auto;transform:translateX(-50%);width:600px;border:1px solid #d5dfe8;border-bottom:0;border-radius:16px 16px 0 0}.adminGrid{grid-template-columns:repeat(3,1fr)}}

.previewBar{background:#0c2747;color:#fff;border-radius:15px;padding:12px;margin-bottom:16px;display:grid;gap:9px}
.previewBar b{display:block;font-size:12px}.previewBar span{display:block;font-size:10px;opacity:.75;margin-top:2px}
.previewControls{display:grid;grid-template-columns:1fr;gap:7px}.previewControls select{width:100%;border:1px solid #47637f;background:#fff;color:#173651;border-radius:10px;padding:9px}
.required:after{content:" *";color:#b42318}.input-error{border:2px solid #d92d20!important;background:#fff7f6!important;box-shadow:0 0 0 3px #d92d2014}
.errorSummary{background:#fff1f0;border:1px solid #f3b5b0;border-radius:13px;padding:12px;color:#912018;margin:10px 0 14px;font-size:12px}
.errorSummary b{font-size:12px}.errorSummary ul{margin:7px 0 0;padding-left:18px}.errorSummary li{margin:3px 0}
@media(min-width:700px){.previewBar{grid-template-columns:1fr 1.4fr;align-items:center}.previewControls{grid-template-columns:1fr 1fr}}

.actionGrid,.forecastGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.buttonRow{display:flex;gap:6px;margin-top:9px}.smallBtn{border:1px solid #ccd9e5;background:#fff;border-radius:9px;padding:7px 9px;font-size:10px;font-weight:800;color:#35546d}.smallBtn.approve{border-color:#a8d4b5;color:#25653a}.smallBtn.reject{border-color:#e3b4b4;color:#9c2828}.bellBtn{border:1px solid #47637f;background:#fff;color:#173651;border-radius:10px;padding:8px 10px;font-weight:800}.bellBtn span{display:inline-block!important;color:#fff!important;background:#c03838;border-radius:999px;padding:1px 6px;margin:0 0 0 3px!important;opacity:1!important}.helpFab{position:fixed;z-index:60;right:16px;bottom:calc(80px + env(safe-area-inset-bottom));width:44px;height:44px;border-radius:50%;border:0;background:#173651;color:#fff;font-size:20px;font-weight:900;box-shadow:0 4px 18px #10243a44}.partnerLevels{display:grid;gap:10px;margin-top:12px}.partnerLevel{background:#fff;border:1px solid #dbe4ed;border-radius:15px;padding:14px}.partnerLevel h3{margin:0;color:#173651}.requirement{border-top:1px solid #edf1f5;padding:10px 0}.requirement p{font-size:11px;color:#687b90;margin:4px 0}.requirement small{display:block;color:#4c6a80}.gap{background:#fff3e6;color:#8b501a;border-radius:9px;padding:8px;margin-top:7px;font-size:11px;font-weight:700}.miniRule{background:#f6f8fa;border-radius:9px;padding:8px;margin-top:7px}.miniRule b,.miniRule span{display:block;font-size:10px}.miniRule span{color:#6b7d90;margin-top:3px}.helpModalBg{z-index:65}.previewIdentity{min-width:0}
@media(min-width:900px){.main{max-width:1180px;padding-left:24px;padding-right:24px}.metrics{grid-template-columns:repeat(5,1fr)}.actionGrid{grid-template-columns:repeat(3,1fr)}.partnerLevels{grid-template-columns:repeat(2,minmax(0,1fr))}.forecastGrid{grid-template-columns:repeat(4,1fr)}.adminGrid{grid-template-columns:repeat(4,1fr)}.detail{grid-template-columns:repeat(4,1fr)}.stack .card{padding:15px}.nav{width:760px}.helpFab{bottom:24px;right:24px}}

.integrationStatus{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.serviceConnected{border-left:4px solid #16803c}.serviceError{border-left:4px solid #b42318}
@media(min-width:900px){.main{max-width:1180px}.adminGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.partnerLevels{grid-template-columns:repeat(2,minmax(0,1fr))}}
