:root{font-family:Inter,"Pretendard","Malgun Gothic",system-ui,sans-serif;color:#22332f;background:#f5f7f5;font-synthesis:none;--ink:#22332f;--muted:#6e7c76;--green:#20574a;--line:#dce3de;--soft:#eef3ef;--amber:#9a6317;--danger:#ad3d35;--white:#fff}
/* Keep the catalog width/position when a native modal locks page scrolling.
   :modal releases on button, Escape and form close without JS lock state. */
html{scrollbar-gutter:stable}
html:has(#dialog:modal){overflow:hidden}
#dialog{overflow:auto;overscroll-behavior:contain;box-sizing:border-box;max-height:min(90vh,var(--dialog-fit-height,90vh));max-width:var(--dialog-fit-width,calc(100% - 2em));translate:var(--dialog-fit-x,0px) var(--dialog-fit-y,0px)}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #95bfaa;outline-offset:2px}button{border:1px solid var(--line);background:white;border-radius:8px;padding:9px 14px;font-size:13px;font-weight:650;white-space:nowrap;min-height:38px}button:hover:not(:disabled){background:var(--soft)}button.primary{background:var(--green);border-color:var(--green);color:white}button.primary:hover:not(:disabled){background:#173e38}button.danger{color:var(--danger)}button.subtle{border-color:transparent;background:transparent;color:var(--muted)}button.small{padding:5px 9px;min-height:30px;font-size:12px}input,select,textarea{border:1px solid #cfd9d1;background:white;border-radius:7px;padding:9px 10px;font-size:14px;min-width:0;max-width:100%}input[type=checkbox]{accent-color:var(--green);width:16px;height:16px;vertical-align:middle}input[type=number]{font-variant-numeric:tabular-nums}textarea{resize:vertical;min-height:90px;line-height:1.65}input:disabled{background:#f1f4f1}a{color:var(--green)}h1,h2,h3,p{margin:0}h1{font-size:27px;letter-spacing:-1px;font-weight:750}h2{font-size:18px;letter-spacing:-.4px}h3{font-size:14px}p{line-height:1.7}.muted{color:var(--muted)}.tiny{font-size:12px}.good{color:var(--green)}.bad{color:var(--danger)}.row{display:flex;align-items:center;gap:10px}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.stack{display:grid;gap:16px}.grow{flex:1;min-width:0}.hidden{display:none!important}.primary-text{color:var(--green);font-weight:700}
.top{height:74px;padding:0 34px;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line);gap:20px}.logo{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:750;letter-spacing:-.5px}.logo-mark{display:grid;place-items:center;background:#173e38;color:white;width:36px;height:36px;border-radius:11px;font-size:22px}.logo small{display:block;font-size:11px;color:var(--muted);letter-spacing:.3px;margin-top:3px;font-weight:500}.top nav{display:flex;gap:5px}.top nav button{min-width:85px;border:0;background:none;color:#7a877f;font-size:14px}.top nav button.selected{color:var(--green);background:#edf4ee}.user{font-size:12px;color:var(--muted)}.mode{background:#fff7e5;border-bottom:1px solid #efdfb9;padding:8px 34px;font-size:12px;color:#7c622f}.shell{max-width:1600px;margin:auto;padding:28px 34px 60px}.page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.eyebrow{font-size:12px;color:var(--muted);margin-bottom:7px}.page-head p{font-size:13px;margin-top:7px;color:var(--muted)}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:20px}.search{position:relative;flex:1;max-width:370px}.search input{width:100%;background:white;padding-left:35px}.search:before{content:'⌕';position:absolute;left:12px;top:6px;font-size:22px;color:#8b9690}.pills{display:flex;gap:5px;flex-wrap:wrap}.pills button{background:transparent;border-color:transparent;color:#718076;min-height:34px;font-size:12px;padding:7px 11px}.pills button.selected{background:#e4eee7;color:#20574a}.badge{display:inline-flex;align-items:center;gap:4px;border-radius:5px;padding:4px 7px;background:#eef3ee;color:#66816f;font-size:11px;font-weight:600;white-space:nowrap}.badge.orange{background:#fff3dc;color:#95641e}.badge.red{background:#faeae7;color:#a6463d}.badge.gray{background:#edf0ee;color:#778279}.progress-panel{border:1px solid var(--line);background:white;border-radius:12px;padding:16px 20px;margin-bottom:22px;display:flex;gap:22px;align-items:center}.progress-info{min-width:190px}.progress-info strong{font-size:22px;letter-spacing:-.6px}.progress-info span{font-size:12px;color:var(--muted);margin-left:7px}.progress-track{height:6px;background:#edf1ed;border-radius:4px;overflow:hidden;margin-top:10px}.progress-fill{height:100%;background:#518568;transition:width .2s}.progress-panel .note{font-size:12px;color:var(--muted);line-height:1.8}.workspace{display:grid;grid-template-columns:175px minmax(0,1fr);gap:24px}.room-nav{display:flex;flex-direction:column;gap:7px;position:sticky;top:20px;align-self:start}.room-nav .caption{font-size:11px;color:#879489;letter-spacing:1px;padding:9px 12px}.room-nav button{text-align:left;border-color:transparent;background:transparent;min-height:46px;padding:10px 12px;display:flex;justify-content:space-between;align-items:center;gap:6px;font-size:13px}.room-nav button.selected{background:#e5eee7;color:#245942}.room-nav .room-count{font-size:10px;color:#8b998e}.room-nav .selected .room-count{color:#5b8065}.room-nav .next{margin-top:9px;border:1px solid #c6d7c9;justify-content:center;color:var(--green);font-size:12px}.group-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px}.group-head h2{font-size:17px}.group-head span{font-size:12px;color:var(--muted)}.inventory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}.inventory-card{background:white;border:1px solid var(--line);border-radius:11px;overflow:hidden}.card-caption{padding:12px 12px 9px;display:flex;justify-content:space-between;align-items:center;background:#fbfcfa;border-bottom:1px solid #ebefea}.card-caption h3{font-size:12px;color:#52695a}.card-caption span{font-size:10px;color:#9aa59a}.inventory-table{width:100%;table-layout:fixed;border-collapse:collapse}.inventory-table th{font-size:10px;color:#849086;font-weight:500;text-align:left;height:28px;padding:0 10px;background:#fbfcfa}.inventory-table th:nth-child(2){width:51px;text-align:right}.inventory-table th:nth-child(3){width:71px;text-align:center}.inventory-table td{height:43px;border-top:1px solid #f0f2ef;padding:4px 10px;font-size:12px}.item-name{border:0;padding:0;border-radius:3px;background:none;min-height:28px;font-size:12px;font-weight:550;display:block;width:100%;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-name:hover:not(:disabled){background:none;color:var(--green);text-decoration:underline}.item-unit{font-size:10px;color:#9ba59d;margin-left:4px;font-weight:400}.previous{text-align:right;color:#a0aaa2;font-size:11px!important;font-variant-numeric:tabular-nums}.qty-cell{padding:4px 8px!important}.qty-cell input{width:55px;min-width:0;padding:5px 4px;text-align:center;height:31px;font-size:13px;appearance:textfield}.qty-cell input::-webkit-inner-spin-button{-webkit-appearance:none}.checked-row .qty-cell input{border-color:#c4d8ca;background:#f1f7f0;color:#205b3d}.low-row .item-name{color:#a26c25}.failed-row .qty-cell input{border-color:#bd5147;background:#fff1ef}.saving-row .qty-cell input{opacity:.55}.status-pill{width:55px;font-size:11px;padding:6px 0;min-height:31px;text-align:center;background:#eef5ed;color:#3c744c;border:1px solid #c7d9c8}.status-pill.low{background:#fff6e8;border-color:#ebd0a0;color:#9a6927}.status-pill.empty{background:#fbeceb;border-color:#e4bbb6;color:#a14539}.empty{border:1px dashed #ccd8ce;border-radius:12px;background:#fff;padding:46px 24px;text-align:center;color:var(--muted)}.empty h2{color:#354b3e;margin-bottom:8px}.empty p{font-size:13px;margin-bottom:20px}.save-status{font-size:12px;color:var(--muted);margin-top:14px;min-height:20px}.save-status.error{color:var(--danger)}
.panel{background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:18px}.panel-head{padding:18px 20px;border-bottom:1px solid #e8ede7;display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.panel-head p{font-size:12px;color:var(--muted);margin-top:6px}.panel-body{padding:20px}.notice{padding:11px 14px;border-radius:8px;background:#eff4ee;color:#57705d;font-size:12px;line-height:1.7}.notice.amber{background:#fff5e4;color:#956b2d}.notice.error{background:#ffefed;color:#a14e42}.notice + .notice{margin-top:8px}.data-table{width:100%;border-collapse:collapse;font-size:13px}.data-table th{text-align:left;font-size:11px;color:#7b8c7d;background:#f7f9f5;font-weight:500;padding:10px 16px}.data-table td{padding:11px 16px;border-top:1px solid #eef1eb;vertical-align:middle}.data-table .name{font-weight:600}.data-table .name small{display:block;font-size:11px;font-weight:400;color:#8a998c;margin-top:4px}.data-table input[type=number]{width:85px}.data-table input.unit{width:70px}.table-scroll{overflow:auto}.order-qty{display:flex;gap:5px;align-items:center}.panel-foot{padding:14px 20px;background:#fbfcf9;border-top:1px solid #e8ede7;display:flex;align-items:center;justify-content:space-between;gap:10px}.order-groups{display:grid;gap:16px}.order-card .panel-head{background:#fff}.order-card .panel-head h2{font-size:16px}.history-list{display:grid;gap:10px}.history-item{background:white;border:1px solid var(--line);border-radius:10px;padding:16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.history-item button{max-width:100%;white-space:normal}.history-title{font-size:14px;font-weight:650}.history-item p{font-size:12px;color:var(--muted);margin-top:6px}.section-title{display:flex;align-items:center;justify-content:space-between;margin:24px 0 12px}.section-title h2{font-size:17px}.settings-layout{max-width:1180px}.settings-tabs{display:flex;gap:5px;margin-bottom:22px;flex-wrap:wrap}.settings-tabs button{border:0;background:transparent;color:var(--muted)}.settings-tabs button.selected{background:#e3ede4;color:var(--green)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:grid;gap:7px;align-content:start;font-size:12px}.field>span:first-child{font-weight:650;color:#516154}.field input:not([type=checkbox]),.field select,.field textarea{width:100%}.field.full{grid-column:1/-1}.field small{font-size:11px;line-height:1.65;color:#8a978c}.days{display:flex;gap:7px;flex-wrap:wrap}.days label{border:1px solid var(--line);border-radius:7px;padding:9px 10px;display:flex;align-items:center;gap:5px;font-size:12px}.days label:has(input:checked){background:#eaf3e8;border-color:#c6dcc7;color:#326347}.form-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;margin-top:20px}.brand-row{display:flex;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid #edf1e9}.brand-row:last-child{border:0}.brand-row strong{flex:1;font-size:14px}.brand-row .muted{font-size:12px}.credential-box{margin-top:22px;border:1px solid #dce6dc;background:#f9fbf7;border-radius:10px;padding:18px}.credential-box h3{margin-bottom:15px}.divider{height:1px;background:var(--line);margin:22px 0}.form-note{color:#8a978a;font-size:11px;margin-top:10px;line-height:1.6}.code-free{white-space:pre-wrap;background:#f6f8f4;border:1px solid var(--line);border-radius:8px;padding:16px;font-size:13px;line-height:1.8}.credentials-state{font-size:12px;margin-bottom:14px}.toolbar .select-round{max-width:220px}
dialog{border:1px solid #d7dfd5;border-radius:16px;padding:0;width:min(700px,calc(100vw - 30px));max-height:90vh;box-shadow:0 25px 90px #1d33262b;color:var(--ink)}dialog::backdrop{background:#122d224b;backdrop-filter:blur(2px)}.dialog-head{padding:20px 24px;border-bottom:1px solid #e6ebe3;display:flex;align-items:center;justify-content:space-between;gap:16px;position:sticky;top:0;background:#fff;z-index:2}.dialog-head h2{font-size:19px}.dialog-body{padding:22px 24px}.dialog-head button{padding:3px 9px;border:0;background:transparent;color:#899588;font-size:23px;min-height:30px}.state-buttons{display:flex;gap:8px;margin:20px 0}.state-buttons button{flex:1;padding:14px 8px;min-height:48px}.state-buttons button.selected{background:#e8f1e5;border-color:#adc5ac;color:var(--green)}.state-buttons button[data-state=empty].selected{background:#fceee8;border-color:#e6c0b0;color:#a35d3f}.dialog-error{font-size:12px;color:#ac493b;padding-top:10px;line-height:1.5}.login-screen{min-height:100dvh;display:grid;place-items:center;padding:28px;background:linear-gradient(135deg,#f0f5ed,#f9faf5 60%,#e7f0e8)}.login-box{width:100%;max-width:420px;background:white;border:1px solid #dae4d7;border-radius:19px;padding:34px;box-shadow:0 18px 60px #254b3610}.login-box .logo{margin-bottom:32px}.login-box h1{font-size:24px;margin-bottom:10px}.login-box p{font-size:13px;color:var(--muted);margin-bottom:25px}.login-box form{display:grid;gap:17px}.login-box .primary{padding:12px;margin-top:5px}.login-box small{font-size:11px;color:#8a9786;line-height:1.6}.boot{display:grid;place-items:center;min-height:100vh;color:#718470;font-size:14px}#toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,15px);background:#254735;color:white;padding:13px 20px;border-radius:10px;font-size:13px;max-width:min(620px,90vw);line-height:1.6;box-shadow:0 8px 30px #24472820;opacity:0;pointer-events:none;transition:opacity .15s,transform .15s;z-index:20}#toast.show{opacity:1;transform:translate(-50%,0)}#toast.error{background:#874a40}.version{color:#a1aaa0;font-size:10px;margin-top:30px;text-align:right}.connection-result{margin-top:12px;line-height:1.7;font-size:12px;color:#56705a}.field-list{max-height:230px;overflow:auto;margin-top:12px;border:1px solid #dce6d9;border-radius:7px}.field-list div{padding:7px 10px;border-bottom:1px solid #eef2e9;font-size:12px}.field-list small{color:#94a18f;margin-left:6px}.settings-item-search{max-width:400px;margin-bottom:12px}.receipt-row{display:grid;grid-template-columns:1fr 90px 30px;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding:12px 0;font-size:13px}.receipt-row input{width:90px}.inline-check{display:flex;gap:7px;align-items:center;font-size:12px}.live-dot{width:5px;height:5px;border-radius:50%;display:inline-block;background:#7ba078;margin-right:5px}.link-button{color:var(--green);background:transparent;border:0;padding:5px 0;text-decoration:underline;font-size:12px;white-space:normal;text-align:left}
.mt16{margin-top:16px}.mb14{margin-bottom:14px}.mb16{margin-bottom:16px}
@media(min-width:1440px){.inventory-table td{height:46px}.inventory-table .item-name{font-size:13px}.inventory-grid{gap:18px}}
@media(max-width:1100px){.top{padding:0 22px}.shell{padding:24px 22px 50px}.workspace{grid-template-columns:145px minmax(0,1fr);gap:16px}.inventory-grid{gap:9px}.inventory-table td,.inventory-table th{padding-left:8px;padding-right:8px}.inventory-table th:nth-child(2){width:43px}.inventory-table th:nth-child(3){width:62px}.qty-cell{padding:4px 5px!important}.qty-cell input,.status-pill{width:51px}.item-unit{display:none}.mode{padding-left:22px}.user{display:none}}
@media(max-width:850px){.inventory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.top nav button{min-width:70px}.workspace{grid-template-columns:125px minmax(0,1fr)}.progress-panel{gap:15px}.progress-panel .note{display:none}.data-table th,.data-table td{padding:10px 12px}}
@media(max-width:620px){h1{font-size:23px}.top{height:63px;padding:0 16px;gap:8px}.logo{font-size:15px;gap:8px}.logo-mark{width:30px;height:30px;border-radius:9px;font-size:19px}.logo small{font-size:9px}.top nav{gap:0}.top nav button{padding:8px 9px;min-width:0;font-size:12px;min-height:34px}.mode{padding:7px 16px;font-size:10px}.shell{padding:20px 14px 45px}.page-head{margin-bottom:18px;gap:10px}.page-head p{font-size:11px}.eyebrow{font-size:11px}.page-head>button{font-size:11px;padding:8px 10px}.progress-panel{padding:13px 14px;margin-bottom:17px;justify-content:space-between;gap:12px}.progress-info{min-width:120px;flex:1}.progress-info strong{font-size:20px}.progress-info span{font-size:11px;margin-left:3px}.progress-panel button{font-size:11px;padding:8px}.workspace{display:block}.room-nav{position:static;flex-direction:row;overflow-x:auto;gap:5px;margin-bottom:15px;padding-bottom:3px}.room-nav .caption,.room-nav .next{display:none}.room-nav button{min-height:38px;padding:8px 10px;border:1px solid var(--line);background:white;flex:none;gap:8px}.room-nav button.selected{border-color:#bad2bd}.room-nav .room-count{font-size:9px}.toolbar{gap:9px;margin-bottom:16px}.search{max-width:none;flex-basis:100%}.search input{font-size:13px}.pills{gap:2px}.pills button{padding:6px 8px;min-height:30px;font-size:11px}.toolbar .select-round{margin-left:auto;font-size:11px;max-width:145px;padding:7px}.inventory-grid{grid-template-columns:1fr;gap:12px}.inventory-table td{height:45px}.inventory-table th:nth-child(2){width:64px}.inventory-table th:nth-child(3){width:80px}.inventory-table .item-name{font-size:13px;min-height:32px}.item-unit{display:inline;font-size:10px}.qty-cell input,.status-pill{width:62px;height:34px;font-size:15px}.previous{font-size:12px!important}.inventory-table td,.inventory-table th{padding-left:12px;padding-right:12px}.group-head h2{font-size:16px}.group-head span{font-size:11px}.form-grid{grid-template-columns:1fr;gap:15px}.panel-head,.panel-body{padding:16px}.panel-head p{font-size:11px}.panel-foot{padding:12px 14px;align-items:flex-start;flex-wrap:wrap}.panel-foot .grow{flex-basis:100%}.data-table th,.data-table td{font-size:12px;padding:10px}.data-table input[type=number]{width:64px}.data-table input.unit{width:49px;padding:8px 5px;font-size:12px}.data-table .name small{font-size:10px}.data-table .hide-phone{display:none}.order-qty{gap:4px}.settings-tabs{gap:2px}.settings-tabs button{padding:8px 10px;font-size:12px}.history-item{padding:13px}.history-title{font-size:13px}.history-item p{font-size:11px}.dialog-head{padding:17px 18px}.dialog-body{padding:18px}.dialog-head h2{font-size:17px}.form-actions button{flex:1;font-size:12px}.days{gap:5px}.days label{padding:7px 8px;font-size:11px}.login-box{padding:28px}.credentials-state{font-size:11px}.version{margin-top:22px}button,input,select{touch-action:manipulation}}
@media(max-width:380px){.progress-panel{flex-wrap:wrap}.progress-info{flex-basis:100%}.progress-panel>button{flex:1}.top{padding:0 10px}.logo small{display:none}.group-head span{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* Price provenance remains readable inside narrow item and order dialogs. */
.purchase-basis{font-size:.85rem;color:var(--muted,#56616d);margin:0 0 .5rem}
.price-audit{margin-top:1rem;border-top:1px solid #dce2e8;padding-top:.75rem;min-width:0}
.price-history-entry{border:1px solid #dce2e8;border-radius:12px;padding:12px;margin-top:12px;min-width:0;overflow-wrap:anywhere}
.price-history-entry h4{margin:0 0 6px}.price-history-entry .purchase-details{margin-top:8px}
.price-before{font-size:.85rem;color:var(--muted,#56616d)}
.price-history-entries p,.purchase-note{white-space:pre-wrap;overflow-wrap:anywhere}
.purchase-editor input[type=file]{max-width:100%;min-width:0}

/* One product editor; physical locations are saved with the product transaction. */
button.home-logo{border:0;background:transparent;padding:0;text-align:left;min-height:44px;white-space:nowrap;color:inherit}
button.home-logo:hover{background:transparent}.home-logo .logo-mark{flex:none}.home-logo>span:last-child{min-width:0}
.item-storage,.item-purchase{min-width:0;border-top:1px solid var(--line);padding-top:14px;display:grid;gap:10px}.item-storage h3,.item-purchase h3{font-size:15px}.item-storage .field{max-width:100%}.item-storage .storage-location-choices label{min-height:44px}
.item-extra,.item-purchase .purchase-editor{border:1px solid var(--line);border-radius:9px;padding:10px;min-width:0}.item-extra>summary,.item-purchase .purchase-editor>summary{font-size:13px;font-weight:650;cursor:pointer;min-height:30px;display:flex;align-items:center;list-style:revert}.item-extra[open]>.form-grid,.item-purchase .purchase-editor[open]>.form-grid{margin-top:12px}.separate-price-unit[hidden]{display:none!important}.separate-price-unit>label{display:grid;gap:7px}.item-save-actions{position:sticky;bottom:-1px;background:white;padding:12px 0 0;z-index:2}.item-save-actions>button{min-height:44px;min-width:100px}.storage-location-summary{margin:12px 0;padding:10px 0;border-top:1px solid var(--line)}.storage-location-summary p{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.storage-location-summary small{font-size:11px;color:var(--muted)}



.top button.home-logo{display:flex;flex:0 0 auto;justify-content:flex-start;min-width:max-content;white-space:nowrap;gap:7px}.top button.home-logo .logo-mark{display:grid;flex:none}


#item-form .membership-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 8px;padding:10px;min-width:0}#item-form .membership-picker label{margin:0;padding:4px 0;min-width:0;min-height:44px;overflow-wrap:anywhere}#item-form .membership-picker input{flex:none}#item-form .membership-picker p{grid-column:1/-1;font-size:11px;line-height:1.5;margin:5px 0 0}

/* Product identity stays horizontal and visible; only navigation scrolls. */
.top button.home-logo .home-title{display:block;flex:none;min-width:max-content;white-space:nowrap;line-height:1.2}.home-app-name{display:block;white-space:nowrap}.top .top-actions{flex:1 1 0;min-width:0}.top .top-actions nav{margin-left:0}
.inventory-search-row{display:flex;align-items:center;gap:8px;width:100%;min-width:0}.inventory-search-row .search{flex:1;max-width:none;min-width:0;margin:0}.add-product{flex:none;min-height:44px;padding:6px 12px;border:1px solid #bed3c6;background:#eaf3ed;color:#245340;white-space:nowrap}
#item-form{display:grid;gap:14px}#item-form .editor-section,#item-form .item-purchase{display:block;border:1px solid #d6e1da;border-radius:12px;background:#fff;padding:16px;min-width:0}#item-form h3{font-size:15px;margin:0 0 14px;color:#244d3d}#item-form h4{font-size:13px;margin:0}#item-form .item-storage{border-top:1px solid #e2e9e4;margin-top:12px;padding-top:12px;gap:8px}#item-form .membership-picker{border:0;padding:0}#item-form .membership-picker legend{font-size:13px;font-weight:600;margin-bottom:5px}#item-form .membership-picker p{display:none}#item-form .editor-options{border:1px solid #d6e1da;border-radius:10px;padding:12px}#item-form .editor-options>summary{cursor:pointer;font-size:13px;font-weight:600;min-height:30px}#item-form .editor-options[open]>:not(summary){margin-top:10px}#item-form .form-note{font-size:11px;line-height:1.5;color:#68796f}#item-form .item-extra{margin:0}#item-form [aria-invalid=true]{border:2px solid #b64836}.supplier-change[hidden]{display:none!important}.supplier-change{padding:12px;border:1px solid #d5c7a1;background:#fff9eb;border-radius:9px;font-size:12px}.supplier-change p{line-height:1.6;margin:7px 0}.supplier-change-actions{display:flex;flex-wrap:wrap;gap:6px}.supplier-change-actions button{font-size:12px;min-height:44px;padding:6px 9px}.supplier-change-status{font-weight:600;color:#375941}
@media(max-width:620px){.top button.home-logo{font-size:12px;gap:4px}.top button.home-logo .logo-mark{width:24px;height:24px;border-radius:7px;font-size:16px}.top .home-title small{display:none}#item-form .editor-section,#item-form .item-purchase{padding:12px}#item-form .form-grid{gap:12px}.add-product{padding:6px 9px;font-size:12px}}

.editor-inline-error{font-size:12px;line-height:1.5;color:#a23b2e;margin:6px 0 0}

.top button.home-logo{padding-right:8px;border-right:1px solid #dce5df;border-radius:0}.editor-jumps{display:flex;gap:6px;position:sticky;top:72px;z-index:3;background:white;padding:5px 0;border-bottom:1px solid #e0e8e2}.editor-jumps button{flex:1;min-width:0;min-height:40px;padding:5px;font-size:12px;background:#edf4ef;border-color:#d0dfd4;color:#28533e;white-space:nowrap}#item-form .editor-section,#item-form .item-purchase{scroll-margin-top:132px}

/* Missing specification indicators do not add a row or alter stored source text. */
.brand-name-line:has(>.spec-warning){display:flex;align-items:flex-start;gap:4px}
.brand-name-line:has(>.spec-warning)>.stock-name{flex:1;min-width:0}
.spec-warning{display:inline-flex;align-items:center;justify-content:center;flex:0 0 20px;width:20px;height:20px;min-height:20px;padding:0;border:1px dashed currentColor;border-radius:50%;font-size:12px;line-height:1;vertical-align:middle}
.spec-required{color:#9a4a00;background:#fff2d7}
.spec-reference{color:#64748b;background:#f1f5f9}
.spec-value-edit{display:inline;padding:2px 4px;min-height:0;max-width:100%;border:0;border-bottom:1px dashed currentColor;border-radius:3px;text-align:left;white-space:normal;overflow-wrap:anywhere;font:inherit}
.spec-focus{outline:3px solid #e9a32e;outline-offset:2px}
.order-card-name>.spec-warning{margin-left:5px}
