:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:#14243b;background:#f4f6fa;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}input,select,textarea{width:100%;border:1px solid #dbe2eb;background:#fff;border-radius:12px;padding:12px 13px;outline:none;color:#17263d;transition:border-color .16s}input:focus,select:focus,textarea:focus{border-color:#008b82;box-shadow:0 0 0 3px #b5ebe3}textarea{resize:vertical;min-height:85px}label{display:block;font-size:12px;color:#47576d;font-weight:650;margin:0 0 6px}.hidden{display:none!important}.startup{min-height:100vh;display:flex;gap:15px;align-items:center;justify-content:center;color:#607085}.spin{width:22px;height:22px;border:3px solid #d8e6e5;border-top-color:#008b82;border-radius:100%;animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-page{min-height:100vh;background:radial-gradient(1000px 650px at 85% -20%,#18476b,#11263e 60%,#0e1e31);display:flex;justify-content:center;align-items:center;padding:25px}.auth-card{width:100%;max-width:430px;background:#fff;border-radius:24px;padding:35px;box-shadow:0 16px 52px #071a3080}.auth-card h1{font-size:27px;letter-spacing:-.8px;margin:8px 0}.auth-card>p:not(.eyebrow):not(.small):not(.form-error){color:#66758a;line-height:1.55;margin:0 0 25px}.auth-card label{margin-top:17px}.logo-square,.brandmark{display:flex;align-items:center;justify-content:center;border-radius:15px;background:linear-gradient(145deg,#00a99d,#06766d);color:#fff;font-weight:950;letter-spacing:-1px}.logo-square{height:58px;width:58px;font-size:25px;margin-bottom:18px}.logo-square span,.brandmark span{color:#aff2e6}.eyebrow{font-size:10px;font-weight:850;letter-spacing:2px;color:#07938a;margin:0}.form-error{background:#ffeceb;color:#b23535;border-radius:10px;padding:10px 12px;font-size:13px;margin:15px 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:11px;padding:12px 16px;font-size:13px;font-weight:760;white-space:nowrap;transition:transform .1s,opacity .15s}.btn:active,.icon-btn:active{transform:scale(.98)}.btn-primary{background:#008d83;color:white;box-shadow:0 4px 13px #008d831d}.btn-primary:hover{background:#087e77}.btn-secondary{background:#edf2f6;color:#1b3550}.btn-danger{background:#fff0ef;color:#b83b3b}.btn-outline{background:#fff;border:1px solid #d7e0e8;color:#34465d}.btn-block{width:100%;margin-top:22px}.btn-sm{font-size:12px;padding:8px 11px}.small{font-size:12px}.center{text-align:center}.muted{color:#8190a2}.notice{background:#e8f6f3;padding:12px 14px;border-radius:12px;line-height:1.5;color:#1d645e;font-size:13px}.app{min-height:100vh}.topbar{height:81px;display:flex;justify-content:space-between;align-items:center;background:#112238;padding:0 max(28px,calc((100% - 1140px)/2));color:white;border-bottom:1px solid #233a53}.brand{display:flex;gap:11px;align-items:center}.brandmark{height:42px;width:42px;font-size:20px;border-radius:12px}.brand strong{font-size:16px;letter-spacing:-.3px}.brand .eyebrow{font-size:9px;color:#4ad0bf;margin-bottom:4px}.header-actions{display:flex;align-items:center;gap:14px}.net-pill{border:1px solid #41635e;border-radius:50px;color:#adf4dd;padding:6px 9px;font-size:11px}.net-pill.offline{border-color:#d2a460;color:#ffd292}.icon-btn{border:none;border-radius:10px;background:#283b53;color:#fff;width:34px;height:34px;font-size:20px}.page-area{max-width:1140px;margin:auto;padding:28px 28px 120px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.page-heading h1{font-size:30px;letter-spacing:-1px;margin:5px 0}.subline{color:#718095;margin:0;font-size:13px}.bottom-nav{background:#fff;border:1px solid #e1e7ef;border-radius:16px;display:flex;gap:5px;justify-content:space-between;position:fixed;bottom:20px;left:50%;transform:translateX(-50%);padding:6px;width:min(610px,calc(100% - 30px));box-shadow:0 9px 36px #34425a21;z-index:7}.nav-btn{background:none;border:0;color:#7f90a3;display:flex;gap:5px;flex-direction:column;align-items:center;justify-content:center;min-width:0;flex:1;border-radius:11px;font-weight:700;font-size:11px;padding:8px 5px}.nav-btn.active{background:#e6f5f3;color:#007c76}.nav-emoji{font-size:19px;font-weight:800;height:22px}.grid-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:22px}.kpi{border:1px solid #e7ecf2;border-radius:16px;background:#fff;padding:18px;box-shadow:0 3px 7px #1c2c4007}.kpi .label{font-size:12px;font-weight:650;color:#78889a}.kpi .number{font-size:26px;font-weight:820;margin-top:12px;color:#15273c;letter-spacing:-.8px}.kpi.danger .number{color:#ca514c}.kpi.good .number{color:#008b83}.section-title{font-size:15px;font-weight:800;margin:18px 0 12px;display:flex;align-items:center;gap:9px}.count{font-size:11px;border-radius:50px;background:#e9eef2;color:#506077;padding:3px 8px}.stages-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.stage{background:#edf1f5;border:1px solid #e0e6ef;padding:12px;border-radius:15px;min-width:0}.stage-header{display:flex;align-items:center;justify-content:space-between;gap:6px;margin:0 1px 12px;font-size:12px;font-weight:800}.stage .count{background:#fff}.order-card{background:#fff;border:1px solid #e0e7ed;border-radius:12px;padding:14px;margin:9px 0;box-shadow:0 2px 7px #15243a08}.order-card h3{font-size:14px;margin:8px 0 4px;word-break:break-word}.order-card .client{font-size:12px;color:#718094}.order-card .meta{display:flex;gap:5px;align-items:center;justify-content:space-between;margin:13px 0 11px;font-size:11px;color:#657488}.order-card .meta strong{color:#17364b}.card-actions{display:flex;gap:6px;align-items:center}.card-actions .btn{flex:1}.tag{background:#e9f2f5;color:#39627a;padding:4px 8px;border-radius:20px;font-size:10px;font-weight:760;display:inline-block}.tag.urgent{background:#ffebea;color:#b94d43}.tag.today{background:#fff1d6;color:#b97a1c}.tag.done{background:#def8eb;color:#087c59}.empty{color:#8794a3;font-size:12px;padding:22px 12px;text-align:center;border:1px dashed #d6dfe9;border-radius:11px;background:#f9fbfc;line-height:1.5}.toolbar{display:flex;gap:8px;align-items:center;justify-content:space-between;margin-bottom:14px;flex-wrap:wrap}.toolbar input{max-width:380px}.orders-table{width:100%;border-collapse:collapse}.orders-table td,.orders-table th{padding:13px 12px;border-bottom:1px solid #e7edf3;text-align:left;vertical-align:middle;font-size:12px}.orders-table th{text-transform:uppercase;letter-spacing:.5px;font-size:10px;color:#8390a0}.orders-table tr:hover td{background:#f7fafb}.panel{background:#fff;border:1px solid #e3e9f0;border-radius:16px;padding:19px}.table-wrap{overflow:auto}.row-title{font-size:13px;font-weight:760}.row-sub{font-size:11px;color:#8290a3;margin-top:4px}.pill{border-radius:20px;background:#f2f5f7;color:#486273;padding:5px 9px;display:inline-flex;font-weight:700;font-size:10px}.pill.danger{color:#b94d43;background:#ffecec}.pill.green{color:#097965;background:#e4f8f0}.calendar-header{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px}.calendar-header h2{font-size:19px;text-transform:capitalize;margin:0}.month-controls{display:flex;gap:6px}.month-controls button{background:#eef3f6;border:0;padding:8px 14px;border-radius:9px;font-size:18px;color:#2e4558}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.week-head{text-align:center;padding:7px 0;color:#8694a5;font-size:10px;font-weight:820}.calendar-cell{border:1px solid #e7edf3;min-height:78px;border-radius:9px;padding:8px;background:white;text-align:left;color:#284057;display:flex;flex-direction:column;gap:3px}.calendar-cell.blank{background:transparent;border-color:transparent}.calendar-cell.has-events{border-color:#99d9d1}.calendar-cell.selected{background:#e9f7f4;border:2px solid #168f86}.calendar-cell .day{font-size:12px;font-weight:750}.calendar-cell .event{background:#d8f4ed;color:#087b70;padding:3px 5px;font-size:10px;font-weight:740;border-radius:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.calendar-cell .dot{display:none}.day-list{margin-top:17px}.day-list .order-card{box-shadow:none}.finance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:20px}.finance-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.finance-item{border:1px solid #e5ebf2;background:#fff;border-radius:13px;padding:16px}.finance-item .top{display:flex;justify-content:space-between;gap:9px}.finance-item h3{margin:0;font-size:14px}.finance-item p{margin:6px 0;font-size:12px;color:#79889b}.finance-item .val{font-weight:850;color:#18324b;font-size:18px;margin:10px 0}.progress{height:7px;background:#edf0f5;border-radius:50px;overflow:hidden;margin:11px 0}.progress div{height:100%;background:#07958b;border-radius:50px}.modal-shade{position:fixed;inset:0;background:#0e1b2db3;z-index:30;display:flex;align-items:center;justify-content:center;padding:16px}.modal-window{background:#fff;border-radius:19px;width:min(630px,100%);max-height:calc(100vh - 36px);overflow:auto;box-shadow:0 15px 60px #07102180}.modal-head{padding:21px 22px;border-bottom:1px solid #e5ebf1;display:flex;justify-content:space-between;gap:10px;align-items:center}.modal-head h2{font-size:19px;margin:0}.modal-body{padding:20px 22px 24px}.close-btn{border:0;background:#f0f3f6;color:#556576;border-radius:10px;width:33px;height:33px;font-size:21px}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field{min-width:0}.field.wide{grid-column:1/-1}.field small{font-size:11px;color:#77869b}.modal-actions{display:flex;gap:9px;justify-content:flex-end;flex-wrap:wrap;margin-top:22px}.detail-line{display:flex;gap:10px;justify-content:space-between;font-size:13px;border-bottom:1px solid #e9eef3;padding:10px 0}.detail-line span:first-child{color:#708093}.detail-line strong{text-align:right;max-width:65%;word-wrap:break-word}.receipt{font-size:12px;background:#f4f7f9;border-radius:10px;padding:10px 12px;margin:8px 0;display:flex;justify-content:space-between;gap:9px}.toast{position:fixed;z-index:50;bottom:101px;left:50%;transform:translateX(-50%);max-width:95%;border-radius:12px;padding:12px 18px;color:#fff;background:#1e4250;font-size:13px;font-weight:700;box-shadow:0 6px 24px #12233b42;min-width:200px;text-align:center}.status-line{padding:11px 13px;margin-bottom:12px;border-radius:10px;background:#fff3d8;color:#896017;font-size:12px}.status-line.error{background:#ffe8e5;color:#ad4039}.helper{font-size:12px;color:#8290a2;margin:10px 0}.link-button{border:0;background:transparent;color:#008980;font-size:12px;font-weight:750;padding:3px}.finance-item .btn{margin-top:8px}@media (max-width:900px){.stages-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.topbar{height:66px;padding:0 17px}.brandmark{height:38px;width:38px}.brand strong{font-size:13px}.page-area{padding:22px 13px 115px}.page-heading{align-items:flex-start}.page-heading h1{font-size:26px}.page-heading .btn{font-size:11px;padding:10px}.subline{font-size:12px;max-width:210px}.grid-kpis{gap:8px;margin-bottom:16px}.kpi{padding:13px}.kpi .label{font-size:11px}.kpi .number{font-size:22px;margin-top:8px}.stages-grid{grid-template-columns:1fr;gap:10px}.stage{padding:11px}.order-card{margin:6px 0}.finance-grid{grid-template-columns:1fr 1fr}.finance-list{grid-template-columns:1fr}.calendar{gap:3px}.calendar-cell{min-height:56px;padding:5px;border-radius:6px}.calendar-cell .day{font-size:11px}.calendar-cell .event{display:none}.calendar-cell .dot{display:block;height:6px;width:6px;border-radius:50%;background:#07978a;margin:auto}.field-grid{grid-template-columns:1fr}.field.wide{grid-column:auto}.modal-window{max-height:calc(100dvh - 24px)}.modal-body{padding:16px}.modal-head{padding:16px}.net-pill{font-size:10px;padding:5px 7px}.bottom-nav{bottom:8px}.auth-card{padding:25px}.orders-table td,.orders-table th{padding:10px 7px}.small-hide{display:none}}@media (max-width:390px){.brand strong{font-size:12px}.brand .eyebrow{letter-spacing:1px}.page-heading h1{font-size:23px}.page-heading .btn{padding:9px 8px}.nav-btn{font-size:10px}.kpi .number{font-size:19px}}
