:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#172033;--muted:#68738a;--line:#e6eaf0;--surface:#fff;--canvas:#f6f8fb;--melon:#f04d76}*{box-sizing:border-box}body{background:var(--canvas);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}.app-shell{grid-template-columns:256px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#cbd5e1;background:#172033;flex-direction:column;padding:22px 14px;display:flex}.brand{color:#fff;align-items:center;gap:10px;padding:0 10px 28px;font-size:14px;line-height:1.1;text-decoration:none;display:flex}.brand-mark{background:var(--melon);border-radius:9px;place-items:center;width:32px;height:32px;font-weight:800;display:grid}.sidebar nav{gap:3px;display:grid}.sidebar a{color:#b9c2d2;border-radius:8px;padding:10px 12px;font-size:14px;text-decoration:none}.sidebar a:hover,.sidebar a.active{color:#fff;background:#26334b}.sidebar-footer{color:#8390a8;border-top:1px solid #2b3952;margin-top:auto;padding:16px 10px 0;font-size:12px}.workspace{min-width:0}.header{background:var(--surface);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;height:76px;padding:0 32px;display:flex}.header h1{margin:2px 0 0;font-size:19px}.eyebrow{color:var(--muted);letter-spacing:.09em;margin:0;font-size:11px;font-weight:700}.menu-button{background:0 0;border:0;font-size:22px;display:none}.user-menu{align-items:center;gap:9px;display:flex}.avatar{color:#c72f58;background:#fee4eb;border-radius:50%;place-items:center;width:36px;height:36px;font-weight:700;display:grid}.user-copy{font-size:13px;display:grid}.user-copy small{color:var(--muted);font-size:11px}.content{max-width:1440px;padding:32px}.welcome-card{color:#fff;background:linear-gradient(110deg,#e83d69,#fa7d76);border-radius:16px;padding:28px}.welcome-card h2{margin:7px 0 10px;font-size:clamp(24px,3vw,34px)}.welcome-card p:last-child{color:#fff4f6;max-width:640px;line-height:1.55}.status-grid{grid-template-columns:repeat(3,1fr);gap:18px;margin:22px 0;display:grid}.status-grid article,.empty-state{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:22px}.status-grid h3{margin:14px 0 7px;font-size:15px}.status-grid p,.empty-state p{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.status-icon{color:var(--melon);background:#fff0f3;border-radius:9px;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.empty-state{text-align:center;padding:46px 24px}.empty-state h2{margin:0 0 8px;font-size:17px}.health-card,.page-intro,.settings-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;justify-content:space-between;align-items:center;gap:20px;margin:22px 0;padding:22px;display:flex}.health-card h3,.settings-card h3{margin:6px 0 0;font-size:16px}.status-dot{background:#f5a524;border-radius:50%;width:9px;height:9px;margin-right:7px;display:inline-block}.health-card.ok .status-dot{background:#19a974}.health-card.offline .status-dot{background:#df4b5e}.secondary-button,.primary-button{border:1px solid var(--line);color:var(--ink);font:inherit;cursor:pointer;white-space:nowrap;background:#fff;border-radius:8px;padding:9px 13px;font-size:13px;font-weight:700}.primary-button{border-color:var(--melon);background:var(--melon);color:#fff}.primary-button:disabled{cursor:not-allowed;opacity:.55}.module-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.module-card{border:1px solid var(--line);min-height:154px;color:var(--ink);background:#fff;border-radius:12px;padding:20px;text-decoration:none;transition:border-color .15s,transform .15s;display:block}.module-card:hover{border-color:var(--melon);transform:translateY(-2px)}.module-card span{color:var(--melon);letter-spacing:.08em;font-size:10px;font-weight:800}.module-card h3{margin:10px 0 7px;font-size:16px}.module-card p,.page-intro p,.settings-card p{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.page-intro h2{margin:6px 0 8px;font-size:25px}.empty-icon{width:42px;height:42px;color:var(--melon);background:#fff0f3;border-radius:12px;place-items:center;margin:0 auto 14px;font-size:27px;display:grid}.settings-card{align-items:flex-start}.settings-form{grid-template-columns:minmax(180px,280px) auto;align-items:end;gap:10px;display:grid}.settings-form label{gap:6px;font-size:12px;font-weight:700;display:grid}.settings-form input{height:38px;font:inherit;border:1px solid #cdd4df;border-radius:8px;padding:0 10px}.saved-note{color:#16825c;font-size:12px;font-weight:700}@media (max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{display:none}.menu-button{display:block}.header{padding:0 20px}.content{padding:20px}.status-grid,.module-grid{grid-template-columns:1fr}.user-copy{display:none}.health-card,.page-intro,.settings-card{flex-direction:column;align-items:flex-start}.settings-form{grid-template-columns:1fr;width:100%}}.auth-screen{background:linear-gradient(135deg,#172033,#2b3952);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{background:#fff;border-radius:16px;gap:14px;width:min(440px,100%);padding:30px;display:grid;box-shadow:0 20px 50px #00000040}.auth-card h1{margin:4px 0 0;font-size:22px}.auth-card label,.resource-form label,.settings-card label{color:var(--ink);gap:6px;font-size:12px;font-weight:700;display:grid}.auth-brand{color:var(--ink);padding:0}.form-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}input,select,textarea{font:inherit;color:var(--ink);background:#fff;border:1px solid #cdd4df;border-radius:8px;min-height:38px;padding:8px 10px;font-size:14px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--melon);outline:2px solid #fbc4d2}fieldset{border:0;min-width:0;margin:0;padding:0}code{background:#f1f4f8;border-radius:4px;padding:1px 5px;font-size:12px}.muted{color:var(--muted)}.small{font-size:12px}.mono{font-family:Consolas,monospace;font-size:13px}.form-error{color:#c0293f;background:#fff0f2;border:1px solid #f7c6cf;border-radius:8px;margin:0;padding:9px 11px;font-size:13px}.required{color:var(--melon);margin-left:2px}label em{color:var(--muted);font-style:normal;font-weight:400}.hint{color:var(--muted);font-weight:400}.text-danger{color:#c0293f;font-weight:700}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 14px;display:flex}.toolbar .search{width:min(360px,100%)}.spacer{flex:1}.inline-label{align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.table-wrap{border:1px solid var(--line);background:#fff;border-radius:12px;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:14px}.data-table th{text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);white-space:nowrap;background:#fafbfc;padding:11px 14px;font-size:11px}.data-table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:11px 14px}.data-table tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#fcfcfd}.data-table.compact td,.data-table.compact th{padding:7px 10px;font-size:13px}.num{white-space:nowrap;font-variant-numeric:tabular-nums;text-align:right!important}.cell-stack{gap:2px;display:grid}.cell-stack small{color:var(--muted);font-size:12px}.actions-col{white-space:nowrap;width:1%}.row-actions{justify-content:flex-end;gap:12px;display:flex}.link-button{color:#2457c5;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:700}.link-button:hover{text-decoration:underline}.link-button.danger{color:#c0293f}.icon-button{cursor:pointer;width:32px;height:32px;color:var(--muted);background:#f1f4f8;border:0;border-radius:8px;font-size:18px}.icon-button:disabled{opacity:.4;cursor:default}.pagination{color:var(--muted);justify-content:center;align-items:center;gap:14px;margin:14px 0;font-size:13px;display:flex}.badge,.status-select{color:#4a5568;white-space:nowrap;background:#eef1f5;border:0;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-block}.status-select{cursor:pointer;min-height:28px;padding:3px 8px}.badge-draft,.badge-todo,.badge-planned,.badge-pending,.badge-new,.badge-unpaid{color:#4a5568;background:#eef1f5}.badge-sent,.badge-in_progress,.badge-in_design,.badge-in_production,.badge-in_transit,.badge-ordered,.badge-client_review,.badge-partial{color:#2457c5;background:#e6efff}.badge-accepted,.badge-approved,.badge-done,.badge-ready,.badge-delivered,.badge-received,.badge-paid,.badge-pass{color:#16825c;background:#e3f6ee}.badge-rejected,.badge-cancelled,.badge-failed,.badge-fail,.badge-expired{color:#c0293f;background:#fde8eb}.badge-on_hold,.badge-rework,.badge-revision,.badge-changes_requested{color:#a8650b;background:#fff4de}.badge-submitted{color:#2457c5;background:#e6efff}.priority-low{color:#68738a;background:#f1f4f8}.priority-normal{color:#4a5568;background:#eef1f5}.priority-high{color:#a8650b;background:#fff4de}.priority-urgent{color:#c0293f;background:#fde8eb}.spec-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 16px;margin:0 0 6px;display:grid}.spec-grid dt{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:700}.spec-grid dd{margin:3px 0 0;font-size:14px}.brief{white-space:pre-wrap;border:1px solid var(--line);background:#fafbfc;border-radius:10px;margin:0;padding:12px;font-size:14px;line-height:1.55}.review-box{background:#fff8fa;border:1px solid #fbc4d2;border-radius:10px;gap:8px;margin-top:14px;padding:4px 14px 14px;display:grid}.review-box label{gap:6px;font-size:12px;font-weight:700;display:grid}.timeline{border-left:2px solid var(--line);gap:14px;margin:0;padding:0 0 0 14px;list-style:none;display:grid}.timeline li{position:relative}.timeline li:before{content:"";border:2px solid var(--melon);background:#fff;border-radius:50%;width:12px;height:12px;position:absolute;top:5px;left:-21px}.timeline-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.timeline-head small{color:var(--muted)}.timeline p{white-space:pre-wrap;margin:6px 0 0;font-size:14px}.timeline .feedback{background:#fffaf0;border-radius:8px;padding:8px 10px}.progress-cell{gap:4px;min-width:130px;display:grid}.progress-cell small{color:var(--muted);font-size:12px}.progress-bar{background:#eef1f5;border-radius:999px;height:6px;overflow:hidden}.progress-bar span{background:var(--melon);border-radius:inherit;height:100%;display:block}.split-forms{grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (max-width:900px){.spec-grid{grid-template-columns:1fr 1fr}.split-forms{grid-template-columns:1fr}}.modal-backdrop{z-index:50;background:#17203373;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:14px;width:min(640px,100%);max-height:calc(100vh - 40px);padding:22px;overflow-y:auto;box-shadow:0 20px 60px #00000040}.modal-wide{width:min(980px,100%)}.modal-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal-header h2{margin:0;font-size:18px}.modal-footer{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.resource-form{gap:12px;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;display:grid}.form-grid .wide,.form-grid .check-field{grid-column:1/-1}.check-field{align-items:center;gap:8px;font-size:14px!important;display:flex!important}.check-field input{min-height:auto}.subheading{margin:18px 0 8px;font-size:14px}.line-editor{border:1px solid var(--line);background:#fafbfc;border-radius:10px;gap:8px;padding:12px;display:grid}.line-head,.line-row{grid-template-columns:minmax(150px,1.3fr) minmax(150px,1.6fr) 80px 130px 120px 32px;align-items:center;gap:8px;display:grid}.line-purchase .line-head,.line-purchase .line-row{grid-template-columns:minmax(180px,2fr) 110px 140px 130px 32px}.line-head{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:700}.line-total{text-align:right;font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.line-foot{justify-content:space-between;align-items:center;font-size:15px;display:flex}.toast{color:#fff;z-index:60;border-radius:10px;padding:12px 16px;font-size:14px;font-weight:700;position:fixed;bottom:24px;right:24px;box-shadow:0 10px 30px #0003}.toast-ok{background:#16825c}.toast-error{background:#c0293f}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin:22px 0;display:grid}.stat-card{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:12px;gap:8px;padding:16px 18px;text-decoration:none;display:grid}.stat-card span{color:var(--muted);font-size:13px}.stat-card strong{font-variant-numeric:tabular-nums;font-size:24px}a.stat-card:hover{border-color:var(--melon)}.stat-card.warn{background:#fffaf0;border-color:#f5c46b}.tabs{border-bottom:1px solid var(--line);gap:6px;margin-bottom:16px;display:flex}.tabs button{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 14px;font-size:14px;font-weight:700}.tabs button.active{color:var(--melon);border-color:var(--melon)}.report-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.panel{border:1px solid var(--line);background:#fff;border-radius:12px;padding:18px}.panel h3{margin:0 0 14px;font-size:15px}.bars{gap:9px;display:grid}.bar-row{grid-template-columns:minmax(90px,140px) 1fr auto;align-items:center;gap:10px;font-size:13px;display:grid}.bar-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bar-track{background:#f1f4f8;border-radius:99px;height:10px;overflow:hidden}.bar-fill{background:var(--melon);border-radius:99px;height:100%;display:block}.bar-value{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.settings-card{flex-direction:column;align-items:stretch}.settings-card .form-grid{width:100%}.settings-actions{justify-content:flex-end;align-items:center;gap:12px;display:flex}.user-menu .secondary-button{margin-left:8px}@media (max-width:900px){.sidebar.open{z-index:40;width:260px;display:flex;position:fixed;inset:0 auto 0 0}.form-grid,.report-grid,.form-row{grid-template-columns:1fr}.line-head{display:none}.line-row,.line-purchase .line-row{grid-template-columns:1fr 1fr}}.auth-switch{text-align:center;color:#2457c5;font-size:13px;font-weight:700;text-decoration:none}.auth-switch:hover{text-decoration:underline}.badge-requested{color:#a8650b;background:#fff4de}.badge-portal{color:#c72f58;background:#fee4eb;padding:2px 8px;font-size:11px}.portal-shell{background:var(--canvas);min-height:100vh}.portal-header{background:var(--surface);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:14px 32px;display:flex}.portal-main{max-width:1040px;margin:0 auto;padding:26px 20px 60px}.portal-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;gap:14px;padding:22px;display:grid}.portal-lines .line-head,.portal-lines .line-row{grid-template-columns:minmax(220px,2fr) minmax(160px,1.5fr) 90px 130px 32px}.portal-notice{color:#16825c;background:#e3f6ee;border-radius:10px;padding:12px 14px;font-size:14px;font-weight:700}.detail-row>td{background:#fafbfc}@media (max-width:760px){.portal-header{padding:12px 16px}.portal-lines .line-row{grid-template-columns:1fr 1fr}}
