:root{font-family:Inter,Arial,Helvetica,sans-serif;color:#172239;background:#f4f6fb;font-size:16px;font-synthesis:none;--blue:#234ee8;--ink:#142136;--muted:#697589;--line:#e3e8f0;--surface:#fff;--radius:12px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #90acff;outline-offset:3px}button{border:0}h1,h2,h3,p{margin-top:0}h1{font-size:2rem;letter-spacing:-.055rem;line-height:1.2;margin-bottom:12px}h2{font-size:1.125rem;line-height:1.4;margin-bottom:18px}h3{font-size:1rem;line-height:1.4}p{line-height:1.6}small{font-size:.8125rem;line-height:1.6}.muted{color:var(--muted)}.eyebrow{font-size:.75rem;letter-spacing:.12em;font-weight:700;color:#7d8798;display:block;margin-bottom:12px}.sidebar{position:fixed;inset:0 auto 0 0;width:244px;background:#111f38;color:#ecf2ff;padding:32px 18px;display:flex;flex-direction:column;z-index:10}.wordmark{font-size:2rem;letter-spacing:-.07em;font-weight:800;color:inherit;text-decoration:none;display:block;padding-left:14px}.wordmark span{font-size:.875rem;letter-spacing:.04em;font-weight:400;color:#9baecf}.workspace-label{font-size:.75rem;letter-spacing:.14em;color:#7f93b5;margin:42px 16px 16px}.nav-item{background:none;color:#b5c3db;display:flex;align-items:center;gap:14px;width:100%;text-align:left;padding:14px 16px;border-radius:8px;margin:3px 0;font-size:.9375rem}.nav-item>span{font-size:1.25rem;width:20px;line-height:1}.nav-item.active{background:#254cdd;color:#fff}.nav-item:hover:not(.active){background:#1e2f4d;color:white}.nav-item small{margin-left:auto}.side-bottom{margin-top:auto;display:flex;gap:10px;align-items:center;border-top:1px solid #2a3850;padding:22px 5px 0;font-size:.8125rem}.side-bottom small{display:block;color:#8da0bf;font-size:.75rem}.avatar{width:36px;height:36px;flex-shrink:0;border-radius:50%;background:#334968;display:grid;place-items:center}.workspace{margin-left:244px}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 36px;background:white;border-bottom:1px solid var(--line);font-size:.875rem}.topbar>div{display:flex;align-items:center;gap:20px}.slash{color:#a0adbf;margin:0 10px}.topdate{color:var(--muted)}.notice{padding:10px 36px;background:#edf1ff;color:#4c60a3;font-size:.8125rem;display:flex;justify-content:space-between;gap:16px}.notice span{white-space:nowrap}main{padding:32px 36px 12px;max-width:1680px;margin:auto;min-height:75vh}footer{padding:20px 36px;color:#768095;font-size:.75rem;display:flex;justify-content:space-between;gap:16px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}.page-heading p{margin:0}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.primary,.secondary,.white-button{border-radius:7px;padding:11px 16px;line-height:1.4;font-size:.875rem;font-weight:600;transition:background .15s}.primary{background:var(--blue);color:white}.primary:hover{background:#163bcc}.secondary{background:#fff;color:#30415e;border:1px solid #dbe2ec}.secondary:hover{background:#f0f3f8}.white-button{background:white;color:#2347ce}.text-button{color:var(--blue);background:none;padding:7px 0;font-size:.875rem;line-height:1.5}.text-button:hover{text-decoration:underline}.full{width:100%}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:34px}.stat{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:22px;min-width:0}.stat>span{font-size:.875rem;color:#6c778a}.stat>strong{font-size:2.35rem;font-weight:600;letter-spacing:-.04em;display:block;margin:20px 0 12px;overflow-wrap:anywhere}.stat strong small{font-size:.875rem;color:#8a94a5;font-weight:400;letter-spacing:0;margin-left:8px}.stat .amount{font-size:1.6rem;letter-spacing:-.025em;line-height:1.85}.stat p{font-size:.8125rem;color:#8892a3;margin:0}.stat.accent{background:#eaf0ff;border-color:#d8e2fe}.stat.accent strong{color:#234ee8}.section-heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 16px;gap:16px}.section-heading h2{margin:0}.table-wrap{overflow:auto;background:white;border:1px solid var(--line);border-radius:var(--radius)}table{width:100%;border-collapse:collapse;text-align:left;font-size:.875rem}th{padding:16px 18px;font-size:.8125rem;color:#7d8796;background:#fcfdff;font-weight:500;white-space:nowrap}td{padding:20px 18px;border-top:1px solid #edf0f6;line-height:1.5}td small{display:block;color:#8a94a5}td strong{font-weight:600;white-space:nowrap}.right{text-align:right}.order-link{display:block;background:none;text-align:left;color:#23324a;line-height:1.5;padding:0;min-width:170px;font-size:.875rem;font-weight:600}.order-link small{font-size:.75rem;font-weight:400;color:#8a94a5;margin-bottom:4px}.order-link:hover{color:var(--blue)}.badge{display:inline-block;border-radius:5px;padding:5px 8px;font-size:.8125rem;white-space:nowrap}.badge.blue{background:#eaf0ff;color:#4165cb}.badge.green{background:#e9f6ef;color:#2e8060}.badge.orange{background:#fff1e3;color:#a96b29}.badge.gray{background:#eff1f5;color:#778196}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}.panel{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:24px;margin-bottom:24px;min-width:0}.stage-summary>div{padding:14px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:.875rem}.stage-summary strong{font-size:1rem}.activity>div{display:flex;gap:12px}.activity p{font-size:.875rem;margin-bottom:12px}.activity small{display:block;color:#8993a2}.activity-dot{width:7px;height:7px;background:#8ba6ed;border-radius:50%;display:inline-block;flex-shrink:0;margin-top:8px}.filterbar{display:flex;gap:12px;margin-bottom:20px}.filterbar input{max-width:420px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:18px;min-width:0}.field>span{font-size:.875rem;color:#506079}input,textarea,select{width:100%;padding:11px 12px;background:#fff;border:1px solid #d7dfeb;border-radius:7px;color:#25324b;min-width:0;line-height:1.4}textarea{resize:vertical;min-height:90px}input[readonly]{background:#f2f4f8}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.form-section{margin-top:20px;border-top:1px solid var(--line);padding-top:24px}.form-error{color:#bc3347;font-size:.875rem;white-space:pre-wrap}.form-error:empty{display:none}.overdue{color:#bc4655!important}.empty{text-align:center;background:white;border:1px dashed #d7dfeb;border-radius:10px;padding:40px 24px;color:#768095}.empty-icon{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#edf2ff;color:#6583db;font-size:1.5rem;margin-bottom:12px}.empty p{font-size:.875rem}.panel .empty{border:none;padding:20px}.kanban{display:grid;gap:16px;align-items:start;overflow:auto;padding-bottom:18px}.crm-board{grid-template-columns:repeat(5,minmax(205px,1fr))}.production-board{grid-template-columns:repeat(4,minmax(220px,1fr))}.lane{background:#edf0f6;border-radius:10px;padding:14px;min-height:320px}.lane>h2{font-size:.875rem;display:flex;justify-content:space-between;margin:4px 2px 18px}.lane>h2 span{font-size:.75rem;background:#dfe5ef;color:#64728b;padding:1px 6px;border-radius:4px}.kanban-card{background:#fff;border:1px solid #e0e6ef;box-shadow:0 2px 3px #1a294507;border-radius:8px;padding:18px;margin-bottom:12px}.kanban-card>small{color:#8390a3;font-size:.75rem;display:block;margin-bottom:8px}.kanban-card h3{margin-bottom:12px}.kanban-card h3 button{text-align:left;color:#1c2e4a;font-weight:600;font-size:1rem;padding:0}.kanban-card>strong{font-size:1.125rem}.kanban-card p{font-size:.875rem;color:#748095;margin:12px 0}.kanban-card select{font-size:.8125rem;padding:7px;margin:8px 0}.lane-empty{font-size:.8125rem;text-align:center;color:#96a0b0;margin-top:30px}.card-metrics{display:flex;justify-content:space-between;gap:10px;font-size:.8125rem;margin:20px 0}.client-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.client-card{margin:0}.client-initial{display:grid;place-items:center;width:44px;height:44px;border-radius:10px;background:#eaf0ff;color:#4a6fce;font-weight:700;margin-bottom:20px}.client-card h2{margin-bottom:8px}.client-card p{font-size:.875rem;overflow-wrap:anywhere}.client-foot{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:14px;margin-top:20px;font-size:.875rem;color:#7f8b9f;align-items:center}.process-steps{display:flex;gap:16px;flex-wrap:wrap;padding:22px 0;border-top:1px solid #e3e8f0;border-bottom:1px solid #e3e8f0;margin-bottom:28px}.process-steps>div{font-size:.8125rem;color:#909baa;display:flex;align-items:center;gap:7px}.process-steps span{display:inline-grid;place-items:center;width:25px;height:25px;background:#e6eaf2;border-radius:50%;font-size:.75rem}.process-steps .passed{color:#3158c5}.process-steps .passed span{background:#dfe8ff;color:#3158c5}dl{margin:0 0 20px}dl>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid #eff2f6;font-size:.875rem}dt{color:#7b8699}dd{margin:0;text-align:right;font-weight:600}.note-block{padding:16px;background:#f4f6fb;font-size:.875rem;line-height:1.6;border-radius:8px;margin-top:20px;white-space:pre-wrap}.timeline article{display:flex;gap:16px;margin-bottom:18px}.timeline p{font-size:.875rem;margin:8px 0 2px}.timeline small{color:#8a96a8}.task{display:flex;gap:16px;padding:20px 0;border-bottom:1px solid var(--line);cursor:pointer}.task:last-child{border:0}.task input{width:20px;height:20px;accent-color:var(--blue)}.task small{display:block;color:#8c96a6;margin-top:5px}.task.done>span{text-decoration:line-through;color:#98a1ae}.task-list{max-width:1000px}.calc-layout{display:grid;grid-template-columns:minmax(330px,.95fr) minmax(340px,1.05fr);gap:24px;align-items:start}.result-empty h2{font-size:2rem;letter-spacing:-.04em;line-height:1.3;margin:22px 0}.result-empty p{color:#8490a4;font-size:.875rem}.dimension-sample{font-size:1.8rem;font-weight:600;padding:28px 0;color:#244bd2;letter-spacing:-.02em}.dimension-sample span{font-weight:300;color:#b4c3ed}.dimension-sample small{display:block;color:#8292b5;letter-spacing:0;font-weight:400;margin-top:8px}.warning{font-size:.8125rem;line-height:1.65;color:#8a7048;background:#fff8e9;border-left:3px solid #e9cc8b;padding:12px 14px;border-radius:0 5px 5px 0;margin:18px 0 0}.price-panel{background:#234ee8;border-radius:12px;padding:28px;color:white;margin-bottom:24px}.price-panel .eyebrow{color:#c3cfff}.price-panel>strong{font-size:2.6rem;letter-spacing:-.04em;font-weight:600;display:block;overflow-wrap:anywhere}.price-panel p{color:#bdccff;margin:10px 0 24px}.compact th,.compact td{padding:12px 10px;font-size:.8125rem}.material-total{display:flex;flex-wrap:wrap;gap:12px;color:#7c8ba3;font-size:.8125rem}.docs-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:24px;align-items:start}.template-item{background:none;display:block;text-align:left;width:100%;padding:14px 10px;border-radius:6px;margin:6px 0;color:#586b87;font-size:.875rem;line-height:1.5}.template-item small{display:block;font-size:.75rem;color:#93a0b4}.template-item.selected{background:#edf2ff;color:#254dd0}.code-text,.version-text{font-family:ui-monospace,monospace;font-size:.875rem;line-height:1.75;white-space:pre-wrap}.tokens{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:16px}.token{font-family:monospace;font-size:.8125rem;color:#4568bc;background:#edf2ff;border-radius:4px;padding:7px}.template-tools>p{font-size:.8125rem}.template-tools .field{margin:0;flex:1;max-width:280px}.document-list>div{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0;border-top:1px solid var(--line)}.document-list strong{font-size:.875rem}.document-list small{display:block;color:#8c98ab;margin-top:5px}dialog{border:1px solid #e2e8f1;border-radius:14px;padding:26px;width:min(620px,calc(100% - 32px));max-height:90vh;color:#26364e;box-shadow:0 25px 100px #1123423b}dialog::backdrop{background:#11234166;backdrop-filter:blur(3px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.dialog-head h2{margin:0}.close-button{background:#f1f4f9;border-radius:50%;width:32px;height:32px;font-size:1.5rem;color:#70839f}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.doc-paper{border:1px solid #e0e5ed;padding:24px;background:white}.doc-paper pre{white-space:pre-wrap;font:1rem/1.8 Georgia,serif;overflow-wrap:anywhere}.version-text{background:#f6f8fc;padding:20px}.login{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.login-brand{background:#173ac0;color:white;padding:60px 70px;position:relative}.login-brand .wordmark{padding:0}.login-brand h1{font-size:3.4rem;line-height:1.14;letter-spacing:-.12rem;margin-top:110px}.login-brand p{color:#b9c8ff}.login-bottom{margin-top:100px;color:#98b0fa;font-size:.8125rem}.login-form{display:grid;place-items:center;background:#fff;padding:40px}.login-form form{width:100%;max-width:370px}.login-form h2{font-size:1.75rem}.login-form p{font-size:.875rem;margin-bottom:30px}.login-form .primary{width:100%;margin-top:10px;padding:14px}.loading{display:grid;place-items:center;min-height:90vh;color:#5e78b7}#toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%) translateY(100px);background:#173253;color:white;border-radius:9px;padding:14px 24px;box-shadow:0 10px 30px #13244033;transition:transform .2s;z-index:100;max-width:90vw;font-size:.875rem}#toast.show{transform:translateX(-50%) translateY(0)}#toast.error{background:#9b3244}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(min-width:1600px){main{padding-top:42px}.stats{gap:24px}.stat{padding:28px}.stat strong{font-size:2.8rem}.stat .amount{font-size:2rem}}
@media(max-width:1200px){.sidebar{width:210px;padding-inline:12px}.workspace{margin-left:210px}main{padding:26px 24px}.topbar,.notice{padding-left:24px;padding-right:24px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.docs-layout{grid-template-columns:190px minmax(0,1fr)}.calc-layout{grid-template-columns:1fr 1fr}.topdate{display:none}.notice{font-size:.75rem}}
@media(max-width:900px){.sidebar{position:relative;width:100%;padding:18px 20px;display:block}.wordmark{font-size:1.6rem;padding:0}.workspace-label,.side-bottom{display:none}.sidebar nav{display:flex;overflow:auto;gap:6px;margin-top:18px}.nav-item{white-space:nowrap;width:auto;padding:10px 13px}.nav-item span{display:none}.workspace{margin:0}.topbar{height:60px}.notice{flex-wrap:wrap;gap:4px}.page-heading{align-items:flex-start}.two-cols,.calc-layout,.docs-layout{grid-template-columns:1fr}.template-list{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.template-list h2{width:100%}.template-item{width:auto}.page-heading .actions{justify-content:flex-end}.login-brand{padding:40px}.login-brand h1{font-size:2.5rem}.process-steps{gap:12px}.client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){main{padding:24px 16px}.topbar,.notice{padding-inline:16px}.topbar>div{gap:12px}.topbar>span{font-size:.8125rem}.page-heading{display:block}.page-heading .actions{justify-content:flex-start;margin-top:18px}h1{font-size:1.7rem}.stats{gap:10px}.stat{padding:16px}.stat>strong{font-size:2rem}.stat .amount{font-size:1.25rem;line-height:2.5}.stat strong small{display:block;margin:0}.stat p{font-size:.75rem}.panel{padding:18px}.client-grid{grid-template-columns:1fr}.form-grid{gap:0 12px}.field>span{font-size:.8125rem}.login{display:block}.login-brand{padding:24px}.login-brand h1,.login-brand p,.login-bottom{display:none}.login-form{padding:48px 24px}.price-panel>strong{font-size:2.2rem}footer{padding:20px 16px;display:block}footer span{display:block;margin-top:8px}.dialog-head h2{font-size:1rem}dialog{padding:20px}.process-steps>div{font-size:.75rem}}
@media print{body.printing{background:white}body.printing #app,body.printing #toast,body.printing .dialog-head,body.printing .dialog-actions{display:none!important}body.printing dialog{display:block!important;position:static;max-height:none;overflow:visible;border:none;box-shadow:none;width:100%;padding:0;margin:0}body.printing dialog::backdrop{display:none}.doc-paper{border:none;padding:0}.doc-paper pre{font-size:12pt;line-height:1.6}@page{size:A4;margin:20mm}}
