:root{--brand:#f26722;--brand2:#ff8a45;--navy:#10243e;--navy2:#17375f;--ink:#172033;--muted:#6b7789;--line:#e7ebf1;--bg:#f5f7fb;--card:#fff;--green:#159447;--red:#d83b3b;--orange:#e87916;--blue:#2f74c0;--shadow:0 10px 30px rgba(20,34,55,.07)}
*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--ink);font-size:14px;line-height:1.5}a{color:#2d6fb1;text-decoration:none}a:hover{text-decoration:none}.topbar{position:fixed;left:0;top:0;bottom:0;width:250px;background:linear-gradient(180deg,#0d223b 0%,#142f50 100%);color:#fff;padding:24px 16px;z-index:20;box-shadow:8px 0 30px rgba(15,35,60,.08)}.brand{display:flex;align-items:center;gap:11px;font-weight:800;font-size:18px;letter-spacing:-.2px;padding:4px 12px 28px}.brand-mark{width:40px;height:40px;border-radius:12px;background:#fff;display:grid;place-items:center;overflow:hidden;box-shadow:0 5px 18px rgba(0,0,0,.12)}.brand-mark img{width:32px;height:auto}.brand-copy small{display:block;color:#aebed2;font-size:10px;font-weight:600;margin-top:1px}.topbar nav{display:flex;flex-direction:column;gap:6px}.topbar nav a{color:#cbd8e8;padding:11px 12px;border-radius:10px;font-weight:600;display:flex;align-items:center;gap:10px}.topbar nav a:hover,.topbar nav a.active{background:rgba(255,255,255,.1);color:#fff}.nav-section{padding:18px 12px 7px;color:#7f96b0;text-transform:uppercase;font-size:10px;font-weight:800;letter-spacing:1px}.nav-bottom{position:absolute;bottom:18px;left:16px;right:16px}.user-chip{padding:11px 12px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.05);margin-bottom:8px}.user-chip b{display:block;font-size:13px}.user-chip small{color:#9fb1c8}.badge-count{margin-left:auto;background:var(--brand);color:#fff;border-radius:99px;min-width:21px;height:21px;padding:0 6px;display:inline-grid;place-items:center;font-size:11px;font-weight:800}.container{margin-left:250px;padding:34px 38px 48px;max-width:calc(100% - 250px);min-height:100vh}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:26px}.page-head h1{font-size:29px;line-height:1.15;margin:0 0 7px;letter-spacing:-.7px}.page-head p{margin:0;color:var(--muted)}.eyebrow{color:var(--brand);font-weight:800;text-transform:uppercase;letter-spacing:1px;font-size:11px;margin-bottom:7px}.cards{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:14px;margin-bottom:22px}.card,.panel{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.stat{padding:18px;position:relative;overflow:hidden}.stat:after{content:"";position:absolute;right:-28px;top:-28px;width:90px;height:90px;border-radius:50%;background:rgba(242,103,34,.07)}.stat div{color:var(--muted);font-size:12px;font-weight:700}.stat strong{display:block;font-size:28px;margin-top:7px;letter-spacing:-.8px}.panel{padding:22px;margin-bottom:20px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:15px}.panel-head h2,.panel h2{font-size:17px;margin:0;letter-spacing:-.2px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px}table{width:100%;border-collapse:separate;border-spacing:0;min-width:760px;background:#fff}th{background:#f8fafc;color:#667489;text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.55px;padding:13px 14px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:14px;border-bottom:1px solid #eef1f5;color:#263449;vertical-align:middle}tbody tr:hover{background:#fbfcfe}tbody tr:last-child td{border-bottom:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #d8dee7;background:#fff;color:#263449;border-radius:9px;padding:9px 14px;font-weight:700;font-size:13px;cursor:pointer;transition:.15s}.btn:hover{transform:translateY(-1px);box-shadow:0 5px 12px rgba(20,34,55,.08)}.btn-orange{background:var(--brand);border-color:var(--brand);color:#fff}.btn-orange:hover{background:#e95b14;color:#fff}.btn-green{background:var(--green);border-color:var(--green);color:#fff}.btn-red{background:var(--red);border-color:var(--red);color:#fff}.btn-small{padding:6px 9px;font-size:12px}.full{width:100%}.form{max-width:1000px}.form.narrow{max-width:620px}.form label{display:block;font-weight:700;color:#2a374a;font-size:13px}.form input,.form select,.form textarea,input,select,textarea{font:inherit;width:100%;margin-top:7px;border:1px solid #d7dee8;border-radius:10px;padding:11px 12px;background:#fff;color:#182235;outline:none;transition:.15s}.form input:focus,.form select:focus,.form textarea:focus,input:focus,select:focus,textarea:focus{border-color:#f28a56;box-shadow:0 0 0 3px rgba(242,103,34,.1)}.form textarea{resize:vertical;min-height:100px}.form input[readonly],.form input:disabled{background:#f7f9fb;color:#68778b}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.span-2{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:10px;margin-bottom:16px}.filters input,.filters select{margin:0}.badge{display:inline-flex;align-items:center;gap:5px;border-radius:99px;padding:5px 9px;font-size:11px;font-weight:800;white-space:nowrap}.badge-gray{background:#eef1f5;color:#667184}.badge-orange{background:#fff1e7;color:#b95513}.badge-green{background:#eaf8ef;color:#18783b}.badge-red{background:#ffeded;color:#b52b2b}.badge-blue{background:#eaf2fb;color:#28629b}.alert{padding:13px 15px;border-radius:11px;margin-bottom:18px;border:1px solid}.alert-success{background:#ecf9f0;color:#176d35;border-color:#ccebd5}.alert-error{background:#fff0f0;color:#a32323;border-color:#f3cccc}.report-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:22px}.report-meta>div{background:#f8fafc;border:1px solid var(--line);padding:14px;border-radius:11px}.report-meta b{display:block;color:#778398;font-size:10px;text-transform:uppercase;letter-spacing:.6px;margin-bottom:4px}.report-meta span{font-weight:700}.panel section{padding:20px 0;border-top:1px solid var(--line)}.panel section:first-of-type{border-top:0}.panel section h2{color:#215b91;margin-bottom:10px}.pre{white-space:pre-wrap;margin:0;color:#3d495a}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-top:14px}.photo-grid img{width:100%;height:160px;object-fit:cover;border-radius:10px;border:1px solid var(--line);background:#f4f6f8}.why{padding-left:20px;margin:0}.why li{padding:8px 0;border-bottom:1px dashed #e4e8ee}.timeline{display:grid;gap:0;margin-top:20px}.timeline>div{position:relative;padding:0 0 18px 24px;border-left:2px solid #e8edf3;margin-left:5px}.timeline>div:before{content:"";position:absolute;left:-6px;top:2px;width:9px;height:9px;border-radius:50%;background:var(--brand)}.timeline small{display:block;color:#8490a0;margin-top:2px}.timeline p{margin:4px 0 0;color:#5d6979}.signature-preview{max-width:260px;max-height:90px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px}.login-bg{min-height:100vh;background:radial-gradient(circle at 15% 15%,rgba(242,103,34,.16),transparent 28%),linear-gradient(135deg,#eef3f8,#f9fbfd);display:grid;place-items:center;padding:25px}.login-card{width:min(430px,100%);background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 70px rgba(20,34,55,.13);padding:34px}.login-card .brand{padding:0 0 24px;color:var(--navy);font-size:20px}.login-card h1{font-size:28px;margin:0 0 7px}.login-card p{color:var(--muted)}.login-card form{display:grid;gap:15px}.login-card label{font-weight:700;font-size:13px}.login-card input{margin-top:7px}.login-brand{display:flex;align-items:center;gap:12px;margin-bottom:28px}.login-brand img{width:54px;height:54px;object-fit:contain}.empty{padding:35px;text-align:center;color:var(--muted)}footer{margin-left:250px;padding:0 38px 25px;color:#8a95a4;font-size:12px}.install-wrap{min-height:100vh;background:linear-gradient(135deg,#f2f6fa,#fff);padding:50px 20px}.install-card{max-width:900px;margin:auto;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding:35px}.install-card h1{margin:0;color:var(--navy)}
@media(max-width:1200px){.cards{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.topbar{position:relative;width:100%;height:auto;padding:12px}.topbar nav{display:grid;grid-template-columns:repeat(3,1fr)}.nav-bottom{position:static;margin-top:10px}.container{margin-left:0;max-width:none;padding:24px 18px}.cards{grid-template-columns:repeat(2,1fr)}footer{margin-left:0;padding:0 18px 25px}.report-meta{grid-template-columns:repeat(2,1fr)}.filters{grid-template-columns:1fr 1fr}.filters .btn{grid-column:1/-1}.grid-2{grid-template-columns:1fr}.span-2{grid-column:auto}}
@media(max-width:560px){.topbar nav{grid-template-columns:repeat(2,1fr)}.page-head{align-items:flex-start;flex-direction:column}.cards{grid-template-columns:1fr 1fr}.report-meta{grid-template-columns:1fr}.filters{grid-template-columns:1fr}.filters .btn{grid-column:auto}.panel{padding:16px}.page-head h1{font-size:24px}}
.muted{color:var(--muted);margin:4px 0 0;font-size:12px}.req{color:var(--brand)}.form small{display:block;color:#8792a2;font-size:11px;margin-top:5px;font-weight:500}.upload-box{margin-top:15px;border:1.5px dashed #cbd4df;border-radius:13px;padding:17px;display:flex;align-items:center;gap:14px;background:#fafbfd}.upload-box input{max-width:330px;margin:0;margin-left:auto}.upload-icon{width:38px;height:38px;border-radius:10px;background:#fff0e8;color:var(--brand);display:grid;place-items:center;font-size:22px;font-weight:500}.why-field{display:block;margin-bottom:14px}.why-no{display:inline-block;color:#245d91;font-weight:800;font-size:12px;margin-bottom:4px}.submit-bar{position:sticky;bottom:15px;z-index:5;background:#122b49;color:#fff;border-radius:15px;padding:14px 17px;display:flex;align-items:center;justify-content:space-between;gap:20px;box-shadow:0 12px 35px rgba(10,28,48,.2)}.submit-bar span{display:block;color:#b7c6d8;font-size:11px;margin-top:2px}.submit-bar strong{color:#fff}.submit-bar .btn{flex:none}@media(max-width:700px){.upload-box{align-items:flex-start;flex-wrap:wrap}.upload-box input{width:100%;max-width:none;margin-left:0}.submit-bar{position:static;align-items:flex-start;flex-direction:column}}

.mt{margin-top:18px}.timeline-editor{display:grid;gap:10px}.timeline-row{display:grid;grid-template-columns:180px 1fr;gap:10px;padding:10px;border:1px solid var(--line);border-radius:10px;background:#fbfcfe}.timeline-row input,.timeline-row textarea,.factor-row input,.factor-row textarea{margin:0}.factor-editor{margin-top:16px;border:1px solid var(--line);border-radius:12px;overflow:hidden}.factor-head,.factor-row{display:grid;grid-template-columns:45px 135px 1fr;gap:0}.factor-head{background:#2f74b5;color:#fff;font-size:11px;text-transform:uppercase;font-weight:800;padding:10px}.factor-row{border-top:1px solid var(--line);padding:8px;align-items:center}.factor-row>span{font-weight:800;text-align:center;color:#526176}.factor-row input,.factor-row textarea{border-radius:7px;margin:0}.factor-row textarea{margin-left:8px;width:calc(100% - 8px)}
@media(max-width:700px){.timeline-row{grid-template-columns:1fr}.factor-head,.factor-row{grid-template-columns:35px 1fr}.factor-head span:last-child{grid-column:2}.factor-row textarea{grid-column:2;margin-left:0;width:100%;margin-top:7px}}
