
:root{--ink:#162d2b;--muted:#71817d;--line:#e2e8e3;--green:#166c56;--paper:#f5f7f3}*{box-sizing:border-box}body{margin:0;font:14px/1.5 system-ui,Segoe UI,sans-serif;color:var(--ink);background:var(--paper)}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus,select:focus{outline:2px solid #80b8a2;outline-offset:2px}header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 34px;border-bottom:1px solid var(--line);background:#fff}.identity{display:flex;gap:14px;align-items:center}.mark{width:44px;height:44px;display:grid;place-items:center;background:var(--green);color:white;border-radius:12px;font-size:22px;font-weight:600}h1{margin:0;font-size:23px;font-weight:650;letter-spacing:-.5px}.sub{color:var(--muted);font-size:12px;margin-top:3px}.pill{font-size:12px;background:#e9f0e6;padding:6px 12px;border-radius:30px}.layout{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:calc(100vh - 94px)}aside{padding:24px 16px 30px;background:#fff;border-right:1px solid var(--line)}.side-title{margin:0 12px 14px;font-size:11px;text-transform:uppercase;letter-spacing:1.5px;color:var(--muted)}.tree-button{border:0;border-radius:7px;background:none;width:100%;padding:9px 10px;text-align:left;color:#536863;display:flex;justify-content:space-between;gap:8px}.tree-button.active{background:#e8f2ed;color:var(--green);font-weight:600}.tree-button:hover{background:#f2f6f0}.tree-button span:first-child{overflow:hidden;text-overflow:ellipsis}.tree-count{color:#91a09a;font-size:11px}.tree-group{margin:0}.tree-group summary{cursor:pointer;padding:8px 6px;font-size:13px}.tree-group .tree-button{font-size:12px;padding-left:20px}.side-note{padding:14px 12px;color:var(--muted);font-size:12px;border-top:1px solid var(--line);margin-top:20px}main{padding:26px 28px;min-width:0}.intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}h2{margin:0;font-size:23px;font-weight:600;letter-spacing:-.5px}.muted{color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}.stat{background:#fff;padding:18px 20px;border:1px solid var(--line);border-radius:10px}.stat strong{font-size:27px;font-weight:600;display:block;letter-spacing:-.7px}.stat span{font-size:12px;color:var(--muted)}.notice{border:1px solid #ecddc2;background:#fff8e8;color:#7d6437;border-radius:8px;padding:11px 15px;font-size:12px;margin-bottom:20px}.toolbar{display:flex;gap:10px;align-items:center;margin-bottom:14px;flex-wrap:wrap}input,select,.outline{border:1px solid #dce4db;background:#fff;border-radius:7px;padding:9px 11px;color:var(--ink)}input[type=search]{flex:1;min-width:170px}select{max-width:210px}.outline:hover{border-color:#93b4a5}.columns{position:relative}.columns summary{list-style:none;cursor:pointer}.columns-panel{position:absolute;right:0;top:46px;z-index:4;width:230px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 35px #162d2b18;padding:14px;border-radius:9px}.columns-panel label{display:flex;gap:9px;align-items:center;padding:5px}.table-frame{border:1px solid var(--line);border-radius:10px;overflow:auto;background:#fff}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{background:#f9fbf7;border-bottom:1px solid var(--line);padding:13px 15px;font-size:11px;font-weight:500;color:var(--muted)}th button{color:inherit;border:0;background:none;padding:0;white-space:nowrap}td{padding:14px 15px;border-bottom:1px solid #edf1ec;font-size:12px}tr:last-child td{border-bottom:0}tr:hover td{background:#fcfdfb}.name-cell{min-width:280px;max-width:360px;white-space:normal}.product-link{border:0;padding:0;background:none;text-align:left;color:var(--ink);font-weight:550;line-height:1.5}.product-link:hover{color:var(--green)}.row-category{font-size:10px;color:var(--muted);margin-top:4px}.price-cell{font-variant-numeric:tabular-nums;font-weight:600}.status{padding:4px 8px;border-radius:30px;display:inline-block;font-size:10px}.status.in_stock{background:#e8f3e7;color:#397648}.status.on_order{background:#f4eddf;color:#906b30}.status.unknown,.status.check_with_manager,.status.expected,.status.out_of_stock{background:#edf0ed;color:#78837e}.footer{padding:14px 2px;color:var(--muted);font-size:11px;display:flex;justify-content:space-between}.empty{padding:40px!important;text-align:center;color:var(--muted)}dialog{border:0;border-radius:13px;max-width:870px;width:calc(100vw - 50px);max-height:90vh;padding:0;color:var(--ink);box-shadow:0 25px 100px #0003}dialog::backdrop{background:#142e2d55}.detail-head{position:sticky;top:0;background:#fff;border-bottom:1px solid var(--line);padding:22px 26px;display:flex;align-items:start;gap:20px;z-index:1}.detail-head h2{font-size:20px;flex:1}.close{border:0;border-radius:50%;width:30px;height:30px;background:#f0f3ef}.detail-content{padding:24px 26px}.detail-badges{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px}.detail-box{padding:14px 18px;background:#f7f9f4;border-radius:8px;min-width:160px}.detail-box strong{display:block;font-size:19px}.detail-box span{font-size:11px;color:var(--muted)}.section-label{margin:25px 0 10px;font-size:15px;font-weight:600}.property-table{white-space:normal}.property-table td{padding:9px 12px;font-size:12px}.property-table td:first-child{width:48%;color:var(--muted)}.document-list a,.source-link{display:block;color:var(--green);text-decoration:none;padding:8px 0;font-size:12px}.document-list a:hover,.source-link:hover{text-decoration:underline}.description{white-space:pre-wrap;color:#526761;line-height:1.8;font-size:12px}.offer-table{white-space:normal}.offer-table td{font-size:11px}.detail-image{max-height:220px;max-width:100%;object-fit:contain}.gallery{display:flex;gap:16px;overflow:auto}.fine-print{font-size:11px;color:var(--muted);margin-top:20px}@media(max-width:1000px){.layout{grid-template-columns:210px minmax(0,1fr)}main{padding:22px 18px}.stats{gap:8px}.stat{padding:14px}.stat strong{font-size:23px}header{padding:0 20px}}@media(max-width:720px){aside{display:none}.layout{display:block}.stats{grid-template-columns:repeat(2,1fr)}header{height:auto;padding:18px;gap:10px}.pill{display:none}h1{font-size:19px}.intro{gap:10px}.toolbar>*{max-width:none}main{padding:18px 12px}}

[hidden]{display:none!important}nav{display:flex;gap:10px;align-items:center}nav form{margin:0}a.outline{text-decoration:none;font-size:12px}.primary{border:0;border-radius:7px;background:var(--green);color:white;padding:10px 15px;cursor:pointer}button:disabled{opacity:.5;cursor:default}.login-page{min-height:100vh;display:grid;place-items:center}.login-card{width:min(420px,calc(100vw - 30px));background:white;border:1px solid var(--line);border-radius:14px;padding:36px}.login-card .mark{margin-bottom:22px}.login-card label,.edit-form label{display:block;margin:14px 0;font-size:12px}.login-card input,.edit-form input,.edit-form textarea{display:block;width:100%;margin-top:6px}.login-card button{width:100%;margin-top:12px}.action-row{display:flex;justify-content:space-between;align-items:center;margin:12px 0}.columns-panel{max-height:65vh;overflow:auto;width:290px}.columns-panel input[type=search]{width:100%;margin-bottom:8px}.columns-panel input[type=checkbox]{flex:0 0 auto}.source-list{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.source-item{padding:8px 12px;border:1px solid var(--line);background:white;border-radius:8px;font-size:12px}.job-card{padding:20px;background:white;border:1px solid var(--line);border-radius:10px;margin:15px 0}.job-card h3{margin-top:0;font-size:16px}.raw-data{font-size:11px;white-space:pre-wrap;overflow-wrap:anywhere;max-height:350px;overflow:auto;background:#f7f9f4;padding:16px;border-radius:8px}.detail-section{margin:20px 0}.detail-section summary{cursor:pointer;font-size:13px;color:var(--green)}.edit-form{margin-top:16px}.edit-form textarea{min-height:80px}.error-url{overflow-wrap:anywhere;font-size:12px}.footer{align-items:center}.footer .outline{padding:6px 10px;font-size:11px}@media(max-width:720px){nav{flex-wrap:wrap}header{align-items:start}.intro{flex-wrap:wrap}}

.tree-button{align-items:flex-start}
.tree-label{min-width:0;overflow-wrap:anywhere}
.tree-count{flex:none;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:11px;line-height:inherit;padding:1px 6px;border-radius:5px;background:var(--surface-soft,#f7f9f4);color:var(--muted)}
.tree-group summary{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:start;gap:6px;list-style:none}
.tree-group summary::-webkit-details-marker{display:none}
.tree-group summary::before{content:'›';font-size:16px;line-height:1.2;transform-origin:center;margin-top:1px}
.tree-group[open]>summary::before{transform:rotate(90deg)}
.tree-group summary:focus-visible{outline:2px solid var(--focus,#80b8a2);outline-offset:2px;border-radius:5px}
.tree-button.active .tree-count{background:var(--accent-soft,#e8f2ed);color:inherit}

.columns-dialog{width:min(820px,calc(100vw - 40px));max-width:820px;max-height:calc(100dvh - 48px);border:1px solid var(--line);background:var(--surface,#fff);overflow:hidden}
.columns-dialog form{display:flex;flex-direction:column;max-height:calc(100dvh - 50px);margin:0}
.columns-head{display:flex;justify-content:space-between;gap:20px;align-items:start;padding:24px 26px 18px;border-bottom:1px solid var(--line);flex:none}
.columns-head h2{font-size:22px;margin:0}.columns-head p{margin:5px 0 0;font-size:13px}.columns-head .close{flex:none}
.columns-controls{display:flex;align-items:center;gap:18px;padding:18px 26px;flex:none}.columns-controls input{min-width:0;width:100%}.columns-controls span{white-space:nowrap;font-size:12px}
.columns-options{padding:0 26px 22px;overflow:auto;max-height:52dvh;min-height:100px;overscroll-behavior:contain}
.column-group-title{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin:14px 0 10px}.column-group-title:first-child{margin-top:0}
.column-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}
.column-option{display:flex;gap:10px;align-items:start;padding:11px 12px;border:1px solid var(--line);border-radius:8px;cursor:pointer;min-width:0;font-size:13px;line-height:1.45}.column-option:hover{background:var(--surface-soft,#f7f9f4)}.column-option:has(input:checked){background:var(--accent-soft,#e8f2ed)}
.column-option input,.columns-remember input{flex:none;width:16px;height:16px;margin:2px 0 0;accent-color:var(--green)}.column-option span{overflow-wrap:anywhere}.column-option small{margin-left:auto;font-size:10px;color:var(--muted)}
.columns-footer{border-top:1px solid var(--line);padding:18px 26px 22px;flex:none;background:var(--surface,#fff)}
.columns-remember{display:flex;align-items:start;gap:10px;cursor:pointer;font-size:13px}.columns-remember strong{font-weight:550}.columns-remember small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.columns-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.columns-actions button{min-width:108px}
#columns-error{color:var(--notice-text,#7d6437);font-size:13px;margin:12px 0 0}
body:has(#columns-dialog[open]){overflow:hidden}
@media(max-width:600px){.columns-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.columns-dialog form{max-height:calc(100dvh - 26px)}.columns-head{padding:18px 18px 14px}.columns-head h2{font-size:20px}.columns-controls{padding:14px 18px;gap:10px;flex-wrap:wrap}.columns-controls span{width:100%}.columns-options{padding:0 18px 18px;max-height:48dvh}.column-grid{grid-template-columns:1fr}.columns-footer{padding:16px 18px}.columns-actions button{flex:1}}

.row-summary{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
#table-head .column-filter-button.active{background:var(--green);color:var(--action-text);box-shadow:none}
.filter-dialog{width:min(680px,calc(100vw - 40px));max-width:680px;max-height:calc(100dvh - 48px);padding:0;border:1px solid var(--line);background:var(--surface);overflow:hidden}.filter-dialog form{margin:0;display:flex;flex-direction:column;max-height:calc(100dvh - 50px)}.filter-modal-head{display:flex;justify-content:space-between;align-items:start;gap:18px;flex:none;padding:24px 26px 18px;border-bottom:1px solid var(--line)}.filter-modal-head h2{font-size:22px;margin:0;overflow-wrap:anywhere}.filter-modal-head p{font-size:13px;margin:6px 0 0}.filter-modal-head .close{flex:none}.filter-modal-content{padding:22px 26px;overflow:auto;overscroll-behavior:contain;min-height:80px}.filter-modal-content input[type=search]{width:100%;min-width:0}.filter-modal-content .filter-value-list{max-height:42dvh}.filter-modal-footer{padding:18px 26px 22px;border-top:1px solid var(--line);flex:none;background:var(--surface)}.filter-result-count{margin:0 0 16px;font-size:17px;font-weight:600;color:var(--green)}.filter-result-count[data-total="0"]{color:var(--muted)}.filter-modal-actions{display:flex;justify-content:space-between;gap:12px;align-items:center}.filter-modal-actions>div{display:flex;gap:10px}.filter-modal-actions button{min-width:100px}.filter-choice input[type=radio]{accent-color:var(--green)}.column-filter-button.active,.column-filter-button.active:hover,.column-filter-button.active:focus-visible{background:var(--green);color:var(--action-text);box-shadow:none}.toolbar-picker.active{background:var(--accent-soft);color:var(--green);border-color:var(--focus)}body:has(.filter-dialog[open]){overflow:hidden}@media(max-width:600px){.filter-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.filter-dialog form{max-height:calc(100dvh - 26px)}.filter-modal-head{padding:18px}.filter-modal-content{padding:18px}.filter-modal-footer{padding:16px 18px}.filter-modal-actions button{min-width:0}.filter-modal-actions{gap:8px}.filter-modal-actions>div{gap:8px}.filter-modal-head h2{font-size:20px}}
.column-filter-button{display:inline-flex;align-items:center;justify-content:center;flex:none;width:26px;height:26px;border-radius:5px;cursor:pointer}.column-filter-button:hover,.column-filter-button:focus-visible,.column-filter-button.active{background:var(--accent-soft);color:var(--green)}.column-filter-button.active{box-shadow:inset 0 0 0 1px var(--focus)}
.header-filter{position:fixed;inset:auto;margin:0;padding:18px;width:360px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto;overscroll-behavior:contain;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);box-shadow:0 12px 45px #0003;font-size:13px}.header-filter::backdrop{background:transparent}.header-filter form{margin:0}.header-filter-head{display:flex;align-items:start;justify-content:space-between;gap:12px;margin-bottom:18px}.header-filter-head h3{font-size:15px;margin:4px 0;overflow-wrap:anywhere}.header-filter-head .close{flex:none}.header-filter input[type=search]{width:100%;min-width:0;margin-top:8px}.filter-range{display:flex;gap:12px}.filter-bound{flex:1;min-width:0;color:var(--muted);font-size:12px}.filter-bound input{width:100%;margin-top:6px;min-width:0}.filter-text-label{display:block}.filter-choices{margin-top:14px}.filter-choice{display:flex;align-items:start;gap:10px;padding:9px 2px;cursor:pointer;line-height:1.4}.filter-choice input{flex:none;accent-color:var(--green);width:16px;height:16px;margin:1px 0 0}.filter-choice span{min-width:0;overflow-wrap:anywhere}.filter-choice small{margin-left:auto;color:var(--muted);font-variant-numeric:tabular-nums}.filter-value-list{max-height:280px;overflow:auto;margin:8px 0;overscroll-behavior:contain}.filter-hint{color:var(--muted);font-size:11px;line-height:1.5;margin:10px 0}.filter-value-tools{display:flex;align-items:center;gap:8px;justify-content:space-between}.header-filter-footer{display:flex;justify-content:space-between;gap:12px;padding-top:16px;margin-top:10px;border-top:1px solid var(--line)}#header-filter-error{font-size:12px;color:var(--notice-text);line-height:1.5}.filter-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}.filter-chip{max-width:100%;white-space:normal;overflow-wrap:anywhere;text-align:left;border:1px solid var(--focus);background:var(--accent-soft);color:var(--green);font-size:12px;border-radius:6px;padding:6px 10px;cursor:pointer}.clear-column-filters{border:0;background:none;color:var(--green);font-size:11px;padding:4px;cursor:pointer;text-decoration:underline}
#column-order-status{font-size:11px;color:var(--muted)}#column-order-status[data-state=saved]{color:var(--green)}#column-order-status[data-state=error]{color:var(--notice-text)}#retry-column-order{font-size:inherit;color:var(--green);background:none;border:0;padding:0;text-decoration:underline}
.table-header-controls{display:flex;align-items:center;gap:7px}.table-header-controls .column-grip{font-size:19px;line-height:1;flex:none;width:20px;height:24px;color:var(--muted);cursor:grab;border-radius:4px;touch-action:manipulation}.table-header-controls .column-grip:hover,.table-header-controls .column-grip:focus-visible{background:var(--accent-soft);color:var(--green)}.table-header-controls .column-grip:active{cursor:grabbing}.table-header-controls .column-sort{font-size:inherit;text-align:left}.column-dragging{opacity:.45}.column-drop-before{box-shadow:inset 3px 0 var(--green)}.column-drop-after{box-shadow:inset -3px 0 var(--green)}.column-move-actions{display:flex;gap:8px;padding-top:8px}.column-move-actions .column-move-action{border:1px solid var(--control-line);border-radius:4px;background:var(--surface);padding:2px 8px;font-size:14px;color:var(--ink)}.column-move-action:hover{background:var(--surface-soft)}
.mobile-menu-button{display:none;flex:none;width:42px;height:42px;padding:9px;align-items:center;justify-content:center}.mobile-menu{position:fixed;inset:0 auto 0 0;margin:0;width:min(360px,calc(100vw - 24px));max-width:none;height:100dvh;max-height:100dvh;border-radius:0 14px 14px 0;padding:0;background:var(--surface);color:var(--ink);overflow:hidden}.mobile-menu[open]{display:flex;flex-direction:column}.mobile-menu-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px;border-bottom:1px solid var(--line);flex:none}.mobile-menu-head h2{font-size:21px}.mobile-menu-head .close{flex:none}.mobile-menu-content{padding:16px;overflow:auto;overscroll-behavior:contain;flex:1;min-height:0}.mobile-menu #catalog-sidebar{display:block;padding:8px 0 16px;border:0}.mobile-menu .side-title{display:none}.mobile-menu .side-note{margin-bottom:0}.mobile-menu #mobile-menu-catalog>summary{padding:12px 10px;font-size:17px;font-weight:600;cursor:pointer;border-radius:7px;color:var(--ink)}.mobile-menu #mobile-menu-catalog>summary:hover{background:var(--tree-hover)}.mobile-menu #site-navigation{display:flex;flex-direction:column;align-items:stretch;gap:10px;padding-top:16px;border-top:1px solid var(--line)}.mobile-menu #catalog-tab{display:none}.mobile-menu #site-navigation>.outline,.mobile-menu #site-navigation>form button{width:100%;padding:12px;text-align:left}.mobile-menu .tree-button{min-height:44px}.mobile-menu .tree-group summary{padding-top:12px;padding-bottom:12px}.mobile-menu .tree-label{white-space:normal;overflow-wrap:anywhere}.mobile-menu .tree-count{flex:none}body:has(.mobile-menu[open]){overflow:hidden}
@media(max-width:720px){.mobile-menu-button{display:inline-flex}body>header{min-height:0;padding:14px 12px;flex-wrap:nowrap}.identity{gap:10px;min-width:0;width:100%}.identity>.mark{display:none}.identity>div:last-child{min-width:0}.identity h1{font-size:18px;letter-spacing:-.3px}.identity .sub{font-size:11px}.action-row{flex-wrap:wrap;gap:10px}.action-row>div:last-child{display:flex;flex-wrap:wrap;gap:8px}.footer{flex-wrap:wrap;gap:10px}}
.notice-schedule{margin-top:10px;padding-top:10px;border-top:1px solid var(--notice-line);font-size:13px;overflow-wrap:anywhere}.notice-schedule strong{font-variant-numeric:tabular-nums;font-weight:650}.notice-schedule time{white-space:normal}.notice-schedule #collection-pool-info:not(:empty){font-size:12px;margin-top:5px}
.id-cell{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;user-select:all}
.category-search{position:relative;margin-bottom:12px}.category-search input{display:block;width:100%;min-width:0;padding-right:34px}.category-search input::-webkit-search-cancel-button{display:none}.category-search button{position:absolute;right:5px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:5px;background:none;color:var(--muted);font-size:20px;line-height:1}.category-search button:hover{background:var(--tree-hover);color:var(--ink)}.category-search-status{margin:0 10px 12px;font-size:12px;color:var(--muted)}
