
:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:#172338;background:#f5f7fb}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}.shell{display:flex;min-height:100vh}.side{width:230px;background:white;border-right:1px solid #e7eaf0;padding:24px 14px;position:sticky;top:0;height:100vh}.logo{font-size:25px;letter-spacing:3px;color:#fa651f;font-weight:850;margin:0 10px 2px}.sublogo{font-size:10px;letter-spacing:6px;margin-left:12px;color:#182a45}.nav{margin-top:40px;display:grid;gap:6px}.nav button{border:0;background:transparent;color:#43526a;text-align:left;padding:13px;border-radius:9px;font-weight:600}.nav button.active{background:#ff671d;color:#fff}.main{flex:1;min-width:0;padding:28px 34px 95px;max-width:1600px;margin:auto;width:100%}.top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:22px}.muted{color:#78869a}.small{font-size:12px}.top h1{font-size:26px;margin:0 0 5px}.pill{background:#fff3eb;color:#d85a1b;border-radius:30px;padding:7px 11px;font-size:12px;font-weight:700}.btn{border:0;border-radius:9px;background:#ff671d;color:white;padding:11px 15px;font-weight:700}.btn.secondary{background:#fff;color:#344359;border:1px solid #dce2eb}.btn.danger{background:#fff1f1;color:#b83232}.btn.sm{padding:7px 9px;font-size:12px}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.card,.panel{background:white;border:1px solid #e9edf3;border-radius:14px;padding:19px;box-shadow:0 3px 15px #142c4d06}.card .num{font-size:32px;font-weight:800;margin-top:13px}.card .label{font-size:13px;color:#6e7c8f}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:17px}.panel h3{margin:0 0 17px;font-size:16px}.row{display:flex;align-items:center;gap:10px}.between{justify-content:space-between}.item{padding:12px 0;border-bottom:1px solid #edf0f4}.item:last-child{border:0}.tag{font-size:11px;border-radius:20px;background:#edf2fa;color:#375074;padding:5px 9px;display:inline-block}.tag.hot{background:#ffe7e3;color:#b83323}.tag.warm{background:#fff3d6;color:#92630b}.tag.closed{background:#def6e8;color:#167747}.filters{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:15px}.field{padding:11px 12px;border:1px solid #dce3eb;border-radius:9px;background:#fff;color:#24334a;min-width:0}.filters .field{flex:1;min-width:160px}.tablewrap{overflow:auto}.tbl{width:100%;border-collapse:collapse;text-align:left;min-width:750px}.tbl th{background:#f7f9fc;font-size:12px;color:#728096}.tbl td,.tbl th{padding:13px 10px;border-bottom:1px solid #edf0f4;font-size:13px}.link{border:0;background:none;color:#eb641d;font-weight:700;padding:4px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.formgrid label{display:grid;gap:6px;font-size:12px;font-weight:700;color:#46556b}.formgrid .field{width:100%}.wide{grid-column:1/-1}.modalback{position:fixed;inset:0;background:#13203888;display:flex;align-items:center;justify-content:center;padding:15px;z-index:20}.modal{background:white;width:min(640px,100%);max-height:90vh;overflow:auto;border-radius:17px;padding:22px}.modal h2{margin:0 0 17px}.timeline{border-left:2px solid #f9a57c;padding-left:18px;margin-left:5px}.timeline .item{position:relative}.timeline .item:before{content:"";position:absolute;width:9px;height:9px;background:#fa651f;border-radius:50%;left:-24px;top:17px}.empty{padding:26px;text-align:center;color:#8b97a8}.bottom{display:none}.notice{background:#fff4df;border:1px solid #f3dba3;color:#70511b;padding:12px 15px;border-radius:10px;margin-bottom:19px;font-size:13px}.bar{height:10px;background:#edf1f7;border-radius:20px;overflow:hidden;flex:1}.fill{height:100%;background:linear-gradient(90deg,#ff9c35,#ff671d)}.login{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(135deg,#fff7f1,#f0f4fc)}.loginbox{width:min(420px,100%);background:white;padding:32px;border-radius:20px;box-shadow:0 20px 60px #10213b16}.loginbox label{display:grid;gap:7px;margin:15px 0;font-size:13px;font-weight:700}.loginbox .field{width:100%}.split{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.hidden{display:none!important}@media(max-width:900px){.side{width:175px}.main{padding:22px 17px 90px}.cards{grid-template-columns:repeat(2,1fr)}.grid2{grid-template-columns:1fr}}@media(max-width:640px){.side{display:none}.main{padding:18px 12px 105px}.top h1{font-size:22px}.cards{gap:9px}.card,.panel{padding:14px}.card .num{font-size:27px}.grid2{gap:10px;margin-top:10px}.bottom{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:10;background:white;border-top:1px solid #e5eaf1;padding:7px 4px max(9px,env(safe-area-inset-bottom));justify-content:space-around}.bottom button{border:0;background:transparent;color:#7a8797;font-size:11px;padding:8px 5px}.bottom button.active{color:#f46b25;font-weight:800}.formgrid{grid-template-columns:1fr}.wide{grid-column:auto}}

.nav button{display:flex;align-items:center;gap:10px;font-size:13px}.nav .navicon{width:21px;text-align:center;font-size:16px}.side{width:238px}.main{max-width:none}.cards{grid-template-columns:repeat(5,minmax(0,1fr))}.card{min-height:108px}.card .num{font-size:29px}.dashboard-charts{display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:15px;margin-top:17px}.chart-panel{min-width:0}.funnel{display:flex;flex-direction:column;align-items:center;gap:4px;padding:5px 0}.funnel-row{display:flex;align-items:center;gap:12px;width:100%}.funnel-shape{height:30px;flex-shrink:0;clip-path:polygon(0 0,100% 0,88% 100%,12% 100%);border-radius:4px}.funnel-label{font-size:11px;color:#59677c;flex:1;white-space:nowrap}.funnel-label strong{color:#14253d;float:right}.donut-layout{display:flex;align-items:center;gap:15px;justify-content:center;flex-wrap:wrap}.donut{width:176px;height:176px;border-radius:50%;position:relative;flex-shrink:0}.donut:after{content:'';position:absolute;inset:35px;background:white;border-radius:50%}.donut-center{position:absolute;inset:45px;z-index:1;display:flex;align-items:center;justify-content:center;flex-direction:column;font-weight:800;font-size:25px}.donut-center small{font-size:10px;color:#75849a;font-weight:500}.legend{display:grid;gap:10px;min-width:130px}.legend-row{display:flex;gap:8px;align-items:center;font-size:12px}.dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.actionlist .item{display:flex;justify-content:space-between;align-items:center;gap:8px}.actionlist .item .btn{white-space:nowrap}.sectionbar{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:15px}.mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.projectbox{border:1px solid #e9edf3;border-radius:13px;padding:18px;background:#fff}.projectbox h3{margin:0 0 7px}.projectbox p{margin:7px 0}.mobilemore{display:none}.empty-note{border:1px dashed #d8e0eb;border-radius:12px;padding:22px;color:#7b879a;text-align:center}.filterchip{border:1px solid #e4e8ee;border-radius:18px;padding:7px 11px;background:white;font-size:12px;cursor:pointer}.filterchip.active{background:#fff0e8;border-color:#ffb88f;color:#dc5b18}.settingsrow{padding:16px 0;border-bottom:1px solid #edf0f4}.settingsrow b{display:block;margin-bottom:4px}.footerline{font-size:11px;color:#9ba6b7;margin-top:20px}
@media(max-width:1200px){.dashboard-charts{grid-template-columns:1fr 1fr}.actionlist{grid-column:1/-1}.cards{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.side{width:185px}.cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.cards{grid-template-columns:repeat(2,1fr)}.dashboard-charts{grid-template-columns:1fr}.actionlist{grid-column:auto}.bottom button{min-width:50px}.bottom{gap:1px}.mobilemore{display:block}.donut{width:150px;height:150px}.donut:after{inset:30px}.donut-center{inset:38px}.top{align-items:flex-start}.top .row{flex-wrap:wrap;justify-content:flex-end}.panel h3{font-size:15px}}

.alert{padding:12px;border-radius:10px;background:#fff3e8;margin:12px 0}.error{background:#ffeded;color:#9d2525}.ok{background:#e8f7ec;color:#176a37}.action{display:flex;gap:8px;flex-wrap:wrap}.chartrow{display:flex;align-items:center;gap:8px;margin:7px 0}.chartrow .bar{max-width:190px}.loginbox{max-width:480px}.subheading{font-size:12px;letter-spacing:2px;color:#8a98a9}.statusline{margin:12px 0}.modalback{z-index:40}
