@layer reset, layout, components;:root{--bg:#f7f8f8;--surface:#fff;--surface-2:#f1f6f3;--surface-3:#e8f0ed;--fg:#15201e;--muted:#4b5a56;--meta:#677570;--border:#d7e0dc;--border-soft:#b9c8c1;--accent:#137a55;--accent-dark:#0f6949;--danger:#b42318;--warning:#9b6c12;--radius:8px;--radius-lg:12px;--pill:999px;--shadow:0 1px 2px rgba(21,32,30,.05),0 8px 22px rgba(21,32,30,.04);--display:"Helvetica Neue",Helvetica,Arial,sans-serif;--body:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box}body,html{background:var(--bg)}body{margin:0;color:var(--fg);font:16px/1.55 var(--body);min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit}.app{min-height:100vh;display:grid;grid-template-columns:264px minmax(0,1fr)}.sidebar{background:var(--surface);border-right:1px solid var(--border);padding:28px 16px;display:flex;flex-direction:column;gap:16px}.brand{display:flex;align-items:center;justify-content:center;gap:11px;padding:0 12px}.brand-mark{width:34px;height:34px;border:1px solid var(--accent);border-radius:50% 50% 10px 10px;display:grid;place-items:center;color:var(--accent);font:300 18px var(--display)}.brand strong{display:block;font:400 21px var(--display);letter-spacing:.1px}.brand small{display:block;color:var(--meta);font-size:12px}.nav{display:grid;grid-gap:5px;gap:5px}.nav-link{width:100%;display:flex;align-items:center;gap:10px;border:0;background:transparent;color:var(--muted);padding:11px 12px;border-radius:8px;text-align:left;text-decoration:none;transition:background .18s,color .18s}.nav-link.active,.nav-link:hover{background:var(--surface-3);color:var(--fg)}.nav-link.active{box-shadow:inset 2px 0 var(--accent)}.nav-link.disabled{cursor:not-allowed;opacity:.65}.nav-link small{margin-left:auto;font-size:9px;color:var(--meta);text-align:right}.nav-icon{font-size:18px}.support{margin-top:auto;border:1px solid var(--border);padding:15px;border-radius:var(--radius);background:#f4f7f6}.support strong{font-size:13px}.support p{margin:4px 0 0;color:var(--muted);font-size:12px}.mobile-menu-toggle{display:none}.main{min-width:0}.topbar{min-height:78px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:16px 40px;gap:16px;position:-webkit-sticky;position:sticky;top:0;background:hsla(0,0%,100%,.94);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:5}.crumb{color:var(--meta);font-size:13px}.topbar h1{font:300 clamp(26px,3vw,38px)/1 var(--display);letter-spacing:.1px;margin:4px 0 0}.top-actions{display:flex;align-items:center;gap:16px}.notification{position:relative;background:transparent;color:var(--muted);border:0;width:44px;height:44px;border-radius:50%;font-size:27px}.notification:hover{color:var(--fg);background:var(--surface-3)}.notification i{position:absolute;top:10px;right:9px;width:7px;height:7px;border-radius:50%;background:var(--accent);border:1px solid var(--surface)}.profile{display:flex;align-items:center;gap:10px}.avatar{width:35px;height:35px;background:#e1fbe9;color:#062318;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:700}.profile strong{display:block;font-size:13px}.profile small{display:block;color:var(--meta);font-size:11px}.content{padding:32px 40px 64px;max-width:1760px;margin:auto}.bar,.overview{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px}.overview h2,.toolbar h2{font:300 25px/1.1 var(--display);margin:0}.bar p,.overview p{color:var(--muted);margin:6px 0 0;font-size:14px}.date{color:var(--meta);font-size:14px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px;margin-bottom:32px}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px 20px;box-shadow:var(--shadow);min-width:0}.stat-label{color:var(--muted);font-size:14px;display:block}.stat-card strong{display:block;font:300 clamp(26px,3vw,38px)/1.15 var(--display);letter-spacing:-1px;margin:8px 0 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat-card small{color:var(--meta);font-size:12px}.stat-card .up{color:var(--accent)}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.toolbar p{color:var(--muted);margin:4px 0 0;font-size:14px}.filters,.tool-controls{display:flex;gap:10px;align-items:center}.search{position:relative;display:block}.search>span{position:absolute;left:13px;top:7px;font-size:24px;color:var(--meta);line-height:1}.filter,.search input{height:44px;border:1px solid var(--border-soft);background:var(--surface);color:var(--fg);border-radius:var(--radius);padding:0 13px}.search input{width:245px;padding-left:40px}.filter{color:var(--muted);padding-right:32px}.btn{min-height:44px;border-radius:var(--pill);border:2px solid transparent;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;font-weight:600;font-size:14px;white-space:nowrap}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-dark)}.btn-ghost{background:transparent;color:var(--fg);border-color:var(--border-soft)}.btn-ghost:hover{background:var(--surface-3)}.board{display:grid;grid-template-columns:repeat(5,minmax(220px,1fr));grid-gap:14px;gap:14px;overflow-x:auto;padding-bottom:8px}.column{background:#eef3f1;border:1px solid var(--border);border-radius:var(--radius-lg);min-height:420px;padding:12px}.col-head{justify-content:space-between;padding:7px 4px 15px}.col-head,.col-title{display:flex;align-items:center}.col-title{gap:8px;font-size:14px;font-weight:600}.stage-dot{width:9px;height:9px;border-radius:50%;background:#75a4a9}.stage-1{background:#89b2e9}.stage-2{background:#bd9be9}.stage-3{background:#e2a85c}.stage-4{background:var(--accent)}.count{min-width:23px;text-align:center;padding:2px 7px;border-radius:var(--pill);font-size:12px;background:#dff0e8;color:#0c6142}.order-card{width:100%;color:var(--fg);text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:15px;margin-bottom:10px;box-shadow:var(--shadow);transition:transform .18s,border-color .18s}.order-card:hover{transform:translateY(-2px);border-color:#9cb9ad}.order-card.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),var(--shadow)}.order-top{display:flex;justify-content:space-between;gap:10px;color:var(--meta);font-size:12px}.source{padding:2px 7px;border-radius:4px;background:#e3f1eb;color:#17573f}.customer{font:400 19px var(--display);margin:12px 0 2px}.product{color:var(--muted);font-size:13px;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-foot{display:flex;align-items:center;justify-content:space-between;margin-top:14px;padding-top:11px;border-top:1px solid var(--border);font-size:12px;color:var(--meta)}.deadline.late{color:var(--danger)}.progress{height:4px;background:#deebe5;border-radius:4px;margin-top:13px;overflow:hidden}.progress i{display:block;height:100%;background:var(--accent);border-radius:inherit}.empty{border:1px dashed var(--border-soft);border-radius:8px;padding:22px 14px;color:var(--meta);text-align:center;font-size:13px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.table-wrap{overflow:auto}.table-wrap table{width:100%;border-collapse:collapse;min-width:850px}.table-wrap td,.table-wrap th{padding:14px 16px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;font-size:14px}.table-wrap th{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--meta);background:var(--surface-2)}.table-wrap tr:last-child td{border-bottom:0}.badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:#e3f1eb;color:#17573f;font-size:12px;font-weight:600;white-space:nowrap}.stage-badge-1{background:#e9f0fb;color:#315d91}.stage-badge-2{background:#f0eafa;color:#7050a1}.stage-badge-3{background:#fbf0dc;color:#8e6419}.stage-badge-4{background:#e2f5eb;color:#146340}.row-actions{display:flex;gap:7px}.btn-small{min-height:34px;padding:0 11px;border:1px solid var(--border-soft);background:var(--surface);border-radius:999px;color:var(--fg);font-size:12px}.btn-small:hover{background:var(--surface-3)}.btn-small.view{color:var(--accent);border-color:#93c8ad}.filters{margin-bottom:18px;flex-wrap:wrap}.filters .search input{width:310px}.table-empty{margin:16px}.modal-backdrop{position:fixed;inset:0;background:rgba(21,32,30,.32);z-index:10}.detail-modal{position:fixed;z-index:11;top:50%;left:50%;width:min(680px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:26px;box-shadow:0 24px 60px rgba(21,32,30,.24);transform:translate(-50%,-50%)}.detail-modal.compact{width:min(600px,calc(100vw - 32px))}.detail-head{display:flex;justify-content:space-between;align-items:start;gap:16px}.detail-kicker{color:var(--meta);font-size:13px}.detail-head h2{font:300 28px/1.1 var(--display);margin:8px 0 0}.close{border:0;background:var(--surface-3);color:var(--fg);width:40px;height:40px;border-radius:50%;font-size:22px}.detail-section{padding:22px 0;border-bottom:1px solid var(--border)}.detail-section h3{font-size:13px;text-transform:uppercase;letter-spacing:.1em;color:var(--meta);margin:0 0 12px}.details{display:grid;grid-template-columns:1fr 1fr;grid-gap:13px;gap:13px}.details div{display:grid;grid-gap:2px;gap:2px;min-width:0}.details .detail-wide{grid-column:1/-1}.details span{color:var(--meta);font-size:12px}.details strong{font-weight:500;font-size:14px;overflow-wrap:anywhere}.timeline{display:grid;grid-gap:0;gap:0}.timeline-item{display:grid;grid-template-columns:24px 1fr;grid-gap:11px;gap:11px;min-height:59px}.timeline-line{position:relative}.timeline-line:before{content:"";position:absolute;width:9px;height:9px;border:2px solid var(--surface);border-radius:50%;background:#62868b;top:4px;left:4px;box-shadow:0 0 0 1px #62868b}.timeline-item.done .timeline-line:before{background:var(--accent);box-shadow:0 0 0 1px var(--accent)}.timeline-item:not(:last-child) .timeline-line:after{content:"";position:absolute;top:16px;bottom:-2px;left:8px;width:1px;background:var(--border-soft)}.timeline-item p{margin:0;font-size:14px}.timeline-item small{color:var(--meta);font-size:12px}.notice{display:flex;gap:10px;padding:13px;margin-top:20px;border-radius:8px;background:#e7f5ee;color:#155a40;font-size:13px}.stage-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px;flex-wrap:wrap}.detail-summary{margin:20px 0}.form-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;grid-gap:20px;gap:20px;align-items:start}.form-stack{display:grid;grid-gap:18px;gap:18px}.form-panel{padding:22px}.form-panel h2{font:400 22px/1.2 var(--display);margin:0 0 6px}.form-panel>p{margin:0 0 18px;color:var(--muted);font-size:14px}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.edit-grid label,.fields label{display:grid;grid-gap:7px;gap:7px;font-size:14px;font-weight:600}.fields label.full{grid-column:1/-1}.edit-grid input,.edit-grid select,.fields input,.fields select,.fields textarea{width:100%;min-height:44px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--fg);padding:10px 12px;font:inherit;font-weight:400}.fields textarea{min-height:90px;resize:vertical}.edit-grid input:focus,.edit-grid select:focus,.fields input:focus,.fields select:focus,.fields textarea:focus{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--accent)}.detail-group{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px;padding:16px;border:1px solid var(--border);border-radius:8px;background:#fafcfb}.detail-group h3,.detail-group p{grid-column:1/-1}.detail-group h3{margin:0;font:500 16px/1.3 var(--display)}.detail-group p{margin:-8px 0 0;color:var(--muted);font-size:13px}.field-label{display:block;font-size:14px;font-weight:600;margin-bottom:7px}.payment-options{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.payment-option{position:relative;display:block;cursor:pointer}.payment-option input{position:absolute;opacity:0}.payment-option span{display:block;min-height:72px;border:1px solid var(--border);border-radius:8px;padding:13px;background:var(--surface);font-weight:600}.payment-option small{display:block;color:var(--muted);font-weight:400;margin-top:3px}.payment-option input:checked+span{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);background:#eff8f3}.payment-detail-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.payment-detail-grid label{display:grid;grid-gap:7px;gap:7px;font-size:14px;font-weight:600}.payment-detail-grid input{min-height:44px;padding:10px 12px;background:var(--surface);font:inherit;font-weight:400}.payment-calculator,.payment-detail-grid input{border:1px solid var(--border);border-radius:8px}.payment-calculator{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;background:#f4faf7}.payment-calculator small,.payment-calculator span{display:block;color:var(--muted);font-size:13px}.payment-calculator strong{display:block;margin-top:3px;font:500 20px/1.2 var(--display);color:var(--fg)}.order-summary{padding:22px;position:-webkit-sticky;position:sticky;top:102px}.summary-code{font:400 30px/1 var(--display);margin:6px 0 4px}.order-summary>p{margin:0;color:var(--muted);font-size:14px}.summary-list{display:grid;grid-gap:13px;gap:13px;margin-top:20px}.summary-list div{display:flex;justify-content:space-between;gap:10px;font-size:14px}.summary-list span{color:var(--muted)}.summary-list strong{text-align:right;overflow-wrap:anywhere}.status-ready{display:inline-flex;align-items:center;gap:7px;background:#e7f5ee;color:#155a40;border-radius:999px;padding:7px 10px;font-size:13px;font-weight:600}.status-ready i{width:8px;height:8px;border-radius:50%;background:var(--accent)}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.success{padding:14px 16px;background:#e7f5ee;border:1px solid #b6dfca;border-radius:8px;color:#155a40}.edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px;margin-top:22px}@media(max-width:1100px){.app{grid-template-columns:76px minmax(0,1fr)}.sidebar{padding:24px 10px}.brand{padding:0;justify-content:center}.brand>div,.nav-link small,.nav-link>span:not(.nav-icon),.support{display:none}.nav-link{justify-content:center}.content,.topbar{padding-left:24px;padding-right:24px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.board{grid-template-columns:repeat(5,260px)}}@media(max-width:767px){.app{display:block}.sidebar{position:-webkit-sticky;position:sticky;top:0;z-index:30;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:8px;gap:8px;padding:12px 16px;background:var(--surface);border-bottom:1px solid var(--border)}.brand{grid-column:1;justify-content:flex-start;padding:0}.brand>div{display:block}.mobile-menu-toggle{grid-column:2;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;min-height:44px;padding:8px 12px;color:var(--fg);background:var(--surface);border:1px solid var(--border);border-radius:8px}.sidebar .nav{display:none;grid-column:1/-1;gap:4px;padding-top:8px}.sidebar.menu-open .nav{display:grid}.nav-link{display:flex;justify-content:flex-start;min-height:44px;white-space:normal}.nav-link small,.nav-link>span:not(.nav-icon){display:block}.nav-link small{margin-left:auto}.topbar{position:static;padding:18px 16px 8px}.top-actions{display:none}.content{padding:24px 16px 48px}.bar,.overview{display:block}.date{margin-top:8px}.stats{grid-template-columns:1fr}.toolbar{align-items:stretch;flex-direction:column}.tool-controls{flex-wrap:wrap}.search,.search input{width:100%}.filter{flex:1 1;min-width:120px}.btn{justify-content:center}.board{margin-right:-16px;grid-template-columns:repeat(5,260px)}.details{grid-template-columns:1fr}.detail-modal{width:calc(100vw - 24px);max-height:calc(100vh - 24px);padding:20px}.detail-group,.edit-grid,.fields,.payment-detail-grid,.payment-options{grid-template-columns:1fr}.detail-group h3,.detail-group p,.edit-grid label.full,.fields label.full,.payment-calculator,.payment-detail-grid{grid-column:auto}.actions,.stage-actions{flex-direction:column-reverse}.actions .btn,.stage-actions .btn{width:100%}.order-summary{position:static;order:-1}.table-wrap{margin-left:-16px;margin-right:-16px;border-left:0;border-right:0;border-radius:0}}@media(prefers-reduced-motion:reduce){*,:after,:before{transition:none!important;scroll-behavior:auto!important}}.edit-grid label.full{grid-column:1/-1}.update-modal{width:min(560px,calc(100vw - 24px));padding:20px;border-radius:14px}.update-head{margin-bottom:2px}.update-head .detail-kicker{text-transform:uppercase;letter-spacing:.09em;font-size:12px}.update-head h2{font-size:28px;margin-top:4px}.update-card{margin-top:16px;padding:16px;background:#f7faf8;border:1px solid #d7e2de;border-radius:10px}.update-card h3{margin:0 0 14px;color:var(--fg);font:400 17px/1.25 var(--display);letter-spacing:0;text-transform:none}.update-label{display:block;margin:0 0 7px;color:var(--meta);font-size:12px;text-transform:uppercase;letter-spacing:.07em}.update-select{width:100%;min-height:46px;border:1px solid #d4dfda;border-radius:8px;padding:0 12px;background:#fff;color:var(--fg);font:inherit}.update-select:focus{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--accent)}.update-payment-note{margin:8px 0 0;color:var(--accent);font-size:13px}.update-photo p{margin:-2px 0 15px;color:var(--muted);font-size:13px}.update-file{display:block;width:100%;min-height:48px;border:1px solid #d4dfda;border-radius:8px;padding:7px 10px;background:#fff;color:var(--fg);font:inherit}.update-file::-webkit-file-upload-button{margin-right:10px;border:1px solid #9aa8a2;border-radius:4px;padding:6px 10px;background:#f5f7f6;color:var(--fg);font:inherit}.update-file::file-selector-button{margin-right:10px;border:1px solid #9aa8a2;border-radius:4px;padding:6px 10px;background:#f5f7f6;color:var(--fg);font:inherit}.update-file-count{display:block;margin-top:8px;color:var(--accent);font-size:12px}.update-footer{margin-top:30px;padding:0;border:0}.update-footer .btn-ghost{background:#fff}.update-footer .btn-primary{background:#10211e}.update-footer .btn-primary:hover{background:#1b3932}.detail-note{margin:-4px 0 0;color:var(--meta);font-size:13px}.edit-modal{width:min(650px,calc(100vw - 24px));padding:24px}.edit-head{margin-bottom:4px}.edit-head .detail-kicker{text-transform:uppercase;letter-spacing:.08em;font-size:12px}.edit-head h2{font-size:28px;margin-top:4px}.edit-card{margin-top:16px;padding:16px;background:#f7faf8;border:1px solid #d7e2de;border-radius:10px}.edit-card h3{margin:0 0 14px;color:var(--fg);font:400 17px/1.25 var(--display);letter-spacing:0;text-transform:none}.edit-card .detail-note{margin:-6px 0 14px;color:var(--muted);font-size:13px}.edit-card .edit-grid{margin-top:0;gap:15px}.edit-card .edit-grid label{gap:7px;color:var(--meta);font-size:12px;text-transform:uppercase;letter-spacing:.055em}.edit-card .edit-grid input,.edit-card .edit-grid select,.edit-card .edit-grid textarea{min-height:46px;border:1px solid #d4dfda;border-radius:8px;background:#fff;color:var(--fg);padding:10px 12px;font:16px/1.4 var(--body);text-transform:none;letter-spacing:0}.edit-card .edit-grid textarea{min-height:86px;resize:vertical}.edit-card .edit-grid input:focus,.edit-card .edit-grid select:focus,.edit-card .edit-grid textarea:focus{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--accent)}.edit-modal>.stage-actions{margin-top:28px;padding-top:0;border:0}.edit-modal>.stage-actions .btn-primary{background:#137b52}.edit-modal>.stage-actions .btn-primary:hover{background:#0f6544}.btn-small.view{color:var(--fg);border-color:var(--border-soft)}.brand-logo{display:block;width:min(180px,100%);height:auto}.brand-mark{display:none}@media(max-width:1100px) and (min-width:768px){.brand-logo{display:none}.brand-mark{display:grid}}@media(max-width:767px){.brand-logo{display:block;width:min(180px,100%)}.brand-mark{display:none}}.photo-groups{display:grid;grid-gap:18px;gap:18px}.photo-group{padding-top:2px}.photo-group h4{margin:0 0 9px;color:var(--fg);font:500 15px/1.3 var(--display)}.photo-empty{margin:0;padding:12px;border:1px dashed var(--border-soft);border-radius:8px;color:var(--meta);font-size:12px}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.photo-card{margin:0;min-width:0}.photo-card img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;border:1px solid var(--border)}.photo-card figcaption{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:5px;color:var(--meta);font-size:11px;line-height:1.3}.photo-delete{border:0;background:transparent;color:var(--danger);font:inherit;font-size:11px;text-decoration:underline;padding:0;white-space:nowrap}.photo-delete:disabled{cursor:wait;opacity:.6}.update-photo .update-select{margin-bottom:12px}@media(max-width:767px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.update-error{margin-top:16px}.upload-status{display:flex;align-items:center;justify-content:center;gap:9px;margin:16px 0 -8px;color:var(--accent);font-size:13px}.upload-spinner{width:16px;height:16px;border:2px solid #b7d9ca;border-top:2px solid var(--accent);border-radius:50%;animation:upload-spin .8s linear infinite}@keyframes upload-spin{to{transform:rotate(1turn)}}.nav-icon{width:20px;height:20px;display:grid;place-items:center;text-align:center;color:var(--accent);flex:none}.nav-icon svg{width:16px;height:16px;stroke-width:1.8}.update-footer .btn-primary{background:var(--accent)}.update-footer .btn-primary:hover{background:var(--accent-dark)}.login-shell{min-height:100vh;display:grid;place-items:center;padding:28px;background:var(--bg)}.login-card{width:min(100%,460px);padding:36px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.login-brand{display:flex;justify-content:center;margin-bottom:30px}.login-brand img{width:min(230px,80vw);height:auto}.login-heading h1{font:300 30px/1.15 var(--display);margin:4px 0 8px}.login-heading>p:last-child{margin:0;color:var(--muted);font-size:14px}.login-form{display:grid;grid-gap:17px;gap:17px;margin-top:26px}.login-form label{display:grid;grid-gap:7px;gap:7px;font-size:14px;font-weight:600}.login-form input{width:100%;min-height:46px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--fg);padding:10px 12px;font:inherit;font-weight:400}.login-form input:focus{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--accent)}.password-field{position:relative}.password-field input{padding-right:108px}.password-toggle{position:absolute;right:7px;top:7px;min-height:32px;border:0;border-radius:6px;padding:0 8px;background:transparent;color:var(--accent);font-size:12px}.password-toggle:focus-visible,.password-toggle:hover{background:var(--surface-3)}.password-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.login-error{padding:11px 12px;border:1px solid #efb8b4;border-radius:8px;background:#fff5f4;color:var(--danger);font-size:13px}.login-submit{width:100%;min-height:48px;margin-top:2px}.login-note{margin:22px 0 0;color:var(--meta);font-size:12px;text-align:center}@media(max-width:480px){.login-shell{padding:16px}.login-card{padding:28px 20px}}.logout-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;border:1px solid var(--border-soft);border-radius:var(--pill);padding:0 11px;background:var(--surface);color:var(--muted);font-size:12px}.logout-button svg{width:15px;height:15px}.logout-button:focus-visible,.logout-button:hover{background:var(--surface-3);color:var(--fg)}.logout-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(max-width:1100px){.logout-button{padding:0 9px}.logout-button:not(:focus-visible){font-size:0}.logout-button svg{width:17px;height:17px}}@media(max-width:767px){.logout-button{display:none}}.customer-toolbar{align-items:end}.customer-stats{margin-bottom:24px}.customer-filters{margin-bottom:16px}.customer-table td strong{display:block}.table-subtext{display:block;margin-top:3px;color:var(--meta);font-size:12px}.customer-modal{width:min(720px,calc(100vw - 32px))}.customer-form-card{margin-top:18px}.customer-history{display:grid;grid-gap:8px;gap:8px}.history-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px;border:1px solid var(--border);border-radius:8px;background:#fbfdfc}.history-row div{display:grid;grid-gap:2px;gap:2px;min-width:0}.history-row strong{font-size:13px}.history-row span:not(.badge){color:var(--muted);font-size:12px;overflow-wrap:anywhere}.history-row .badge{flex:none}@media(max-width:767px){.customer-toolbar{align-items:stretch}.customer-toolbar .btn{width:100%}.customer-modal{width:calc(100vw - 24px)}}.tier-toggle{display:grid;grid-gap:10px;gap:10px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fbfdfc}.tier-toggle>span{display:flex;align-items:center;gap:8px;color:var(--fg);font-size:14px;font-weight:500;text-transform:none;letter-spacing:0}.tier-toggle input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent)}.tier-toggle>strong{color:var(--accent);font-size:13px}.tier-toggle select{min-height:44px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--fg);padding:8px 10px;font:inherit}.customer-table td.row-actions{display:table-cell;vertical-align:middle;text-align:right;white-space:nowrap}.customer-table td.row-actions .btn-small{margin-right:7px}.customer-table td.row-actions .btn-small:last-child{margin-right:0}.customer-table td:last-child,.customer-table td:nth-child(6),.customer-table th:last-child,.customer-table th:nth-child(6){white-space:nowrap}.customer-table td:last-child,.customer-table th:last-child{width:150px}.customer-match-confirm,.customer-match-panel{grid-column:1/-1;padding:13px 14px;border:1px solid var(--border);border-radius:8px;background:#f4faf7}.customer-match-panel{display:grid;grid-gap:9px;gap:9px}.customer-match-panel p{margin:0;color:var(--muted);font-size:13px}.customer-match{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:10px 12px;border:1px solid var(--border-soft);border-radius:8px;background:var(--surface);color:var(--fg);text-align:left}.customer-match:hover{border-color:var(--accent);background:#f8fcfa}.customer-match span{display:grid;grid-gap:2px;gap:2px;min-width:0}.customer-match small{color:var(--muted);font-size:12px}.customer-match em{flex:none;color:var(--accent);font-size:12px;font-style:normal;font-weight:600}.customer-new{justify-self:start}.customer-match-confirm{color:#155a40;font-size:13px}.board-scroll-hint,.mobile-menu-actions{display:none}@media(max-width:767px){.form-layout{grid-template-columns:1fr}.board-scroll-hint{display:block;margin:-8px 0 10px;color:var(--meta);font-size:12px}}.field-help{color:var(--meta);font-size:12px;font-weight:400}.field-readonly{display:grid;grid-gap:5px;gap:5px;min-height:42px;padding:10px 11px;border:1px solid #d4dfda;border-radius:8px;background:#f5f8f5}.field-readonly strong{font-size:14px}.field-readonly small{color:var(--meta);font-size:11px;line-height:1.4}.customer-match-panel.exact-match{border-color:#d5b56d;background:#fffaf0}.edit-grid>label,.fields>label{align-content:start}@media(max-width:767px){.sidebar.menu-open .mobile-menu-actions{display:block;grid-column:1/-1;padding-top:8px}.mobile-logout-button{width:100%;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--border-soft);border-radius:8px;background:var(--surface);color:var(--fg);font:inherit;font-weight:600}.mobile-logout-button:hover{background:var(--surface-3)}.mobile-logout-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mobile-logout-button svg{width:18px;height:18px}.customer-table td:first-child:before{content:"Nama pelanggan"}.customer-table td:nth-child(2):before{content:"Nomor WhatsApp"}.customer-table td:nth-child(3):before{content:"Tier"}.customer-table td:nth-child(4):before{content:"Total transaksi"}.customer-table td:nth-child(5):before{content:"Riwayat pesanan"}.customer-table td:nth-child(6):before{content:"Terdaftar"}.customer-table td:nth-child(7):before{content:"Aksi"}}.inventory-toolbar{align-items:flex-end}.inventory-stats{margin-bottom:24px}.inventory-danger{color:var(--danger)!important}.inventory-filters{margin-bottom:16px}.inventory-table{overflow-x:auto}.inventory-table table{min-width:980px}.inventory-table td strong{display:block}.inventory-badge-safe{background:#e5f3ec;color:#137a55}.inventory-badge-low{background:#fff0ed;color:#b4493f}.inventory-modal-app{width:min(760px,calc(100vw - 32px));overflow:auto}.inventory-form-modal{width:min(720px,calc(100vw - 32px));overflow:auto}.inventory-form-modal.compact{width:min(620px,calc(100vw - 32px))}.inventory-detail-actions{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 4px}.inventory-detail-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px;margin:18px 0 22px}.inventory-detail-summary>div{display:grid;grid-gap:4px;gap:4px;padding:13px;border:1px solid var(--border);border-radius:8px;background:#fbfdfc}.inventory-detail-summary span{color:var(--meta);font-size:12px}.inventory-detail-summary strong{font-size:16px}.inventory-history-list,.inventory-rule-list{display:grid;grid-gap:8px;gap:8px}.inventory-history-list>div,.inventory-rule-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid var(--border);border-radius:8px;background:#fbfdfc}.inventory-rule-list>div{flex-wrap:wrap}.inventory-rule-list span{font-weight:600}.inventory-rule-list small{flex:1 1 100%;color:var(--muted);font-size:12px}.inventory-history-list>div>div{display:grid;grid-gap:3px;gap:3px;min-width:0}.inventory-history-list>div>div:last-child{text-align:right}.inventory-history-list span{color:var(--muted);font-size:12px;overflow-wrap:anywhere}.inventory-rules-card{margin-top:16px}.inventory-rules-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.inventory-rules-heading h3{margin-bottom:4px}.inventory-rules-heading p{margin:0;color:var(--muted);font-size:13px}.inventory-rules-editor{display:grid;grid-gap:10px;gap:10px}.inventory-rule-editor{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fbfdfc}.inventory-rule-editor label{display:grid;grid-gap:5px;gap:5px;color:var(--meta);font-size:11px;text-transform:uppercase;letter-spacing:.05em}.inventory-rule-editor label.full{grid-column:1/-1}.inventory-rule-editor input{min-height:42px;border:1px solid #d4dfda;border-radius:8px;background:#fff;padding:8px 10px;font:14px/1.35 var(--body);text-transform:none;letter-spacing:0}.inventory-rule-editor input:focus{outline:2px solid var(--accent);outline-offset:2px}.btn-danger-ghost{background:#fff!important}.btn-danger-ghost,.btn-danger-small{border-color:#efb8b4!important;color:var(--danger)!important}.btn-danger-small{justify-self:start}.inventory-modal-app .stage-actions{margin-top:24px}@media(max-width:767px){.inventory-toolbar{align-items:stretch}.inventory-toolbar .btn{width:100%}.inventory-form-modal,.inventory-form-modal.compact,.inventory-modal-app{width:calc(100vw - 24px)}.inventory-detail-summary{grid-template-columns:1fr}.inventory-detail-actions{display:grid;grid-template-columns:1fr}.inventory-detail-actions .btn{width:100%}.inventory-history-list>div{align-items:flex-start}.inventory-history-list>div>div:last-child{max-width:45%}.inventory-rules-heading{display:grid}.inventory-rules-heading .btn{justify-self:start}.inventory-rule-editor{grid-template-columns:repeat(2,minmax(0,1fr))}.inventory-rule-editor label.full{grid-column:1/-1}.inventory-table{margin-left:-16px;margin-right:-16px}}.board{grid-template-columns:repeat(4,minmax(220px,1fr))}@media(max-width:1100px){.board{grid-template-columns:repeat(4,260px)}}@media(max-width:767px){.board{grid-template-columns:repeat(4,260px)}}.customer-table .table-sort{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-weight:inherit;letter-spacing:inherit;text-transform:inherit;white-space:nowrap}.customer-table .table-sort:hover{color:var(--fg)}.customer-table .table-sort:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.customer-table .table-sort-indicator{font-size:13px;color:var(--accent);line-height:1}.finance-heading{align-items:flex-start}.finance-period-label{display:block;margin-top:6px;color:var(--meta);font-size:12px}.finance-filters{display:flex;align-items:flex-end;gap:10px;margin-bottom:24px;flex-wrap:wrap}.finance-filters>div{display:grid;grid-gap:5px;gap:5px}.finance-filters label{color:var(--muted);font-size:12px;font-weight:600}.finance-filters input{height:44px;border:1px solid var(--border-soft);border-radius:var(--radius);background:var(--surface);color:var(--fg);padding:0 12px;font:inherit}.finance-stats{margin-bottom:24px}.finance-metric strong{font-size:clamp(23px,2.5vw,34px)}.finance-loading{grid-column:1/-1;padding:24px;color:var(--meta);text-align:center;background:var(--surface);border:1px dashed var(--border-soft);border-radius:var(--radius)}.finance-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,1fr);grid-gap:18px;gap:18px}.finance-panel{padding:22px;min-width:0}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.panel-heading h2{font:300 25px/1.1 var(--display);margin:0}.panel-heading p{color:var(--muted);font-size:13px;margin:6px 0 0}.panel-count{color:var(--meta);font-size:12px;white-space:nowrap}.finance-table{margin:0 -22px -22px;border-radius:0 0 var(--radius) var(--radius)}.finance-table table{min-width:650px}.finance-table .money,.money{text-align:right;font-weight:600;white-space:nowrap}.finance-due-list{display:grid;grid-gap:10px;gap:10px}.finance-due-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--border)}.finance-due-row:last-child{border-bottom:0}.finance-due-row>div:first-child{display:grid;grid-gap:3px;gap:3px;min-width:0}.finance-due-row>div:first-child strong{font-size:13px}.finance-due-row>div:first-child span{color:var(--muted);font-size:12px;overflow-wrap:anywhere}.finance-due-amount{display:grid;grid-gap:3px;gap:3px;text-align:right;flex:none}.finance-due-amount>strong{font-size:14px}.finance-due-amount small{font-size:11px}.finance-late{color:var(--danger)}.finance-soon{color:#9a6c13}@media(max-width:1000px){.finance-grid{grid-template-columns:1fr}}@media(max-width:767px){.finance-filters{align-items:stretch;flex-direction:column}.finance-filters .btn,.finance-filters input,.finance-filters>div{width:100%}.finance-grid{gap:14px}.finance-panel{padding:18px}.finance-table{margin:0 -18px -18px}.panel-heading h2{font-size:22px}.finance-due-row{align-items:flex-start}.finance-due-amount{max-width:42%}}.report-page .bar{align-items:flex-end}.report-filters{margin-bottom:20px}.report-filters>div{display:grid;grid-gap:5px;gap:5px}.report-filters label{font-size:12px;color:var(--meta);font-weight:600}.report-calendar-form input,.report-calendar-form select,.report-filters input{height:44px;border:1px solid var(--border-soft);border-radius:8px;background:var(--surface);padding:0 12px;color:var(--fg)}.report-grid-two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:16px;gap:16px;margin-top:16px}.report-panel{padding:20px}.report-panel .panel-heading{margin-bottom:16px}.report-panel .panel-heading h2{font:300 24px/1.2 var(--display);margin:0}.report-panel .panel-heading p{margin:5px 0 0;color:var(--muted);font-size:13px}.report-loading{padding:22px;color:var(--muted)}.report-chart{height:230px;display:flex;align-items:end;gap:14px;padding:18px 8px 0;border-bottom:1px solid var(--border);overflow-x:auto}.report-chart-column{height:100%;min-width:44px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:5px;color:var(--meta);font-size:12px}.report-chart-column i{width:30px;min-height:8px;border-radius:6px 6px 0 0;background:var(--accent);display:block}.report-chart-value{font-size:11px;color:var(--fg)}.report-stage-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:8px;gap:8px}.report-stage-grid>div{min-height:104px;display:flex;flex-direction:column;justify-content:space-between;padding:12px;border:1px solid var(--border);border-radius:8px;background:#f7faf8}.report-stage-grid span{font-size:12px;color:var(--muted)}.report-stage-grid strong{font:300 30px var(--display)}.report-duration-summary{display:flex;align-items:baseline;gap:12px;padding:14px;background:#f2f8f4;border-radius:8px;margin-bottom:14px}.report-duration-summary strong{font:400 28px var(--display)}.report-duration-summary span{font-size:12px;color:var(--muted)}.report-duration-list{display:grid;grid-gap:8px;gap:8px}.report-design-row,.report-duration-list>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:8px}.report-design-row span,.report-duration-list span{color:var(--muted);font-size:13px}.report-overdue-list{display:grid;grid-gap:8px;gap:8px}.report-overdue-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #f0d1cd;border-radius:8px;background:#fff9f8}.report-overdue-list div div{display:grid;grid-gap:2px;gap:2px}.report-overdue-list span{font-size:12px;color:var(--muted)}.report-overdue-list small{color:var(--danger)}.report-calendar-panel,.report-category-panel,.report-cost-panel{margin-top:16px}.report-category-list,.report-product-list{display:grid;grid-gap:8px;gap:8px}.report-category-list details,.report-product-list details{border:1px solid var(--border);border-radius:8px;padding:10px 12px;background:#fbfdfc}.report-category-list summary,.report-product-list summary{display:flex;justify-content:space-between;gap:12px;cursor:pointer;list-style:none}.report-category-list summary::-webkit-details-marker,.report-product-list summary::-webkit-details-marker{display:none}.report-category-list summary strong,.report-product-list summary strong{font-size:13px;color:var(--muted)}.report-product-list{margin-top:10px;padding-left:16px}.report-design-list{display:grid;grid-gap:6px;gap:6px;margin-top:8px;padding-left:16px}.report-design-row{background:var(--surface)}.report-design-row div{display:grid;grid-gap:2px;gap:2px}.report-design-row b{font-size:12px;color:var(--muted);white-space:nowrap}.report-calendar-form{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.report-calendar-form label{display:grid;grid-gap:5px;gap:5px;font-size:12px;color:var(--meta);font-weight:600}.report-calendar-form .btn{height:44px}.report-page .detail-note{color:var(--muted);font-size:13px;margin:12px 0 0}.report-cost-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.report-cost-grid>div{display:grid;grid-gap:5px;gap:5px;padding:12px;border:1px solid var(--border);border-radius:8px}.report-cost-grid span{font-size:12px;color:var(--muted)}.report-cost-grid strong{font-size:18px}@media(max-width:1000px){.report-grid-two{grid-template-columns:1fr}}@media(max-width:767px){.report-grid-two{gap:14px}.report-panel{padding:18px}.report-stage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-stage-grid>div:last-child{grid-column:1/-1}.report-cost-grid{grid-template-columns:1fr}.report-calendar-form{align-items:stretch;flex-direction:column}.report-calendar-form .btn,.report-calendar-form input,.report-calendar-form label,.report-calendar-form select{width:100%}}@media print{.report-calendar-panel,.report-filters,.report-page .bar button,.sidebar,.topbar{display:none!important}.app{display:block}.content{padding:0}.report-grid-two,.report-panel{page-break-inside:avoid;break-inside:avoid}.report-category-panel{page-break-before:always;break-before:page}.report-chart{height:180px}}.finance-agent-panel{margin-top:18px;overflow:hidden}.finance-agent-panel .panel-heading{padding:22px 24px 16px}.finance-agent-panel .panel-heading p{max-width:700px}.finance-agent-table{overflow-x:auto}.finance-agent-table table{min-width:760px}.finance-agent-table td,.finance-agent-table th{white-space:nowrap}.agent-tier{display:inline-flex;align-items:center;padding:4px 9px;border-radius:999px;background:#edf4ee;color:#3d715b;font-size:11px;font-weight:700}.finance-agent-table td.money{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.finance-agent-table tbody tr:hover{background:#f7f9f6}@media(max-width:767px){.finance-agent-panel .panel-heading{padding:18px 16px 14px}.finance-agent-table table{min-width:720px}}.table-sort{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;color:inherit;font:inherit;font-size:inherit;font-weight:inherit;text-transform:inherit;letter-spacing:inherit;padding:0;cursor:pointer;white-space:nowrap}.table-sort:hover{color:var(--accent)}.table-sort:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.mobile-table-sort{display:none!important}.table-wrap th .table-sort{min-height:32px}@media(max-width:767px){.mobile-table-sort{display:flex!important;justify-content:flex-start;margin-bottom:10px}.table-wrap{margin-left:0;margin-right:0;border:0;box-shadow:none;background:transparent;overflow:visible}.table-wrap table{display:block;min-width:0}.table-wrap thead{display:none}.table-wrap tbody{display:grid;grid-gap:12px;gap:12px}.table-wrap tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px 14px;gap:10px 14px;padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.table-wrap td{display:block;min-width:0;padding:0;border:0;font-size:13px;overflow-wrap:anywhere}.table-wrap td:before{display:block;margin-bottom:3px;color:var(--meta);font-size:10px;text-transform:uppercase;letter-spacing:.07em}.table-wrap td:first-child:before{content:"Nomor order"}.table-wrap td:nth-child(2):before{content:"Pelanggan"}.table-wrap td:nth-child(3):before{content:"Produk"}.table-wrap td:nth-child(4):before{content:"Tahap"}.table-wrap td:nth-child(5):before{content:"Estimasi"}.table-wrap td:nth-child(6):before{content:"Pembayaran"}.table-wrap td:nth-child(7){grid-column:1/-1;margin-top:2px;padding-top:10px;border-top:1px solid var(--border)}.table-wrap td:nth-child(7):before{content:"Aksi"}.table-wrap td.row-actions{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.table-wrap td.row-actions:before{flex-basis:100%}.table-wrap .btn-small{min-height:38px;padding:0 12px}.customer-table td:first-child:before{content:"Nama pelanggan"}.customer-table td:nth-child(2):before{content:"Nomor WhatsApp"}.customer-table td:nth-child(3):before{content:"Tier"}.customer-table td:nth-child(4):before{content:"Total transaksi"}.customer-table td:nth-child(5):before{content:"Riwayat pesanan"}.customer-table td:nth-child(6):before{content:"Terdaftar"}.customer-table td:nth-child(7):before{content:"Aksi"}.inventory-table td:first-child:before{content:"Bahan"}.inventory-table td:nth-child(2):before{content:"Kategori"}.inventory-table td:nth-child(3):before{content:"Satuan"}.inventory-table td:nth-child(4):before{content:"Stok saat ini"}.inventory-table td:nth-child(5):before{content:"Minimum"}.inventory-table td:nth-child(6):before{content:"Harga terakhir"}.inventory-table td:nth-child(7){grid-column:auto;margin-top:0;padding-top:0;border-top:0}.inventory-table td:nth-child(7):before{content:"Status"}.inventory-table td:nth-child(8){grid-column:1/-1;margin-top:2px;padding-top:10px;border-top:1px solid var(--border)}.inventory-table td:nth-child(8):before{content:"Aksi";flex-basis:100%}.finance-table td:first-child:before{content:"Tanggal"}.finance-table td:nth-child(2):before{content:"Order"}.finance-table td:nth-child(3):before{content:"Pelanggan"}.finance-table td:nth-child(4):before{content:"Metode"}.finance-table td:nth-child(5):before{content:"Jumlah"}.finance-agent-table td:first-child:before{content:"Agen"}.finance-agent-table td:nth-child(2):before{content:"Tier"}.finance-agent-table td:nth-child(3):before{content:"Total pesanan"}.finance-agent-table td:nth-child(4):before{content:"Komisi siap dicairkan"}.finance-agent-table td:nth-child(5):before{content:"Belum dicairkan"}.finance-agent-table td:nth-child(6):before{content:"Sudah dicairkan"}}.report-seasonality{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;margin-top:14px}.report-seasonality>div{display:grid;grid-gap:4px;gap:4px;padding:11px 12px;border:1px solid var(--border);border-radius:8px;background:#fbfdfc}.report-seasonality span{font-size:12px;color:var(--muted)}.report-seasonality strong{font-size:14px}.report-seasonality small{font-size:12px;color:var(--meta)}.report-chart-column.is-busy i{background:#0f7f5a}.report-chart-column.is-quiet i{background:#d4a843}.report-chart-column.is-quiet small{color:#946f1c}@media(max-width:767px){.report-seasonality{grid-template-columns:1fr}}.pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.pagination-info{color:var(--meta);font-size:13px}.pagination-actions{display:flex;align-items:center;gap:10px}.pagination-actions>span{min-width:108px;text-align:center;color:var(--muted);font-size:13px;white-space:nowrap}.pagination .btn-small:disabled{opacity:.45;cursor:not-allowed}@media(max-width:767px){.pagination{display:grid;grid-gap:11px;gap:11px;margin-left:0;margin-right:0}.pagination-actions{justify-content:space-between;gap:8px}.pagination-actions>span{min-width:auto;font-size:12px}.pagination-actions .btn-small{min-height:40px;padding:0 10px}.modal-backdrop{z-index:35}.detail-modal{z-index:40}.report-grid-two,.report-grid-two>*{min-width:0}.report-panel{min-width:0;overflow:hidden}.report-panel .panel-heading p{overflow-wrap:anywhere}.report-chart{width:100%;min-width:0;overflow-x:auto}.report-chart-column{flex:0 0 44px}}.catalog-page{display:grid;grid-gap:14px;gap:14px}.catalog-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px}.catalog-hero h2{margin:0 0 6px;font-size:20px}.catalog-hero p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.catalog-layout{display:grid;grid-template-columns:280px minmax(0,1fr);grid-gap:14px;gap:14px;align-items:start}.catalog-categories,.catalog-detail{padding:20px}.catalog-category-list{display:grid;grid-gap:7px;gap:7px;margin-top:18px}.catalog-category-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid transparent;border-radius:9px;background:transparent;padding:12px;text-align:left;color:var(--ink)}.catalog-category-item:hover{background:#f5f8f5}.catalog-category-item.selected{border-color:#9db7aa;background:#eef5f0;color:var(--pine)}.catalog-category-item span{display:grid;grid-gap:4px;gap:4px;min-width:0}.catalog-category-item strong{font-size:13px}.catalog-category-item small{color:var(--muted);font-size:11px}.catalog-category-item em{font-style:normal;color:#47745a;font-size:10px;font-weight:700;white-space:nowrap}.catalog-category-item em.inactive{color:#8a908b}.catalog-inline-form{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;padding:16px 20px}.catalog-inline-form label{display:grid;grid-gap:6px;gap:6px;min-width:220px;color:#536059;font-size:12px;font-weight:700}.catalog-inline-form input,.catalog-modal-app input,.catalog-modal-app select,.catalog-modal-app textarea{border:1px solid #dce1dc;border-radius:7px;background:#fff;padding:10px 11px;color:var(--ink);outline:0}.catalog-inline-form input:focus,.catalog-modal-app input:focus,.catalog-modal-app select:focus,.catalog-modal-app textarea:focus{border-color:#709486;box-shadow:0 0 0 3px #7094861f}.catalog-detail .panel-heading{align-items:flex-start}.detail-kicker{margin:0 0 4px;color:var(--orange);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.catalog-summary{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;margin:19px 0 23px}.catalog-summary>div{display:grid;grid-gap:5px;gap:5px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#f8faf7}.catalog-summary span{color:var(--muted);font-size:11px}.catalog-summary strong{font-size:14px}.catalog-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.catalog-section-heading h3{margin:0 0 4px;font-size:16px}.catalog-section-heading p{margin:0;color:var(--muted);font-size:11px}.catalog-design-list{display:grid;grid-gap:12px;gap:12px}.catalog-design-card{border:1px solid var(--line);border-radius:10px;background:#fff;padding:15px}.catalog-design-card.is-inactive{opacity:.7;background:#fafbf9}.catalog-design-top{display:grid;grid-template-columns:82px minmax(0,1fr) auto;grid-gap:13px;gap:13px;align-items:start}.catalog-design-image{width:82px;height:82px;border:1px dashed #cbd6ce;border-radius:8px;background:#f5f8f5;display:grid;place-items:center;overflow:hidden;color:var(--muted);font-size:10px;text-align:center}.catalog-design-image img{width:100%;height:100%;object-fit:cover}.catalog-design-info{min-width:0}.catalog-design-title{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.catalog-code{display:block;color:var(--orange);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.catalog-design-title h4{margin:3px 0 5px;font-size:15px}.catalog-design-info p{margin:3px 0 7px;color:#536059;font-size:12px;line-height:1.5}.catalog-design-info>small{color:var(--muted);font-size:11px}.catalog-design-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.catalog-size-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px;padding-top:13px;border-top:1px solid var(--line);color:#536059;font-size:12px}.catalog-size-table{overflow-x:auto;margin-top:8px}.catalog-size-table table{width:100%;min-width:590px;border-collapse:collapse;font-size:11px}.catalog-size-table th{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.03em;text-align:left}.catalog-size-table td,.catalog-size-table th{padding:9px 7px;border-top:1px solid var(--line);white-space:nowrap}.catalog-size-table td:nth-child(3){font-weight:700;color:var(--pine)}.catalog-size-table .row-actions{display:flex;gap:6px}.catalog-empty-note{margin:10px 0 0;padding:13px;border:1px dashed #d6dcd7;border-radius:8px;color:var(--muted);font-size:11px}.catalog-inactive-badge{background:#f0f1ef!important;color:#737c76!important}.catalog-modal-app{width:min(650px,calc(100vw - 28px));max-height:calc(100vh - 28px);overflow:auto}.catalog-modal-app.compact{width:min(560px,calc(100vw - 28px))}.catalog-modal-app .edit-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.catalog-modal-app .edit-grid label{display:grid;grid-gap:6px;gap:6px;color:#536059;font-size:12px;font-weight:700}.catalog-modal-app .edit-grid label.full{grid-column:1/-1}.catalog-modal-app textarea{min-height:88px;resize:vertical}.catalog-modal-app .field-help{color:var(--muted);font-size:11px;font-weight:400}.catalog-modal-app .stage-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.catalog-page .notice{margin:0}.catalog-page .notice.error{color:#9a4e3b;background:#f8e9e5;border-color:#ecc9bf}@media(max-width:800px){.catalog-layout{grid-template-columns:1fr}.catalog-hero{align-items:stretch;flex-direction:column}.catalog-hero .btn{width:100%}.catalog-inline-form{align-items:stretch;flex-direction:column}.catalog-inline-form label{min-width:0}.catalog-summary{grid-template-columns:1fr}.catalog-section-heading{align-items:stretch;flex-direction:column}.catalog-section-heading .btn{width:100%}.catalog-design-top{grid-template-columns:64px minmax(0,1fr)}.catalog-design-image{width:64px;height:64px}.catalog-design-actions{grid-column:1/-1;justify-content:flex-start}.catalog-design-actions .btn-small{flex:1 1}.catalog-size-heading{align-items:flex-start;flex-direction:column}.catalog-size-heading .btn-small{width:100%}.catalog-modal-app .edit-grid{grid-template-columns:1fr}.catalog-modal-app .edit-grid label.full{grid-column:auto}}.catalog-photo-picker{min-width:0;align-content:start;padding:2px 0}.catalog-photo-picker input{width:100%;font-size:11px;font-weight:400}.catalog-photo-picker small{color:var(--muted);font-size:10px;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.catalog-photo-remove-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.catalog-photo-remove-row small{color:var(--muted);font-size:11px}.catalog-flow-note{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 20px;padding:12px 14px;border:1px solid #cfe2d8;border-radius:9px;background:#f2faf5;color:var(--accent);font-size:12px}.catalog-flow-note strong{font-size:12px}.catalog-flow-note span{color:var(--muted);text-align:right}.catalog-size-heading>div{display:grid;grid-gap:3px;gap:3px}.catalog-size-help{color:var(--muted);font-size:10px;font-weight:400}.catalog-detail-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.btn-danger{background:#fff5f4;color:var(--danger);border-color:#efb8b4}.btn-danger:hover{background:#fee9e7}@media(max-width:800px){.catalog-detail-actions{width:100%;justify-content:stretch}.catalog-detail-actions .btn{flex:1 1}}.inventory-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.inventory-section-heading h3{margin-bottom:4px}.inventory-section-heading p{margin:0;color:var(--muted);font-size:13px}.inventory-chart-range{color:var(--meta);font-size:12px}.inventory-price-chart{margin-top:12px;border:1px solid var(--border);border-radius:8px;padding:12px;background:#fbfdfc}.inventory-price-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px;margin-bottom:8px}.inventory-price-summary span{display:grid;grid-gap:2px;gap:2px;color:var(--meta);font-size:11px}.inventory-price-summary strong{color:var(--fg);font-size:13px}.inventory-price-chart svg{display:block;width:100%;height:auto;min-height:170px}.inventory-chart-grid{stroke:var(--border);stroke-width:1}.inventory-chart-line{stroke:var(--accent);stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.inventory-chart-point{fill:var(--accent);stroke:var(--surface);stroke-width:2}.inventory-chart-labels{display:flex;justify-content:space-between;gap:10px;color:var(--meta);font-size:11px}.inventory-purchase-row{align-items:center!important}.inventory-purchase-main,.inventory-purchase-meta{display:grid;grid-gap:3px;gap:3px;min-width:0}.inventory-purchase-actions{display:flex;gap:7px;flex-wrap:wrap;margin-left:auto}.inventory-purchase-meta{text-align:right}@media(max-width:767px){.inventory-price-summary{grid-template-columns:1fr}.inventory-purchase-row{align-items:flex-start!important;flex-wrap:wrap}.inventory-purchase-actions{width:100%;margin-left:0}.inventory-purchase-meta{text-align:left}}.inventory-history-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px;color:var(--meta);font-size:12px}.inventory-history-pagination>div{display:flex;align-items:center;gap:8px}.inventory-history-pagination .btn-small:disabled{opacity:.45;cursor:not-allowed}@media(max-width:767px){.inventory-history-pagination{align-items:stretch;flex-direction:column}.inventory-history-pagination>div{justify-content:space-between}.inventory-history-pagination .btn-small{min-height:40px}}.whatsapp-page{display:grid;grid-gap:18px;gap:18px}.whatsapp-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.whatsapp-intro h2{margin:0 0 4px;font:400 22px/1.2 var(--display)}.whatsapp-card>p,.whatsapp-intro p,.whatsapp-section-head p{margin:0;color:var(--muted);font-size:14px}.whatsapp-tabs{display:flex;gap:8px;overflow-x:auto;border-bottom:1px solid var(--border);padding-bottom:5px}.template-stage-tabs button,.whatsapp-tabs button{min-height:42px;padding:0 16px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--muted);white-space:nowrap}.template-stage-tabs button.active,.whatsapp-tabs button.active{border-color:var(--accent);background:#edf6f1;color:var(--fg)}.whatsapp-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.whatsapp-card,.whatsapp-logs,.whatsapp-templates{padding:20px}.whatsapp-card h2,.whatsapp-section-head h2{margin:0 0 4px;font:400 20px/1.25 var(--display)}.whatsapp-card>p{margin-bottom:20px}.whatsapp-card>label:not(.whatsapp-switch-row){display:grid;grid-gap:6px;gap:6px;margin-top:16px;font-size:13px;font-weight:600}.whatsapp-card input:not([type=checkbox]),.whatsapp-card select,.whatsapp-log-filters input,.whatsapp-log-filters select{min-width:0;height:44px;border:1px solid var(--border-soft);border-radius:8px;padding:0 12px;background:var(--surface);color:var(--fg);font:inherit;font-weight:400}.whatsapp-help{display:block;margin-top:5px;color:var(--meta);font-size:12px}.whatsapp-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.whatsapp-clear{margin-top:8px;color:var(--danger)}.whatsapp-connection,.whatsapp-switch-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;border-bottom:1px solid var(--border)}.whatsapp-connection>div,.whatsapp-switch-row span{display:grid;grid-gap:3px;gap:3px}.whatsapp-connection strong,.whatsapp-switch-row strong{font-size:14px}.whatsapp-connection small,.whatsapp-switch-row small{color:var(--muted);font-size:12px}.edit-wa-card input,.template-active input,.wa-order-toggle input,.whatsapp-switch-row input{width:42px;height:24px;accent-color:var(--accent);cursor:pointer}.whatsapp-connection{padding:20px 0}.whatsapp-test-note{padding-top:18px}.whatsapp-test-note p{margin:5px 0 0;color:var(--muted);font-size:13px}.whatsapp-loading{padding:24px;color:var(--muted)}.whatsapp-connected{background:#e3f1eb;color:#17573f}.whatsapp-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.template-stage-tabs{display:flex;gap:8px;overflow-x:auto;margin:18px 0}.template-stage-tabs button{border-color:var(--border);background:var(--surface)}.template-stage-tabs button.active{background:var(--accent);color:#fff}.template-editor{max-width:720px;border:1px solid var(--border);border-radius:10px;padding:18px}.template-editor-foot,.template-editor-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.template-editor-head{color:var(--meta);font-size:12px;text-transform:uppercase;letter-spacing:.06em}.template-active{display:flex;align-items:center;gap:8px;color:var(--accent);font-size:12px;font-weight:600;text-transform:none;letter-spacing:0}.template-active input{width:18px;height:18px}.template-editor textarea{display:block;width:100%;min-height:130px;margin:14px 0;padding:12px;border:1px solid var(--border-soft);border-radius:8px;resize:vertical;font:inherit}.template-editor-foot{align-items:flex-start;color:var(--muted);font-size:12px}.template-editor-foot small{color:var(--meta);text-align:right}.template-preview-grid{display:grid;grid-template-columns:1.2fr 1fr;grid-gap:16px;gap:16px;margin-top:16px}.template-placeholders,.template-preview{padding:16px;border:1px solid var(--border);border-radius:9px}.template-preview{background:#eff7f3}.template-preview h3{margin:0 0 8px;font-size:18px;font-weight:500}.template-preview p{margin:0 0 8px;font-size:15px}.template-placeholders p,.template-placeholders small,.template-preview small{color:var(--muted);font-size:12px}.template-placeholders>strong{font-size:13px}.template-placeholders p{line-height:1.8}.template-placeholders code{font:inherit;color:var(--accent)}.whatsapp-save-row{display:flex;justify-content:flex-end;margin-top:16px}.whatsapp-log-filters{grid-template-columns:minmax(200px,1fr) auto auto;margin:18px 0 12px}.whatsapp-log-filters,.whatsapp-log-list{display:grid;grid-gap:8px;gap:8px}.whatsapp-log-item{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:14px;border:1px solid var(--border);border-radius:8px}.whatsapp-log-item>div:first-child{min-width:0}.whatsapp-log-item strong{font-size:14px}.whatsapp-log-item p{margin:3px 0 7px;color:var(--muted);font-size:13px;overflow-wrap:anywhere}.whatsapp-log-item small{display:block;color:var(--meta);font-size:11px}.whatsapp-log-error{margin-top:5px;color:var(--danger)!important}.whatsapp-log-actions{display:grid;justify-items:end;grid-gap:8px;gap:8px;flex:0 0 auto}.whatsapp-status-terkirim{background:#e3f1eb;color:#17573f}.whatsapp-status-gagal{background:#fff0ee;color:#a4443a}.whatsapp-status-antre{background:#f3f1e8;color:#79652d}.order-whatsapp-logs{display:grid;grid-gap:8px;gap:8px}.order-whatsapp-logs article{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fbfdfc}.order-whatsapp-logs p{margin:4px 0;color:var(--muted);font-size:13px}.order-whatsapp-logs small{color:var(--meta);font-size:11px}.edit-wa-card>label,.wa-order-toggle{display:flex!important;align-items:center;justify-content:space-between;gap:14px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#f7faf8}.edit-wa-card label>span,.wa-order-toggle>span{display:grid;grid-gap:3px;gap:3px}.edit-wa-card strong,.wa-order-toggle strong{font-size:13px}.edit-wa-card small,.wa-order-toggle small{color:var(--muted);font-size:11px;font-weight:400}.edit-wa-card{margin:18px 0}.edit-wa-card input{flex:0 0 42px}@media(max-width:800px){.template-preview-grid,.whatsapp-settings-grid{grid-template-columns:1fr}.whatsapp-intro,.whatsapp-section-head{align-items:stretch;flex-direction:column}.whatsapp-intro>.badge,.whatsapp-section-head>.badge{align-self:flex-start}.whatsapp-card,.whatsapp-logs,.whatsapp-templates{padding:16px}.whatsapp-actions{flex-direction:column}.whatsapp-actions .btn{width:100%}.template-editor-foot{flex-direction:column}.template-editor-foot small{text-align:left}.whatsapp-log-filters{grid-template-columns:1fr}.whatsapp-log-item{flex-direction:column}.whatsapp-log-actions{display:flex;align-items:center;justify-items:start;flex-wrap:wrap}.order-whatsapp-logs article{flex-direction:column}.whatsapp-save-row .btn{width:100%}}.whatsapp-status-dilewati{background:#eef1f1;color:#50615f}.whatsapp-log-reason{margin-top:5px;color:var(--muted)!important}.order-whatsapp-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.order-whatsapp-head h3{margin-bottom:3px}.order-whatsapp-head p,.order-whatsapp-hint{margin:0;color:var(--muted);font-size:13px}.order-whatsapp-logs small{display:block;overflow-wrap:anywhere}.order-whatsapp-section .success{margin-bottom:12px}@media(max-width:480px){.order-whatsapp-head{flex-direction:column}.order-whatsapp-head .btn-small{width:100%}}