:root{color-scheme:light;--ink:#22231f;--muted:#70716b;--line:#dedfd8;--paper:#fafaf8;--green:#315e48;--amber:#84571a}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif;font-size:16px;line-height:1.7}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0}button:disabled,input:disabled{cursor:not-allowed;opacity:.48}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid #55886e;outline-offset:4px}button{touch-action:manipulation}input,select,textarea{width:100%;background:white;border:1px solid #b8bbb1;border-radius:8px;min-height:54px;padding:12px 14px;color:var(--ink);font-size:18px}textarea{min-height:100px;resize:vertical}label{display:block;font-weight:600}label input,label select,label textarea{margin-top:7px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(28px,4vw,36px);line-height:1.45;letter-spacing:-.04em}h1,h2{margin-bottom:12px}h2{font-size:21px;line-height:1.5}h3{font-size:18px}small{font-size:13px;line-height:1.7;color:var(--muted);display:block}p{margin-bottom:14px}fieldset{border:0;margin:0;padding:0;min-width:0}a{color:inherit}svg{flex-shrink:0}button svg{vertical-align:middle}.brand{font-size:33px;line-height:1;letter-spacing:.15em;font-weight:500;display:flex;align-items:center;gap:18px}.brand span{font-size:9px;letter-spacing:.22em;padding-left:17px;border-left:1px solid #999;line-height:1.7}.brand-button{background:none;text-align:left;padding:0;min-height:48px}.topbar{max-width:1120px;margin:auto;justify-content:space-between;padding:20px 28px 14px;border-bottom:1px solid var(--line)}.top-actions,.topbar{display:flex;align-items:center}.top-actions{gap:5px}.role{font-size:12px;border:1px solid var(--line);border-radius:30px;padding:3px 12px}.icon-button{min-width:48px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border-radius:50%}.icon-button:hover{background:#e9eae4}.sync{max-width:1120px;margin:auto;padding:10px 28px;display:flex;gap:7px;align-items:center;color:var(--muted);font-size:12px}.sync>span:last-child{margin-left:auto}.dot{width:6px;height:6px;background:#568866;border-radius:50%;display:inline-block}.dot.offline{background:#a54536}.content{max-width:1000px;padding:32px 28px 130px;margin:auto;min-height:80vh}.page-heading{margin-bottom:32px}.page-heading p{color:var(--muted);max-width:650px}.eyebrow{font-size:11px;letter-spacing:.18em;color:var(--muted);display:block;margin-bottom:12px;font-weight:600}.file-button,.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;border-radius:8px;padding:14px 22px;font-size:16px;font-weight:600;text-decoration:none;line-height:1.5}.primary{background:var(--ink);color:white}.primary:hover{background:#3c3e36}.secondary{border:1px solid #bfc2b7;background:white;color:var(--ink)}.secondary:hover{background:#f0f1e9}.huge{min-height:72px;font-size:22px;width:100%;margin:16px 0}.plain,.text-button{background:none;color:inherit;min-height:48px;padding:7px 3px;display:inline-flex;gap:8px;align-items:center}.text-button{flex-wrap:wrap;text-align:left}.text-button small{width:100%;text-align:left}.row{display:flex;align-items:center;gap:12px}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.stack{display:flex;flex-direction:column;gap:20px}.panel{background:white;border:1px solid var(--line);border-radius:12px;padding:24px;margin-bottom:24px}.panel h2 svg{vertical-align:middle;margin-right:6px}.stats{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:28px}.stat,.stats{background:white}.stat{position:relative;text-align:left;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px}.stat:nth-child(3n){border-right:0}.stat:nth-child(n+4){border-bottom:0}.stat>span{display:block;font-size:14px;color:var(--muted)}.stat strong{display:block;font-size:40px;font-weight:500;line-height:1.6;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat strong small{display:inline;font-size:13px;margin-left:8px}.stat>svg{position:absolute;bottom:24px;right:20px;color:var(--muted)}.stat.amber{background:#fbf5e9}.section{margin:36px 0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.section-heading h2{margin:0}.table-wrap{border:1px solid var(--line);background:white;border-radius:10px;overflow-x:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{font-weight:400;font-size:12px;color:var(--muted);text-align:left;background:#f1f2ec;padding:12px 18px}td{padding:10px 18px;border-top:1px solid var(--line)}td:first-child{width:65%;white-space:normal}.count-button{background:#f8edda;min-width:48px;min-height:48px;border-radius:8px;font-weight:600;color:var(--amber)}.hint{border-top:1px solid var(--line);padding:26px 0;display:flex;gap:15px;align-items:flex-start;color:var(--muted);margin-top:35px;font-size:14px}.task-button{width:100%;display:flex;align-items:center;gap:20px;padding:30px 24px;background:white;color:var(--ink);border:1px solid var(--line);border-radius:12px;margin-bottom:20px;text-align:left;min-height:140px}.task-button.dark{background:#262822;color:white;border-color:#262822}.task-button.dark small{color:#d5d8cc}.task-button>span:nth-child(2){flex:1 1}.task-button strong{display:block;font-size:25px;line-height:1.5}.task-button small{margin-top:8px;font-size:17px}.task-button .icon{width:64px;height:64px;display:flex;align-items:center;justify-content:center;border:1px solid #bdc0b3;border-radius:50%}.task-button.compact{min-height:85px;padding:22px}.task-button.compact strong{font-size:20px;flex:1 1}.preview-toggle{font-size:14px;color:var(--muted)}.bottom-nav{position:fixed;z-index:20;bottom:0;left:0;right:0;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:rgba(250,250,248,.98);border-top:1px solid var(--line);gap:6px}.bottom-nav,.bottom-nav button{display:flex;justify-content:center}.bottom-nav button{background:transparent;min-width:60px;width:110px;min-height:58px;color:var(--muted);border-radius:8px;flex-direction:column;align-items:center;gap:3px}.bottom-nav button[aria-current]{background:#e9ece2;color:#24291e}.bottom-nav span{font-size:12px}.cards{display:grid;grid-gap:16px;gap:16px;margin:24px 0}.unit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-card{display:flex;align-items:center;gap:20px;background:white;border:1px solid var(--line);border-radius:12px;text-align:left;padding:18px}.product-card>div:nth-child(2){flex:1 1}.product-card h2{margin:10px 0}.photo{width:120px;height:120px;object-fit:cover;border-radius:8px;background:#eeeee8;flex-shrink:0}.photo.large{width:100%;height:320px;object-fit:contain;background:#eeeee8}.placeholder{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;color:#9b9e92}.placeholder span{font-size:12px}.unit-card{display:flex;position:relative;align-items:center;gap:16px;background:white;border:1px solid var(--line);border-radius:12px;padding:16px;text-align:left}.unit-card .photo{width:100px;height:124px}.unit-card-body{flex:1 1;min-width:0}.unit-number{font-size:21px;letter-spacing:.03em;display:block;margin:8px 0 4px}.unit-card h2{font-size:16px;font-weight:500;margin:0 0 5px}.unit-card p{font-size:12px;margin:5px 0 0}.unit-card>svg{width:15px}.badge{display:inline-flex;padding:3px 10px;border-radius:5px;background:#efefea;color:#5d6057;font-size:12px;white-space:nowrap;font-weight:600}.grade-A{background:#e8f0e7;color:#375f40}.grade-B{background:#faecd3;color:#805118}.requested{background:#e5ebf7;color:#374d80}.damage{color:var(--amber)}.muted{color:var(--muted)}.search{display:flex;align-items:center;border:1px solid var(--line);background:white;border-radius:8px;padding-left:16px;gap:8px}.search input{border:0;background:transparent;margin:0}.empty{text-align:center;padding:55px 20px;color:var(--muted)}.empty svg{margin:auto auto 15px}.empty h2{font-size:19px}.empty p{font-size:14px}.back{min-height:48px;display:flex;align-items:center;gap:8px;background:none;color:var(--muted);padding:0;margin-bottom:20px}.detail-heading{margin:15px 0 24px}.detail-heading h1{margin-top:14px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:24px;gap:24px;align-items:stretch;margin-bottom:24px}.number-panel{padding:28px 20px;border:1px solid #bfc2b6;border-radius:10px;background:#f0f2e9;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.number-panel p{margin-bottom:8px;color:#575e48;font-size:15px}.number-panel strong{font-size:clamp(25px,5vw,39px);letter-spacing:.045em;word-break:break-all;line-height:1.8}.number-panel small{margin-top:14px}.shipping-callout{display:flex;gap:16px;align-items:center;padding:20px;background:#eaf0f9;border-radius:10px;margin-bottom:24px}.shipping-callout h2{font-size:19px;margin:0}.shipping-callout p{margin:3px 0 0;font-size:14px}dl>div{display:flex;gap:14px;justify-content:space-between;padding:9px 0;border-bottom:1px solid #eee}dt{color:var(--muted)}dd{margin:0;text-align:right}.tags{display:flex;gap:10px;flex-wrap:wrap}.tags button,.tags span{border:1px solid #bfc2b6;border-radius:8px;min-height:48px;padding:10px 16px;background:white}.tags button.selected{background:#272b23;color:white}.tags.readonly span{background:#f6f2e9;font-size:14px;min-height:0}.photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px;margin-bottom:24px}.photo-tile{min-width:0}.photo-grid button:has(>.photo){display:block;background:none;padding:0;width:100%;margin-bottom:10px}.photo-grid .photo{width:100%;height:230px}.photo-tile .secondary{font-size:14px;padding:10px;min-height:50px}.photo-tile small{font-size:11px;margin-top:5px}.photo-grid>button{padding:0}.photo-grid>button .photo{display:block}.prewrap{white-space:pre-wrap}.timeline{list-style:none;padding:0;margin:20px 0}.timeline li{border-left:2px solid #cdd1c4;padding:0 0 20px 20px;margin-left:6px}.timeline span{display:block;font-size:13px;color:var(--muted)}summary{min-height:52px;padding:12px 0;cursor:pointer;font-weight:600}.editor{background:#f8f9f4;padding:18px;border-radius:8px}.inspection-hero{display:flex;gap:24px;align-items:center;margin-bottom:24px}.inspection-hero .photo.large{width:160px;height:160px}.step{display:inline-flex;background:#eef0e8;border-radius:50%;width:32px;height:32px;align-items:center;justify-content:center;margin-right:12px;font-size:16px}.grade-choice{display:flex;gap:14px}.grade-choice button{flex:1 1;min-height:110px;padding:16px;background:white;border:2px solid var(--line);border-radius:10px}.grade-choice strong{font-size:30px;display:block}.grade-choice span{display:block;font-size:16px}.grade-choice .chosen{border-color:#356145;background:#edf3e9;color:#26482c}.grade-choice .chosen.b{border-color:#8d6529;background:#faf1e1;color:#6c4a1b}.stepper{display:flex;align-items:center;justify-content:center;gap:28px;margin:20px 0}.stepper button{width:64px;height:64px;border:1px solid #aaa;background:white;border-radius:10px;font-size:30px}.stepper output{font-size:42px;min-width:60px;text-align:center}.stepper output small{display:inline;font-size:18px;margin-left:10px}.file-button{position:relative;background:#272b23;color:white;cursor:pointer;min-height:62px;overflow:hidden;flex:1 1}.file-button.subtle{background:white;color:var(--ink);border:1px solid var(--line)}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer;margin:0;width:100%;height:100%;font-size:0}.picked{display:flex;gap:10px;flex-wrap:wrap}.picked>div{display:flex;align-items:center;background:#f0f1eb;padding:8px;border-radius:8px;gap:8px}.picked img{width:50px;height:50px;object-fit:cover;border-radius:4px}.picked span{font-size:13px}.segmented{display:flex;padding:5px;background:#eceee7;border-radius:10px;margin-bottom:24px}.segmented button{flex:1 1;min-height:52px;background:transparent;border-radius:7px;font-size:16px}.segmented button[aria-pressed=true]{background:white;box-shadow:0 1px 4px #0001;font-weight:600}.error,.saving,.success{padding:16px 20px;border-radius:8px;margin-bottom:20px;display:flex;gap:12px;align-items:center}.error{background:#fff0eb;color:#8a3020;border:1px solid #e1baaf}.error .plain{margin-left:auto;align-self:flex-start}.success{background:#edf4e9;color:#335b36}.saving{background:#f1f1e9;position:-webkit-sticky;position:sticky;top:8px;z-index:40}.warning{background:#fff8e9}.spin{animation:spin 1.5s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}dialog{border:1px solid var(--line);border-radius:14px;background:white;color:var(--ink);max-width:520px;width:calc(100% - 32px);padding:28px;box-shadow:0 20px 100px #0003;max-height:90dvh;overflow:auto}dialog::-webkit-backdrop{background:#151a13a6}dialog::backdrop{background:#151a13a6}dialog .stack{gap:12px;margin-top:24px}.confirm-number{display:block;font-size:27px;letter-spacing:.03em;background:#f0f2e9;padding:16px;border-radius:6px;word-break:break-all;margin:16px 0}.photo-dialog{max-width:900px}.photo-dialog .photo.large{height:60dvh;object-fit:contain}.login{max-width:520px;padding:40px 24px;margin:auto}.welcome{padding:50px 0 24px}.welcome h1{font-size:34px}.welcome p{color:var(--muted);margin-top:20px}.login .panel{padding:25px}.login footer{font-size:12px;color:var(--muted);text-align:center;margin:25px 0}.login ol{padding-left:24px;font-size:15px}.login small svg{display:inline;vertical-align:middle;margin-right:4px}.staff{font-size:19px}.staff h2{font-size:22px}.staff .page-heading h1{font-size:28px}.staff .product-card h2{font-size:22px}.staff .unit-card h2{font-size:20px}.staff .badge{font-size:15px}.staff .primary,.staff .secondary{font-size:20px;min-height:60px}.staff small{font-size:15px}.staff .unit-number{font-size:25px}.staff .bottom-nav span{font-size:14px}.staff .content{max-width:780px}@media(max-width:700px){.topbar{padding:16px 18px 10px}.brand{font-size:28px;gap:12px}.brand span{font-size:8px;padding-left:12px}.sync{padding:9px 18px;font-size:11px}.role{display:none}.content{padding:25px 18px 120px}.page-heading{margin-bottom:25px}.stats{grid-template-columns:repeat(2,1fr)}.stat{padding:18px}.stat:nth-child(3n){border-right:1px solid var(--line)}.stat:nth-child(2n){border-right:0}.stat:nth-child(n+4){border-bottom:1px solid var(--line)}.stat:nth-child(n+5){border-bottom:0}.stat strong{font-size:36px}.stat>span{font-size:13px}.unit-grid{grid-template-columns:1fr}.task-button{padding:24px 18px;gap:14px;min-height:155px}.task-button strong{font-size:23px}.task-button .icon{width:50px;height:50px;border:0}.task-button.compact{padding:20px 16px;gap:12px}.task-button.compact strong{font-size:18px}.task-button.compact>svg:last-child{display:none}.product-card{padding:14px;gap:14px}.product-card .photo{width:92px;height:110px}.product-card h2{font-size:19px}.staff .product-card h2{font-size:20px}.detail-grid{grid-template-columns:1fr;gap:16px}.detail-grid .photo.large{height:270px}.number-panel strong{font-size:32px}.panel{padding:20px}.photo-grid{gap:12px}.photo-grid .photo{height:180px}.photo-grid .secondary{width:100%}.photo-tile small{display:none}.inspection-hero{gap:16px}.inspection-hero .photo.large{width:112px;height:125px}.bottom-nav{gap:0}.bottom-nav button{width:20%;min-width:0}.row.wrap>.primary,.row.wrap>.secondary{flex:1 1}td,th{padding:10px}.shipping-callout h2{font-size:18px}.file-button{font-size:16px;padding:14px 10px}.file-button svg{width:22px}.section-heading small{font-size:11px}.badge{padding:3px 8px}.unit-card .photo{width:93px}.unit-card{gap:13px}.staff .task-button strong{font-size:23px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}.view-switch{margin-bottom:24px}.view-switch .segmented{margin-bottom:8px}.view-switch p{font-size:14px;color:var(--muted);margin:0;line-height:1.7}