:root{--blue:#2856aa;--blue-dark:#183b78;--blue-deep:#102b58;--yellow:#ffe100;--ink:#16191d;--muted:#6d7580;--line:#dfe4eb;--bg:#f4f6f9;--card:#fff;--success:#2f7654;--danger:#b14646;--shadow:0 18px 45px rgba(23,44,81,.09)}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select{font:inherit}a{color:var(--blue-dark);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer}.app{min-height:100vh;display:grid;grid-template-columns:248px minmax(0,1fr)}.sidebar{background:linear-gradient(180deg,var(--blue-deep),#132f61);padding:20px 16px;color:white;display:flex;flex-direction:column;gap:20px}.logo-panel{background:white;border-radius:14px;padding:8px;overflow:hidden;box-shadow:0 8px 26px rgba(0,0,0,.16)}.logo-panel img{display:block;width:100%;height:98px;object-fit:contain}.app-name{font-size:10px;text-transform:uppercase;letter-spacing:.11em;color:#9fb4db;padding:0 7px}nav{display:grid;gap:5px}.nav-btn{color:#c8d5ed;padding:11px 12px;border-radius:11px;font-weight:650;font-size:13px}.nav-btn:hover{background:rgba(255,255,255,.08);color:white;text-decoration:none}.side-bottom{margin-top:auto;font-size:10px;line-height:1.6;color:#9eb1d3;border-top:1px solid rgba(255,255,255,.12);padding:14px 8px 0}.content{min-width:0}.topbar{height:70px;background:rgba(255,255,255,.88);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 30px;color:var(--muted);font-size:12px}.topbar strong{color:var(--blue-dark)}.user,.actions{display:flex;align-items:center;gap:10px}.page{max-width:1380px;margin:0 auto;padding:28px 30px 42px}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:24px}.page-head h1{margin:0;font-size:29px;line-height:1.05;letter-spacing:-.035em}.page-head p{margin:7px 0 0;color:var(--muted);font-size:12px}.btn{display:inline-block;border:1px solid var(--line);background:white;color:var(--ink);border-radius:10px;padding:10px 14px;font-size:12px;font-weight:800;white-space:nowrap}.btn:hover{border-color:#bac5d2;text-decoration:none}.btn.primary{background:var(--blue);border-color:var(--blue);color:white;box-shadow:0 8px 18px rgba(40,86,170,.2)}.btn.small{padding:7px 11px;font-size:11px}.btn:disabled{opacity:.5;cursor:not-allowed}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:22px}.stat{display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;color:var(--ink);box-shadow:var(--shadow)}.stat:hover{text-decoration:none;border-color:#b8c9e4}.stat small{text-transform:uppercase;color:var(--muted);font-size:10px;letter-spacing:.08em;font-weight:800}.stat strong{font-size:36px;line-height:1;color:var(--blue-deep)}.stat span{font-size:11px;color:var(--muted)}.card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);margin-bottom:20px}.form-card{padding:24px}.card h2{font-size:17px;margin:0 0 14px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:12px}.section-head h2{margin:0}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}th{text-align:left;color:#657184;background:#f8fafc;font-size:10px;text-transform:uppercase;letter-spacing:.06em;padding:12px 16px}td{padding:14px 16px;border-top:1px solid #edf0f4}tbody tr:hover{background:#fafbfd}.badge{display:inline-block;border-radius:30px;padding:5px 9px;font-size:10px;font-weight:750}.badge.done{color:#2b7653;background:#eaf5ee}.badge.open{color:#876900;background:#fff8cb}.badge.muted{color:#637084;background:#eef1f5}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid label,.price-list label,.section-head label,.login-card label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:800;color:#455064}.form-grid input,.form-grid select,.price-list input,.section-head input,.login-card input,.article-row input{width:100%;border:1px solid #cfd7e2;background:#fff;border-radius:9px;padding:10px 11px;min-height:39px;color:var(--ink);outline:none}.form-grid input:focus,.form-grid select:focus,.price-list input:focus,.article-row input:focus,.login-card input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2856aa20}.actions{justify-content:flex-end;margin-top:20px}.details-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:18px}dl{display:grid;grid-template-columns:135px 1fr;gap:12px;font-size:12px}dt{font-weight:800;color:var(--muted)}dd{margin:0}.muted{color:var(--muted);font-size:12px}.price-list{display:grid;gap:10px;margin:18px 0}.price-list label{display:grid;grid-template-columns:1fr 100px 130px;align-items:center;gap:8px}.price-list small{color:var(--muted);font-weight:400}.work-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:18px;align-items:start}.work-grid .summary{position:sticky;top:20px}.article-list{display:grid;gap:8px}.article-row{display:grid;grid-template-columns:1fr 110px;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}.article-row small{display:block;margin-top:4px;color:var(--muted)}.summary-total,.totals>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-top:1px solid var(--line)}.summary-total strong,.totals .grand{color:var(--blue-dark)}.summary small{font-size:10px;color:var(--muted)}.totals{max-width:300px;margin:20px 0 20px auto;font-size:12px}.totals .grand{font-size:16px;font-weight:800;border-top:2px solid var(--blue)}.chips{display:flex;flex-wrap:wrap;gap:8px}.chips a{padding:8px 11px;border-radius:8px;background:#edf3fc;font-size:11px}.alert{padding:12px 14px;border-radius:9px;margin-bottom:16px;font-size:12px;background:#edf3fc;color:var(--blue-dark)}.alert.error{background:#fff0ee;color:#9f3030}.alert.success{background:#eaf5ee;color:#2b7653}.narrow{max-width:600px}.login-body{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#102b58,#2856aa)}.login-card{width:min(420px,calc(100% - 30px));background:white;padding:35px;border-radius:20px;box-shadow:0 25px 70px #06152c55}.login-card img{width:190px;display:block;margin-bottom:18px}.login-card .app-name{color:var(--blue)}.login-card h1{font-size:25px;margin:18px 0 8px}.login-card p{color:var(--muted);font-size:13px;line-height:1.5}.login-card form{display:grid;gap:17px;margin-top:25px}.login-card button{width:100%}@media(max-width:950px){.app{grid-template-columns:200px minmax(0,1fr)}.details-grid,.work-grid{grid-template-columns:1fr}.summary{position:static!important}}@media(max-width:680px){.app{display:block}.sidebar{padding:10px;display:block}.logo-panel,.app-name,.side-bottom{display:none}nav{display:flex;overflow:auto}.nav-btn{white-space:nowrap;padding:10px 8px;font-size:11px}.topbar{height:55px;padding:0 14px}.page{padding:20px 13px}.page-head h1{font-size:24px}.stats{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.page-head{flex-wrap:wrap}.price-list label{grid-template-columns:1fr 110px}.price-list small{display:none}}
