@font-face{font-family:Pretendard;src:url(/assets/Pretendard-Regular-BinLXi77.otf) format("opentype");font-weight:400;font-display:swap}@font-face{font-family:Pretendard;src:url(/assets/Pretendard-Medium-DYrAMPlT.otf) format("opentype");font-weight:500;font-display:swap}@font-face{font-family:Pretendard;src:url(/assets/Pretendard-SemiBold-BRaL1aMZ.otf) format("opentype");font-weight:600;font-display:swap}@font-face{font-family:Pretendard;src:url(/assets/Pretendard-Bold-UAFkf6wV.otf) format("opentype");font-weight:700;font-display:swap}:root{font-family:Pretendard,sans-serif;color:#212121;background:#f2f0eb;font-synthesis:none;--green:#00754a;--heading:#006241;--house:#1e3932;--light:#d4e9e2;--muted:#686868;--line:#e7e7e7;--input:#d6dbde;--red:#b3261e;--warm:#f2f0eb;--shadow:0 0 .5px #00000024,0 1px 1px #0000003d;font-size:16px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit;letter-spacing:-.01em}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button,input,select,textarea{outline-offset:3px}button:focus-visible,a:focus-visible{outline:2px solid var(--green)}input:focus,select:focus,textarea:focus{outline:2px solid var(--light);border-color:var(--green)}button{touch-action:manipulation}input,select,textarea{min-width:0;max-width:100%;border:1px solid var(--input);border-radius:4px;background:#fff;color:inherit;padding:7px 9px;font-size:.8125rem;line-height:1.4}input,select{min-height:34px}input[type=number]{font-variant-numeric:tabular-nums}input[type=file]{width:100%;border-style:dashed;padding:10px}textarea{resize:vertical}label{display:flex;flex-direction:column;gap:5px;font-size:.75rem;color:var(--muted)}h1,h2,h3,p{margin:0}h1{color:var(--heading);font-size:1.3125rem;font-weight:600;letter-spacing:-.01em}h2{font-size:.875rem;font-weight:700}h3,.eyebrow{font-size:.75rem;font-weight:700;color:var(--muted);letter-spacing:.025em}b,.strong{font-weight:600}small{font-size:.75rem}fieldset{margin:0;padding:0;border:0;min-width:0}fieldset:disabled{opacity:.65}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-50px;left:10px;background:#fff;padding:10px;z-index:1000}.skip-link:focus{top:10px}.app-shell{min-height:100vh;display:flex}.sidebar{width:196px;flex:none;background:var(--house);color:#fff;display:flex;flex-direction:column;padding:22px 0 18px;position:sticky;top:0;height:100dvh}.brand{font-size:1.0625rem;font-weight:600;letter-spacing:-.01em}.sidebar .brand{padding:0 18px 20px}.nav-caption{padding:0 18px 8px;font-size:.75rem;font-weight:700;color:#ffffff80;letter-spacing:.04em}.sidebar nav .nav-caption{padding-top:20px}.sidebar nav button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 18px;border:0;text-align:left;background:transparent;color:#ffffffba;font-size:.875rem;min-height:38px}.sidebar nav button:hover{background:#ffffff19}.sidebar nav button.active{color:#fff;background:#ffffff24;box-shadow:inset 3px 0 var(--light);font-weight:600}.sidebar nav button span{font-size:.75rem;color:#fff8;font-variant-numeric:tabular-nums}.sidebar-bottom{margin-top:auto;padding:0 18px;display:flex;flex-direction:column;gap:9px}.sidebar-bottom p{font-size:.75rem;line-height:1.7;color:#ffffff80}.sidebar-bottom button{align-self:flex-start;background:none;border:none;padding:0;color:#ffffffb3;font-size:.8125rem}.sidebar-bottom button:hover{color:#fff}main{flex:1;min-width:0;padding:24px 26px 56px}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px}.page-header p{font-size:.8125rem;color:var(--muted);margin-top:4px}.actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;gap:6px;flex:none;background:var(--green);border:1px solid var(--green);color:#fff;border-radius:50px;padding:8px 20px;font-size:.875rem;font-weight:600;line-height:1.4;transition:background .12s,transform .1s}.button:hover:not(:disabled){background:var(--heading)}.button:active:not(:disabled){transform:scale(.97)}.button.small{padding:6px 15px;font-size:.8125rem;min-height:32px}.button.outline{background:transparent;color:var(--green);border-color:var(--input)}.button.outline:hover:not(:disabled){background:var(--light);border-color:var(--green)}.button.dark{color:#333}.button.danger{background:var(--red);border-color:var(--red)}.text-button{background:none;border:0;padding:3px;color:var(--muted);font-size:.8125rem}.text-button:hover{color:var(--green)}.link{color:var(--green);text-decoration:underline}.delete{margin-left:auto;color:var(--red);text-decoration:underline}.muted{color:var(--muted)}.red{color:var(--red)}.filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:14px}.search input{width:240px}.filter-group{display:flex;align-items:center;flex-wrap:wrap;gap:5px;padding-left:8px;border-left:1px solid #00000019}.filter-group>span,.month-filter>span{font-size:.75rem;color:var(--muted);font-weight:700;margin-right:3px}.filter-pill{border:1px solid var(--input);background:#fff;border-radius:50px;padding:5px 12px;font-size:.75rem;color:var(--muted)}.filter-pill.active{background:var(--green);border-color:var(--green);color:#fff;font-weight:600}.filter-pill:hover:not(.active){border-color:var(--green)}.month-filter{display:flex;flex-direction:row;align-items:center;gap:4px}.month-filter input,.inline-label input{font-size:.75rem}.card{background:#fff;border-radius:12px;box-shadow:var(--shadow);overflow:hidden}.table-scroll{overflow:auto;max-width:100%}table{width:100%;border-collapse:collapse;font-size:.8125rem;font-variant-numeric:tabular-nums;text-align:left}th{padding:11px 14px;font-size:.75rem;color:var(--muted);font-weight:700;white-space:nowrap;background:#fff;border-bottom:1px solid var(--line)}td{height:40px;padding:8px 14px;border-bottom:1px solid var(--line);white-space:nowrap}.deals-table td{padding:9px 13px}.deals-table th{padding:11px 13px}tbody tr:last-child td{border-bottom:0}.numeric{text-align:right}.clickable{cursor:pointer}.clickable:hover{background:#faf9f7}.cell-link{font:inherit;color:inherit;text-align:inherit;background:none;border:0;padding:0}.cell-link:focus-visible{border-radius:2px}.truncate{max-width:240px;overflow:hidden;text-overflow:ellipsis}.cancelled .truncate{text-decoration:line-through}.column-heading{display:inline-flex;align-items:center;gap:2px}.column-heading button{border:0;background:none;font:inherit;color:inherit;padding:0}.column-heading .move{font-size:.875rem;opacity:0;padding:0 2px}.column-heading .move:disabled{visibility:hidden}th:hover .move,th:focus-within .move{opacity:1}.column-heading .sort:hover{color:var(--heading)}.table-summary{display:flex;flex-wrap:wrap;gap:22px;padding:12px 14px;border-top:1px solid var(--line);background:#f9f9f9;font-size:.75rem;color:var(--muted);font-variant-numeric:tabular-nums}.table-summary b{color:#212121}.table-summary .red{color:var(--red)}.table-help{font-size:.75rem;color:var(--muted);margin-top:12px}.empty{padding:26px 14px;text-align:center;font-size:.8125rem;color:var(--muted);white-space:normal}.chip{display:inline-block;padding:4px 10px;border-radius:50px;font-size:.75rem;font-weight:700;white-space:nowrap}.status-inquiry{background:#0000000f;color:var(--muted)}.status-quoted{background:#e6eefa;color:#1c4e9c}.status-confirmed{background:var(--light);color:var(--heading)}.status-done{background:#3d3d3d;color:#fff}.status-cancelled{background:transparent;color:var(--muted);text-decoration:line-through}.dot-label{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;color:var(--muted);font-size:.75rem}.dot-label i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--dot)}.pay-unpaid{--dot:#b3261e}.pay-partial,.ship-sent{--dot:#c77700}.pay-paid,.ship-arrived{--dot:var(--green)}.ship-ready{--dot:#777}.chip.pay-unpaid{color:#b3261e;background:#fbe9e7}.chip.pay-partial{color:#8a5200;background:#fdf0dd}.chip.pay-paid{color:var(--heading);background:var(--light)}.invoice-badge,.auto-badge{font-size:.75rem;font-weight:600;padding:2px 5px;background:#0000000f;border-radius:3px;color:var(--muted)}.vat{font-size:.6875rem;color:var(--muted);margin-left:3px}.modal{padding:0;border:0;border-radius:12px;width:600px;max-width:calc(100vw - 48px);max-height:calc(100dvh - 64px);background:#fff;color:inherit;box-shadow:var(--shadow),0 12px 32px #0000002e;overflow:hidden}.modal[open]{display:flex;flex-direction:column;animation:appear .15s ease}.modal::backdrop{background:#00000047}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid var(--line);flex:none}.modal-header h2{font-size:.9375rem;font-weight:600;color:var(--heading);overflow-wrap:anywhere}.modal-header .eyebrow{margin-bottom:4px}.modal-header .text-button{white-space:nowrap}.modal-body{overflow:auto;padding:18px 20px 24px;min-height:0;display:flex;flex-direction:column;gap:16px}.modal-footer{padding:14px 20px;border-top:1px solid var(--line);display:flex;align-items:center;gap:8px;flex:none}.form-section{display:flex;flex-direction:column;gap:10px;margin-bottom:22px}.form-section:last-child{margin-bottom:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.full-width{grid-column:1/-1}.money-input{text-align:right;font-size:.9375rem;font-weight:600}.required{color:var(--green)}.toggles{display:flex;flex-wrap:wrap;gap:6px}.toggle{display:inline-flex;align-items:center;gap:7px;border-radius:50px;padding:6px 12px;font-size:.75rem;border:1px solid var(--input);background:#fff;color:var(--muted)}.toggle i{width:7px;height:7px;border-radius:50%;background:#0003}.toggle.selected{background:var(--light);color:var(--heading);border-color:var(--green)}.toggle.selected i{background:var(--green)}.section-heading{display:flex;align-items:center;justify-content:space-between}.payment-list{display:flex;flex-direction:column;gap:10px}.payment-row{display:grid;grid-template-columns:125px 95px 95px minmax(55px,1fr) auto;gap:5px;align-items:end;padding:5px;border-radius:4px}.payment-row:has(.auto-badge){grid-template-columns:125px 90px 95px minmax(40px,1fr) auto auto}.payment-row input,.payment-row select{width:100%;padding:6px 5px;font-size:.75rem}.payment-row.automatic{background:#f9f9f9}.payment-row>.text-button{font-size:1.125rem;min-height:32px}.auto-badge{align-self:end;line-height:28px}.payment-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.8125rem;padding-top:10px;border-top:1px solid var(--line)}.payment-summary b{margin-left:6px;font-variant-numeric:tabular-nums}.confirm-strip{display:flex;flex-direction:column;gap:12px;width:100%;font-size:.875rem}.error{background:#fcf0ee;border:1px solid #d6847e;color:var(--red);padding:10px 12px;border-radius:4px;font-size:.8125rem;line-height:1.5;overflow-wrap:anywhere}.page-error{margin-bottom:14px}.notice{padding:10px 14px;background:var(--light);color:var(--heading);border-radius:6px;font-size:.8125rem;margin-bottom:14px}.csv-modal{width:480px}.csv-modal .modal-body>.button{align-self:flex-end}.csv-modal p{font-size:.8125rem;line-height:1.6}.import-result{display:flex;flex-direction:column;gap:12px}.import-result .link{align-self:flex-start}.import-result table{border:1px solid var(--line)}.wrap{white-space:normal}.reports{display:flex;flex-direction:column;gap:24px}.reports .page-header{margin-bottom:0;flex-wrap:wrap}.reports h2{display:flex;align-items:baseline;gap:8px;margin-bottom:10px}.reports h2 small{font-weight:400;color:var(--muted)}.reports table{min-width:620px}.reports tfoot{font-weight:600;background:#f9f9f9;border-top:1px solid #00000033}.reports tfoot td{height:38px}.total-col{border-left:1px solid var(--line)}.report-cell{padding:0}.report-cell button{display:block;width:100%;padding:12px 14px;text-align:right;background:none;border:0;font:inherit;color:inherit}.report-cell button:hover{background:var(--light)}.section-total{margin-left:auto;color:var(--heading);font-size:.875rem}.lint-row{display:flex;align-items:baseline;gap:14px;width:100%;border:0;border-bottom:1px solid var(--line);border-left:3px solid var(--red);padding:12px 14px;background:#fff;text-align:left;font-size:.8125rem;line-height:1.5}.lint-row:hover{background:#faf9f7}.lint-row b{width:140px;flex:none}.lint-row>span:first-of-type{width:200px;flex:none;color:var(--muted)}.login-page{min-height:100dvh;display:grid;place-items:center;padding:24px}.login-card{width:360px;max-width:100%;display:flex;flex-direction:column;gap:16px;padding:32px;background:#fff;border-radius:12px;box-shadow:var(--shadow)}.login-card .brand{color:var(--heading);margin-bottom:8px}.login-card h1{font-size:1.125rem}.login-card p{font-size:.875rem;color:var(--muted)}.login-card input{height:40px;font-size:.875rem}.login-card .button{width:100%}@keyframes appear{0%{opacity:.5;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@media(hover:none){.column-heading .move{opacity:1}}@media(max-width:900px){.sidebar{width:158px}main{padding:20px 18px 40px}.page-header{align-items:flex-start}.reports .actions{gap:6px}.lint-row{flex-wrap:wrap}.lint-row>span:last-child{width:100%}}@media(max-width:640px){.app-shell{display:block}.sidebar{width:100%;height:auto;position:relative;padding:15px 0 0}.sidebar .brand{padding:0 16px 12px}.nav-caption{display:none}.sidebar nav{display:flex;overflow:auto;padding:0 6px}.sidebar nav button{width:auto;min-width:62px;justify-content:center;gap:7px;padding:11px 12px;white-space:nowrap}.sidebar nav button.active{box-shadow:inset 0 -3px var(--light)}.sidebar-bottom{position:absolute;top:15px;right:0}.sidebar-bottom p{display:none}main{padding:20px 14px 36px}.page-header{gap:10px}.page-header p{max-width:230px;line-height:1.5}.search,.search input{width:100%}.filter-group{padding-left:0;border:0}.filters{gap:10px}.table-summary{gap:12px}.modal{max-width:calc(100vw - 20px);max-height:calc(100dvh - 24px)}.modal-header{padding:15px}.modal-body{padding:16px 15px}.modal-footer{padding:14px 15px}.form-grid{gap:12px}.payment-row,.payment-row:has(.auto-badge){grid-template-columns:1fr 1fr auto}.payment-row label:first-child{grid-column:1}.payment-row label:nth-child(3){grid-column:1}.payment-row .payment-memo{grid-column:2}.payment-row>.text-button{grid-column:3;grid-row:1/3}.payment-row .auto-badge{grid-column:1/3;line-height:1.5;justify-self:start}.reports h2{flex-wrap:wrap}.reports .page-header{display:block}.reports .actions{margin-top:12px}.section-total{margin-left:0}.lint-row b,.lint-row>span:first-of-type{width:auto}.table-help{line-height:1.6}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
