.item-card-clickable{cursor:pointer;transition:transform .15s ease,border-color .15s ease}.item-card-clickable:hover,.item-card-clickable:focus-visible{border-color:#a9bca1;transform:translateY(-1px);outline:none}.modal-open{overflow:hidden}.modal-backdrop[hidden]{display:none}.modal-backdrop{position:fixed;inset:0;z-index:20;background:#17251ecc;display:flex;align-items:center;justify-content:center;padding:22px}.product-modal{position:relative;width:min(100%,440px);background:var(--paper);border-radius:20px;overflow:hidden;box-shadow:0 20px 70px #0004;animation:enter .2s ease}.modal-close{position:absolute;z-index:2;top:12px;right:12px;width:36px;height:36px;border:0;border-radius:50%;background:#15271dbb;color:white;font-size:26px;line-height:1;cursor:pointer}.modal-image-wrap{width:100%;height:min(60svh,420px);background:#e9eee7;display:grid;place-items:center;overflow:hidden}.modal-image-wrap img{width:100%;height:100%;object-fit:contain}.modal-image-placeholder{font-size:52px;color:#8da084}.modal-product-info{padding:19px 21px 23px}.modal-product-info h3{font-size:20px;line-height:1.45;margin:8px 0 15px;overflow-wrap:anywhere}.modal-meta{display:grid;grid-template-columns:auto 1fr auto 1fr;gap:7px 10px;align-items:center;padding-top:12px;border-top:1px solid var(--line);font-size:11px}.modal-meta span{color:var(--muted)}.modal-meta b{color:var(--green);font-size:12px}
.delete-item-button{height:43px;border:1px solid #ead5d0;border-radius:10px;background:#fff;color:#a24739;font:600 12px 'DM Sans','Noto Sans SC',sans-serif;cursor:pointer}.delete-item-button:hover{background:#fbf0ed}.confirm-backdrop[hidden]{display:none}.confirm-backdrop{position:fixed;inset:0;z-index:30;background:#17251e99;display:flex;align-items:center;justify-content:center;padding:24px}.confirm-dialog{width:min(100%,330px);padding:23px 20px 18px;border-radius:17px;background:#fff;text-align:center;box-shadow:0 18px 55px #0003;animation:enter .18s ease}.confirm-icon{width:38px;height:38px;margin:0 auto 11px;border-radius:50%;display:grid;place-items:center;background:#fbefeb;color:#a24739;font-weight:700}.confirm-dialog h3{margin:0;font-size:16px}.confirm-dialog p{margin:9px 0 20px;color:#778177;font-size:12px;line-height:1.6}.confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.confirm-actions button{height:41px;border:0;border-radius:9px;font:600 12px 'DM Sans','Noto Sans SC',sans-serif;cursor:pointer}.confirm-actions #cancel-delete{background:#f0f3ef;color:#526456}.confirm-actions #confirm-delete{background:#a24739;color:#fff}
.bottom-nav{position:fixed;z-index:15;left:50%;bottom:0;transform:translateX(-50%);width:min(100%,520px);min-height:64px;padding:7px 18px calc(7px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(3,1fr);gap:8px;background:#fffffff2;border-top:1px solid #e6eae5;box-shadow:0 -8px 26px #203b290b;backdrop-filter:blur(14px)}.bottom-nav button{border:0;border-radius:11px;background:transparent;color:#788278;display:flex;align-items:center;justify-content:center;gap:7px;font:600 11px 'DM Sans','Noto Sans SC',sans-serif;cursor:pointer}.bottom-nav button.active{background:#eaf1e6;color:var(--green)}.bottom-nav-icon{font-size:17px;line-height:1}.shell{padding-bottom:110px}@media(min-width:600px){.bottom-nav{bottom:25px;width:min(calc(100% - 30px),490px);border:1px solid var(--line);border-radius:16px}}
.product-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.product-actions button{height:43px;margin:0}.edit-item-button{border:1px solid #cbd9c6;border-radius:10px;background:#eaf1e6;color:var(--green);font:600 12px 'DM Sans','Noto Sans SC',sans-serif;cursor:pointer}.edit-item-button:hover{background:#dfead9}.edit-backdrop[hidden]{display:none}.edit-backdrop{position:fixed;inset:0;z-index:25;background:#17251e99;display:flex;align-items:center;justify-content:center;padding:20px}.edit-dialog{position:relative;width:min(100%,410px);max-height:calc(100svh - 40px);overflow:auto;padding:23px 20px 19px;border-radius:18px;background:var(--paper);box-shadow:0 18px 55px #0003;animation:enter .18s ease}.edit-dialog h3{margin:7px 0 17px;font-size:20px}.edit-dialog .field-label{margin-top:14px}.edit-select{appearance:auto}.edit-close{position:absolute;right:15px;top:14px;border:0;background:transparent;color:#768077;font-size:25px;cursor:pointer}.edit-actions{margin-top:18px}.edit-actions #save-edit{background:var(--green);color:#fff}
.filter-trigger{position:relative;z-index:1;flex:1;height:100%;padding:0 25px 0 10px;border:0;background:transparent;color:var(--ink);text-align:left;font:600 11px 'DM Sans','Noto Sans SC',sans-serif;cursor:pointer}.filter-trigger .filter-chevron{right:0}.category-chooser-backdrop[hidden]{display:none}.category-chooser-backdrop{position:fixed;inset:0;z-index:45;padding:20px;background:#15251db0;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px)}.category-chooser-dialog{width:min(100%,430px);max-height:min(82svh,690px);display:flex;flex-direction:column;overflow:hidden;border:1px solid #ffffffa8;border-radius:23px;background:linear-gradient(150deg,#fbfcfa 0%,#f2f6ef 100%);box-shadow:0 24px 80px #07190f55;animation:enter .22s ease}.category-chooser-header{display:flex;align-items:flex-start;justify-content:space-between;padding:23px 21px 16px}.category-chooser-header h3{margin:7px 0 4px;font-size:21px;letter-spacing:-.04em}.category-chooser-header p{margin:0;color:var(--muted);font-size:11px}.category-chooser-header>button{width:35px;height:35px;border:1px solid var(--line);border-radius:50%;background:#fff;color:#647067;font-size:22px;line-height:1;cursor:pointer}.category-chooser-list{display:grid;gap:7px;overflow:auto;padding:3px 15px 17px;overscroll-behavior:contain}.category-choice{min-height:54px;width:100%;display:flex;align-items:center;gap:11px;padding:8px 11px;border:1px solid #e5ebe2;border-radius:13px;background:#fff;color:var(--ink);text-align:left;font:500 12px 'DM Sans','Noto Sans SC',sans-serif;cursor:pointer;transition:background .15s,border-color .15s,transform .15s}.category-choice:hover{transform:translateY(-1px);border-color:#bdcdb5;background:#fbfdf9}.category-choice.selected{border-color:#a7bd9c;background:#eaf2e5;color:var(--green);box-shadow:0 3px 12px #285b430d}.category-choice-icon{width:34px;height:34px;flex:none;display:grid;place-items:center;border-radius:11px;background:#f0f4ed;color:var(--green);font-size:17px}.category-choice-name{flex:1;font-weight:600}.category-choice-check{color:var(--green);font-size:15px;font-weight:700}.category-choice-number{min-width:25px;height:25px;padding:0 5px;display:grid;place-items:center;border-radius:8px;background:#f2f5ef;color:#798779;font-size:10px;font-weight:700}.category-choice.selected .category-choice-number{background:#d6e5ce;color:var(--green)}.edit-dialog .category-trigger{margin-bottom:3px}
.product-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.return-item-button{height:43px;border:1px solid var(--line);border-radius:10px;background:#f0f3ef;color:#526456;font:600 12px 'DM Sans','Noto Sans SC',sans-serif;cursor:pointer}.return-item-button:hover{background:#e6ece3}
.count-input-row{display:flex;align-items:stretch;gap:9px}.count-input-row .quantity-wrap{flex:1;min-width:0}.count-photo-button{width:102px;flex:none;border:1px solid #ccddc5;border-radius:10px;background:#eaf2e5;color:var(--green);display:flex;align-items:center;justify-content:center;gap:6px;font:600 11px 'DM Sans','Noto Sans SC',sans-serif;cursor:pointer}.count-photo-button span{font-size:16px}.count-photo-button:hover{background:#dfead9}.count-photo-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
