*{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{color:#243b33;background:#eaf0e9;margin:0;font-family:-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif;font-size:16px;line-height:1.65}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button,a,input,select,textarea{outline-offset:4px}button:focus-visible,a:focus-visible{outline:3px solid #d8953c}button{color:inherit}button svg,a svg{flex-shrink:0}h1,h2,h3,p{margin:0}h1{letter-spacing:-.025em;font-size:28px;line-height:1.45}h2{font-size:19px;line-height:1.5}h3{font-size:18px}small{font-size:13px}a{color:#176554}input,select,textarea{color:#243b33;background:#fff;border:1px solid #cbd6cd;border-radius:10px;width:100%;min-height:48px;padding:12px 13px;font-size:16px}input:focus,select:focus,textarea:focus{outline-offset:0;outline:2px solid #3b8b71}input::placeholder,textarea::placeholder{color:#7a877d}textarea{resize:vertical}input[type=number]{appearance:textfield}input::-webkit-inner-spin-button{appearance:none}.app-shell{background:#f5f7f3;max-width:760px;min-height:100dvh;margin:0 auto;padding-bottom:105px;position:relative}.app-header{background:#fafcf9;border-bottom:1px solid #e1e7df;justify-content:space-between;align-items:center;gap:8px;padding:20px 24px;display:flex}.brand{text-align:left;letter-spacing:-.025em;background:0 0;border:0;align-items:center;gap:10px;padding:0;font-size:17px;font-weight:750;display:flex}.brand small{letter-spacing:.18em;color:#708279;margin-top:2px;font:9px/1.5 system-ui,sans-serif;display:block}.brand-icon{color:#fff;background:#176554;border-radius:13px;place-items:center;width:42px;height:42px;display:grid}.version-tag{white-space:nowrap;color:#586c5e;border:1px solid #d9e2d8;border-radius:20px;padding:4px 9px;font-size:11px;font-weight:600}main{padding:28px 24px}.greeting{padding:8px 0 25px}.eyebrow{color:#5d7c68;letter-spacing:.08em;margin-bottom:13px;font-size:13px;font-weight:600}.greeting h1{letter-spacing:.02em;font-size:34px;font-weight:750;line-height:1.55}.greeting>p:last-child{color:#6a7c70;margin-top:12px;font-size:14px}.summary-strip{background:#eaf0e6;border-radius:16px;align-items:center;gap:26px;margin-bottom:30px;padding:18px 20px;display:flex}.summary-strip>div{flex-direction:column;display:flex}.summary-strip b{color:#214e3c;font:650 30px/1.1 system-ui,sans-serif}.summary-strip span{color:#627562;margin-top:5px;font-size:12px}.summary-strip .cloud-status{color:#36654b;align-items:center;gap:5px;margin-left:auto;display:flex}.section-title{justify-content:space-between;align-items:center;gap:8px;margin:26px 0 14px;display:flex}.section-title>span{color:#758475;font-size:12px}.action-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.action-card{text-align:left;background:#fff;border:1px solid #dfe7dc;border-radius:18px;flex-direction:column;align-items:flex-start;min-height:161px;padding:18px;display:flex;position:relative}.tile-icon{color:#286b4f;background:#e4f0e6;border-radius:12px;place-items:center;width:42px;height:42px;margin-bottom:12px;display:grid}.tile-icon.sand{color:#a88037;background:#f5eddc}.tile-icon.blue{color:#527886;background:#e7eef1}.action-card b{font-size:18px}.action-card small{color:#798378;margin-top:4px;font-size:11px}.tile-arrow{color:#91a18e;width:17px;height:17px;position:absolute;top:25px;right:13px}.action-card.featured{color:#fff;background:#176554;border-color:#176554}.featured .tile-icon{color:#e0f4e3;background:#347d6d}.featured small{color:#d0e4d8}.featured .tile-arrow{color:#c7e1d4}.wide-scan{color:#38664c;text-align:left;background:#edf2e9;border:1px solid #d8e3d2;border-radius:15px;align-items:center;gap:14px;width:100%;margin:17px 0 30px;padding:17px;display:flex}.wide-scan span{flex:1}.wide-scan b{font-size:15px;display:block}.wide-scan small{color:#71806d;font-size:12px}.future-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.future-card{color:#81907e;background:#eff2ec;border:1px dashed #d8dfd3;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:18px 4px;display:flex}.future-card b{font-size:13px;font-weight:500}.future-card small{background:#e4e9df;border-radius:5px;padding:2px 8px;font-size:10px}.note{color:#72806f;align-items:flex-start;gap:10px;margin-top:26px;display:flex}.note p{font-size:12px;line-height:1.9}.note svg{flex-shrink:0;margin-top:4px}.bottom-nav{width:100%;max-width:760px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:20;background:#ffffffed;border-top:1px solid #e0e7dc;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav button{color:#879283;background:0 0;border:0;border-radius:10px;flex-direction:column;align-items:center;gap:4px;min-height:54px;padding:7px 0;display:flex}.bottom-nav span{font-size:11px;font-weight:600}.bottom-nav button.active{color:#176554;background:#edf4ec}.page-title{justify-content:space-between;align-items:center;gap:10px;margin-bottom:25px;display:flex}.page-title p{color:#72806f;margin-top:6px;font-size:14px}.primary,.secondary{border:1px solid #176554;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:50px;padding:12px 18px;font-weight:650;line-height:1.5;text-decoration:none;display:inline-flex}.primary{color:#fff;background:#176554}.secondary{color:#285d48;background:#fff;border-color:#ccd9c8}.primary:hover{background:#105443}.secondary:hover{background:#eff5eb}.compact{min-height:44px;padding:8px 12px;font-size:14px}.full{width:100%}.card{background:#fff;border:1px solid #dfe6da;border-radius:17px;margin:18px 0;padding:22px}.card h2{align-items:center;gap:8px;margin-bottom:14px;display:flex}.card p+p{margin-top:12px}.card .full{margin-top:15px}.muted{color:#768373;overflow-wrap:anywhere;font-size:14px}.search-box{color:#65805f;background:#fff;border:1px solid #ccd8c6;border-radius:13px;align-items:center;gap:9px;padding:5px 12px;display:flex}.search-box input{background:0 0;border:0;outline:0;min-width:0;padding:10px 0}.search-box button{color:#39704d;background:#eaf2e4;border:0;border-radius:9px;place-items:center;min-width:45px;height:44px;display:grid}.chips{scrollbar-width:none;gap:7px;padding:16px 0;display:flex;overflow:auto}.chips button{white-space:nowrap;background:#fff;border:1px solid #dae3d5;border-radius:30px;min-height:40px;padding:8px 17px;font-size:13px}.chips button.selected{color:#fff;background:#285f49;border-color:#285f49}.list-heading{color:#78836f;margin:7px 0;font-size:13px}.product-list{background:#fff;border:1px solid #e1e7dc;border-radius:14px;overflow:hidden}.product-list:empty{display:none}.product-row{text-align:left;background:#fff;border:0;border-bottom:1px solid #e8ece4;align-items:center;gap:13px;width:100%;min-height:89px;padding:16px;display:flex}.product-row:last-child{border-bottom:0}.product-row-copy{flex:1;min-width:0}.product-row b{overflow-wrap:anywhere;font-size:16px;display:block}.product-row small{color:#78826f;margin-top:3px;font-size:12px;display:block}.product-photo{color:#889780;background:#eef2e9;border-radius:10px;flex-shrink:0;place-items:center;width:55px;height:58px;display:grid;overflow:hidden}.product-photo img{object-fit:contain;background:#fff;width:100%;height:100%}.product-photo.large{border-radius:22px;width:140px;height:140px;margin:0 auto 20px}.empty{text-align:center;color:#88957f;padding:40px 18px}.empty svg{margin:auto}.empty h3{color:#4f674b;margin-top:14px}.empty p{margin-top:8px;font-size:14px}.empty .primary{margin-top:20px}.back{color:#4f7351;background:0 0;border:0;align-items:center;gap:6px;min-height:40px;margin-bottom:15px;padding:0;font-size:14px;display:flex}.detail-hero{text-align:center;padding:15px 0 25px}.detail-hero h1{overflow-wrap:anywhere;margin:12px 0 7px}.detail-hero p{color:#79836f;font-size:14px}.category-label{color:#51763c;background:#e8efdf;border-radius:6px;padding:4px 12px;font-size:12px}.button-row{flex-wrap:wrap;gap:10px;display:flex}.button-row>*{white-space:nowrap;flex:1}.card dl{margin:0}.card dt{color:#7e8974;margin-top:14px;font-size:13px}.card dd{overflow-wrap:anywhere;margin:3px 0 0}.prewrap{white-space:pre-wrap}.barcode-detail{align-items:center;gap:15px;padding:10px 0;display:flex}.barcode-detail span{min-width:0}.barcode-detail small{color:#798774;font-size:13px;display:block}.code{overflow-wrap:anywhere;font:16px ui-monospace,monospace}.danger-text{color:#a2493d;background:0 0;border:0;align-items:center;gap:6px;min-height:44px;padding:8px 0;font-size:14px;display:flex}.photo-editor{align-items:center;gap:20px;display:flex}.photo-editor>img{object-fit:contain;background:#f5f7f0;border-radius:12px;width:95px;height:95px}.photo-editor>svg{color:#8b9b81;flex-shrink:0;width:85px}.photo-editor p{color:#7a8771;margin:4px 0 10px;font-size:12px}.file-label{cursor:pointer;position:relative;overflow:hidden}.file-label input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.form-stack{flex-direction:column;gap:21px;display:flex}.field{flex-direction:column;gap:7px;display:flex}.field>span{color:#52684a;font-size:14px;font-weight:600}.barcode-editor{border-top:1px solid #e4eadf;margin-top:17px;padding-top:18px}.two-col{grid-template-columns:1fr 1fr;gap:14px;margin-top:14px;display:grid}.text-button{color:#3f7754;background:0 0;border:0;align-items:center;gap:5px;min-height:40px;padding:4px;font-size:13px;display:inline-flex}.sticky-save{margin:4px 0 15px}.start-count>p{color:#74816c;margin-bottom:20px;font-size:14px}.session-row{text-align:left;background:#fff;border:1px solid #dfe6d7;border-radius:12px;align-items:center;gap:12px;width:100%;margin-bottom:10px;padding:17px 13px;display:flex}.session-row>span:nth-child(2){flex:1;min-width:0}.session-row b{overflow-wrap:anywhere;font-size:16px;display:block}.session-row small{color:#7c8874;margin-top:4px;font-size:12px;display:block}.session-status{color:#76836b;white-space:nowrap;background:#edf0e8;border-radius:5px;padding:4px 7px;font-size:11px}.session-status.active{color:#50792d;background:#e5f1d8}.count-stats{background:#eaf1e3;border-radius:14px;align-items:center;gap:25px;padding:18px;display:flex}.count-stats>span{color:#68805b;font-size:13px}.count-stats b{color:#2a583f;margin-right:6px;font:650 30px system-ui}.count-stats .saved,.count-stats .pending{align-items:center;gap:4px;margin-left:auto;font-size:11px;display:flex}.count-stats .pending{color:#a66814}.scan-main{margin:19px 0}.quantity-card strong{color:#176554;font-size:30px}.quantity-card>p{margin:8px 0}.quantity-card>small{text-align:center;color:#7d886f;margin-top:9px;display:block}.segmented{background:#eef3e9;border-radius:10px;margin:16px 0;padding:4px;display:flex}.segmented button{background:0 0;border:0;border-radius:7px;flex:1;min-height:43px}.segmented button.selected{color:#176554;background:#fff;font-weight:700;box-shadow:0 2px 5px #203a1710}.quantity-input{gap:10px;display:flex}.quantity-input input{text-align:center;min-width:0;font-size:23px}.quantity-input button{white-space:nowrap}.count-number{color:#176554;align-items:baseline;gap:5px;font:650 26px system-ui;display:flex}.count-number small{font-size:12px}.finish-button{margin-top:25px}.event-row{border-bottom:1px solid #eee;justify-content:space-between;gap:15px;padding:12px 0;font-size:13px;display:flex}.event-row small{color:#829077;font-size:11px;display:block}.event-row b{white-space:nowrap}.card summary{cursor:pointer;font-size:15px;font-weight:600}.alert{color:#9d4d31;white-space:pre-line;overflow-wrap:anywhere;background:#fff0e9;border:1px solid #e5c2ad;border-radius:12px;align-items:flex-start;gap:10px;margin-bottom:18px;padding:14px;font-size:14px;display:flex}.alert>span{flex:1}.alert>button:not(.secondary){color:inherit;background:0 0;border:0}.alert>svg{flex-shrink:0;margin-top:3px}.toast{color:#fff;z-index:35;background:#234e3d;border-radius:12px;align-items:center;gap:9px;width:max-content;max-width:calc(100% - 32px);padding:13px 20px;font-size:14px;display:flex;position:fixed;bottom:100px;left:50%;transform:translate(-50%);box-shadow:0 5px 25px #0002}.scanner-backdrop{z-index:50;background:#14291dd9;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.scanner-dialog{background:#fafcf8;border-radius:22px;outline:none;width:100%;max-width:530px;max-height:calc(100dvh - 32px);padding:20px;overflow:auto}.scanner-heading{justify-content:space-between;align-items:center;gap:8px;margin-bottom:15px;display:flex}.scanner-heading h2{font-size:19px}.scanner-heading button{min-height:42px;padding:8px 12px;font-size:13px}.scanner-viewfinder{aspect-ratio:4/3;background:#13251c;border-radius:15px;position:relative;overflow:hidden}.scanner-viewfinder video{object-fit:cover;width:100%;height:100%}.scanner-frame{pointer-events:none;border:2px solid #d4ed8e;border-radius:10px;position:absolute;inset:25% 10%;box-shadow:0 0 0 100px #0002}.scanner-status{color:#325d32;background:#e6f0dd;border-radius:10px;margin-top:14px;padding:13px;font-size:15px;font-weight:600}.scanner-last-code{overflow-wrap:anywhere;color:#7a876e;margin:7px 0;font-size:11px}.scanner-error{color:#984a30;background:#fff0e9;border-radius:10px;margin-top:10px;padding:13px;font-size:14px}.scanner-actions{flex-wrap:wrap;gap:10px;margin:14px 0;display:flex}.scanner-actions>*{flex:1}.scanner-help{color:#74816b;font-size:12px;line-height:1.8}.scanner-manual{border-top:1px solid #dae4d2;flex-direction:column;gap:9px;margin-top:16px;padding-top:15px;display:flex}.scanner-manual label{font-size:13px;font-weight:600}.scanner-manual button{min-height:44px;font-size:14px}@media (width>=600px){main{padding:35px 40px}.app-header{padding:22px 40px}.greeting h1{font-size:40px}.greeting h1 br{display:none}.action-card{min-height:180px;padding:23px}.action-card b{font-size:21px}.action-card small{font-size:13px}.summary-strip{gap:40px}.version-tag{font-size:12px}.brand{font-size:20px}}@media (width<=370px){main{padding:23px 16px}.app-header{padding:16px}.brand{font-size:15px}.version-tag{padding:3px 6px;font-size:9px}.action-card{padding:15px}.action-card b{font-size:16px}.greeting h1{font-size:30px}.summary-strip{gap:20px;padding:16px}.summary-strip .cloud-status{font-size:10px}.button-row{flex-direction:column}.count-stats{gap:15px}}
