:root{--navy:#16253a;--navy2:#20344f;--orange:#f58a07;--bg:#f3f5f8;--text:#1d2939;--muted:#667085;--border:#dfe4ea;--green:#168653;--yellow:#d49b05;--red:#c93636;--gray:#77808c;--white:#fff}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--text);background:var(--bg)}a{color:inherit}.app-shell{min-height:100vh;display:grid;grid-template-columns:245px 1fr}.sidebar{background:linear-gradient(180deg,var(--navy),#101b2b);color:#fff;padding:22px 16px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:12px;padding:4px 8px 25px}.brand-mark{width:42px;height:42px;border-radius:12px;background:var(--orange);display:grid;place-items:center;font-weight:900;font-size:19px}.brand-logo-wrap{width:54px;height:54px;border-radius:13px;background:#fff;display:grid;place-items:center;overflow:hidden;flex:0 0 54px;box-shadow:0 5px 16px rgba(0,0,0,.16)}.brand-logo{display:block;width:100%;height:100%;object-fit:contain;padding:3px}.logo-fallback{display:none}.brand strong{display:block}.brand small{color:#aebcd0}.nav{display:flex;flex-direction:column;gap:7px}.nav a,.logout-btn{display:flex;align-items:center;gap:10px;text-decoration:none;color:#cbd5e1;border-radius:10px;padding:11px 12px;font-size:14px;border:0;background:transparent;width:100%;cursor:pointer;text-align:left}.nav a:hover,.nav a.active,.logout-btn:hover{background:rgba(255,255,255,.1);color:#fff}.nav .ico{width:23px;text-align:center}.sidebar-foot{position:absolute;left:16px;right:16px;bottom:18px}.user-chip{padding:12px;border-radius:10px;background:rgba(255,255,255,.07);margin-bottom:8px}.user-chip strong,.user-chip small{display:block;overflow:hidden;text-overflow:ellipsis}.user-chip small{color:#aebcd0;margin-top:3px}.main{min-width:0}.topbar{background:#fff;border-bottom:1px solid var(--border);height:68px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:10}.topbar h1{font-size:20px;margin:0}.topbar .date{font-size:13px;color:var(--muted)}.content{padding:28px;max-width:1500px;margin:0 auto}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:22px}.page-head h2{margin:0 0 5px;font-size:24px}.page-head p{margin:0;color:var(--muted)}.actions{display:flex;gap:9px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--orange);color:#fff;text-decoration:none;border:0;border-radius:9px;padding:10px 15px;font-weight:700;font-size:14px;cursor:pointer}.btn:hover{filter:brightness(.96)}.btn.secondary{background:#fff;color:var(--text);border:1px solid var(--border)}.btn.navy{background:var(--navy)}.btn.danger{background:var(--red)}.btn.small{padding:7px 10px;font-size:12px}.btn:disabled{opacity:.45;cursor:not-allowed}.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.stat-card,.card{background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 5px 18px rgba(23,36,55,.04)}.stat-card{padding:19px}.stat-card .label{color:var(--muted);font-size:13px}.stat-card .value{font-size:29px;font-weight:800;margin-top:6px}.stat-card .hint{font-size:12px;color:var(--muted);margin-top:4px}.card{padding:20px;margin-bottom:18px}.card-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.card-title h3{margin:0;font-size:17px}.table-wrap{overflow:auto;border:1px solid var(--border);border-radius:11px}.table{width:100%;border-collapse:collapse;background:#fff;font-size:13px}.table th{background:#f8fafc;color:#475467;font-weight:700;text-align:left;padding:11px 10px;border-bottom:1px solid var(--border);white-space:nowrap}.table td{padding:11px 10px;border-bottom:1px solid #edf0f3;vertical-align:top}.table tr:last-child td{border-bottom:0}.table .num{text-align:right;white-space:nowrap}.table .center{text-align:center}.muted{color:var(--muted)}.small{font-size:12px}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:800;background:#eef2f6;color:#475467}.badge.green{background:#e5f7ee;color:#147849}.badge.yellow{background:#fff4cc;color:#8a6500}.badge.orange{background:#ffead2;color:#a65000}.badge.red{background:#fde5e5;color:#9f2626}.badge.gray{background:#eceff3;color:#606a76}.alert{padding:13px 15px;border-radius:10px;margin-bottom:16px;border:1px solid transparent}.alert.success{background:#e6f7ee;color:#17613c;border-color:#bfe8d1}.alert.error{background:#fde8e8;color:#8e2626;border-color:#f5c8c8}.alert.warning{background:#fff4d9;color:#7c5900;border-color:#f2dda5}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.form-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}.field label{font-size:12px;font-weight:800;color:#475467}.field input,.field select,.field textarea,.table input,.table select{width:100%;border:1px solid #cfd6df;border-radius:8px;padding:9px 10px;background:#fff;color:var(--text);font:inherit}.field textarea{min-height:76px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus,.table input:focus,.table select:focus{outline:2px solid rgba(245,138,7,.2);border-color:var(--orange)}.dropzone{border:2px dashed #c9d1dc;border-radius:14px;padding:34px;text-align:center;background:#fafbfd}.dropzone input{max-width:420px}.help{color:var(--muted);font-size:12px;line-height:1.5}.kpi-row{display:flex;gap:12px;flex-wrap:wrap}.mini-kpi{padding:10px 13px;border-radius:9px;background:#f7f8fa;border:1px solid var(--border)}.mini-kpi strong{display:block;margin-top:3px}.analysis-item{border:1px solid var(--border);border-radius:14px;background:#fff;margin-bottom:18px;overflow:hidden}.analysis-head{padding:16px 18px;display:grid;grid-template-columns:55px minmax(250px,1fr) repeat(4,minmax(105px,auto));align-items:center;gap:14px;border-bottom:1px solid var(--border)}.analysis-head .item-no{width:38px;height:38px;border-radius:9px;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:800}.analysis-head .desc{font-weight:800}.analysis-body{padding:16px 18px}.reference-box{display:grid;grid-template-columns:1.4fr repeat(5,minmax(100px,1fr));gap:12px;padding:14px;border-radius:10px;background:#f8fafc;border:1px solid var(--border)}.reference-box .label{font-size:11px;color:var(--muted);text-transform:uppercase;font-weight:800}.reference-box .value{font-size:13px;font-weight:700;margin-top:4px}.candidate-list{margin-top:13px}.candidate{display:grid;grid-template-columns:65px minmax(230px,1fr) 120px 115px 130px 100px;gap:10px;align-items:center;padding:10px;border-top:1px solid #edf0f3;font-size:12px}.candidate:first-child{border-top:0}.score{font-weight:900;color:var(--navy)}details summary{cursor:pointer;font-weight:700;color:#344054}.note{margin-top:12px;padding:10px 12px;background:#fff8e8;border-left:4px solid var(--orange);font-size:12px}.sticky-actions{position:sticky;bottom:0;background:rgba(255,255,255,.96);backdrop-filter:blur(7px);padding:13px;border:1px solid var(--border);border-radius:12px;display:flex;justify-content:space-between;align-items:center;z-index:8;box-shadow:0 -8px 28px rgba(23,36,55,.08)}.totals-inline{display:flex;gap:18px}.totals-inline span{font-size:12px;color:var(--muted)}.totals-inline strong{display:block;color:var(--text);font-size:16px}.price-original{text-decoration:line-through;color:#8a94a3}.price-ref{color:var(--green);font-weight:800}.row-red{background:#fff8f8}.row-orange{background:#fffaf4}.row-yellow{background:#fffdf5}.row-green{background:#f6fdf9}.login-page{min-height:100vh;display:grid;grid-template-columns:1.15fr .85fr;background:#fff}.login-hero{background:linear-gradient(135deg,#102036,#213b5d);color:#fff;padding:64px;display:flex;flex-direction:column;justify-content:center}.login-hero .mark{width:70px;height:70px;background:var(--orange);border-radius:18px;display:grid;place-items:center;font-size:30px;font-weight:900}.login-brand-logo-wrap{width:190px;min-height:165px;display:flex;align-items:center;margin-bottom:25px}.login-brand-logo{display:block;width:190px;max-height:165px;object-fit:contain;background:#fff;border-radius:18px;padding:10px;box-shadow:0 14px 32px rgba(0,0,0,.18)}.login-hero h1{font-size:40px;margin:0 0 15px}.login-hero p{color:#c1ccda;max-width:570px;line-height:1.6}.login-points{display:grid;gap:12px;margin-top:25px}.login-points div{display:flex;gap:10px;color:#dce5f0}.login-form-wrap{display:flex;align-items:center;justify-content:center;padding:35px;background:#f7f8fa}.login-card{width:min(430px,100%);background:#fff;border:1px solid var(--border);border-radius:18px;padding:32px;box-shadow:0 18px 45px rgba(17,31,49,.1)}.login-card h2{margin:0 0 6px}.login-card p{margin:0 0 23px;color:var(--muted)}.login-card .field{margin-bottom:15px}.quote-toolbar{display:flex;gap:9px;justify-content:flex-end;margin-bottom:15px}@media(max-width:1100px){.grid-4{grid-template-columns:repeat(2,1fr)}.analysis-head{grid-template-columns:50px 1fr repeat(2,120px)}.reference-box{grid-template-columns:repeat(3,1fr)}.candidate{grid-template-columns:60px 1fr 110px 100px}.candidate>*:nth-child(5),.candidate>*:nth-child(6){display:none}}@media(max-width:820px){.app-shell{grid-template-columns:1fr}.sidebar{height:auto;position:relative}.sidebar-foot{position:relative;left:auto;right:auto;bottom:auto;margin-top:18px}.nav{display:grid;grid-template-columns:repeat(2,1fr)}.topbar{position:relative}.content{padding:18px}.grid-2,.form-grid,.form-grid.cols-3{grid-template-columns:1fr}.field.full{grid-column:auto}.analysis-head{grid-template-columns:45px 1fr}.analysis-head>*:nth-child(n+3){display:none}.reference-box{grid-template-columns:1fr 1fr}.login-page{grid-template-columns:1fr}.login-hero{display:none}.candidate{grid-template-columns:55px 1fr 95px}.candidate>*:nth-child(n+4){display:none}.sticky-actions{align-items:flex-start;gap:12px;flex-direction:column}.totals-inline{flex-wrap:wrap}}
.pricing-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 14px}.pricing-guide>div{padding:11px 12px;border:1px solid var(--border);border-radius:10px;background:#f8fafc}.pricing-guide strong{display:block;font-size:12px;margin-bottom:4px;color:var(--navy)}.pricing-guide span{display:block;font-size:11px;line-height:1.4;color:var(--muted)}.table input:disabled{background:#eef1f5;color:#98a2b3;cursor:not-allowed}.table input.calculated-field{background:#f4f8fc;font-weight:700;color:var(--navy)}.js-mode-help{margin-top:5px;line-height:1.35;max-width:180px}@media(max-width:900px){.pricing-guide{grid-template-columns:1fr}}
.role-chip{display:inline-flex;margin-top:8px;padding:3px 8px;border-radius:999px;background:rgba(245,138,7,.18);color:#ffd59b;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.auth-links{display:flex;justify-content:center;gap:7px;flex-wrap:wrap;margin-top:18px;font-size:13px;color:var(--muted)}.auth-links a{color:var(--orange);font-weight:800;text-decoration:none}.otp-input{text-align:center;font-size:28px!important;font-weight:900;letter-spacing:.35em;text-transform:uppercase;padding-left:calc(10px + .35em)!important}.user-chip .role-chip{width:max-content}.table form{margin:0}.table .actions form{display:inline-flex}.mail-status{display:flex;gap:8px;align-items:center}
