:root{font-family:Inter,Noto Sans JP,Yu Gothic UI,sans-serif;color:#17211c;background:#f4f6f4;font-synthesis:none;--ink:#17211c;--muted:#67736c;--line:#dce3de;--green:#185c3d;--green2:#e5f1ea;--cream:#faf8f2;--danger:#a33b32}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.app-shell{min-height:100vh;display:grid;grid-template-columns:240px 1fr}aside{background:#15251d;color:#eef5f0;padding:28px 18px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;gap:11px;align-items:center;padding:0 8px 28px}.brand b{display:block;font-size:18px}.brand small{color:#9fb3a7}.brand-mark{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:#d7ad57;color:#1e3026}.brand .brand-mark{width:38px;height:38px}nav{display:grid;gap:7px}nav button{border:0;background:transparent;color:#c8d4cc;border-radius:9px;padding:11px 12px;text-align:left;display:flex;gap:10px;align-items:center}nav button svg{width:18px}nav button span{margin-left:auto}nav button.active{background:#294337;color:#fff}.user-card{margin-top:auto;border-top:1px solid #31483c;padding:18px 8px 0}.user-card small{display:block;color:#9fb3a7;margin:3px 0 13px;overflow:hidden;text-overflow:ellipsis}.user-card button{border:0;background:transparent;color:#c8d4cc;padding:0;display:flex;gap:7px}.workspace{padding:42px clamp(22px,5vw,70px);max-width:1500px;width:100%;margin:auto}.topbar,.modal header,.modal footer,.section-head,.panel-head{display:flex;align-items:center;justify-content:space-between;gap:18px}.topbar{margin-bottom:24px}.topbar h1,.login-card h1,.modal h2{margin:3px 0;font-family:Georgia,Yu Mincho,serif;letter-spacing:.02em}.eyebrow{font-size:11px;letter-spacing:.17em;color:#748078;margin:0;font-weight:700}.primary,.secondary,.ghost{border-radius:9px;padding:11px 16px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:650}.primary{background:var(--green);color:#fff}.secondary{background:#fff;border-color:#cfd8d2;color:#294337}.ghost{background:transparent;color:var(--muted)}.notice{border-radius:10px;padding:12px 15px;margin:12px 0;font-size:14px}.notice.warning{background:#fff4d9;color:#75510d;border:1px solid #eed18d}.notice.error{background:#fae9e6;color:#8b302a;border:1px solid #edc1bc}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:22px 0}.stats article{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px}.stats span{display:block;color:var(--muted);font-size:13px}.stats strong{font-family:Georgia,serif;font-size:30px}.stats small{margin-left:5px}.panel{background:#fff;border:1px solid var(--line);border-radius:13px;overflow:hidden}.panel-head{padding:14px;border-bottom:1px solid var(--line)}.search{display:flex;align-items:center;gap:10px;flex:1;background:#f5f7f5;border-radius:8px;padding:0 12px}.search input{border:0;background:transparent;outline:0;width:100%;padding:11px 0}.shipment-row{display:grid;grid-template-columns:minmax(250px,2fr) 1fr 130px 130px;gap:16px;align-items:center;width:100%;border:0;border-bottom:1px solid #edf0ee;background:#fff;padding:18px;text-align:left;color:var(--ink)}.shipment-row:hover{background:#fafcfb}.shipment-row strong,.shipment-row small{display:block}.shipment-row small{color:var(--muted);margin-top:4px}.contents-count{color:var(--muted);display:flex;align-items:center;gap:5px}.badge{display:inline-flex;justify-content:center;width:max-content;border-radius:999px;padding:5px 9px;font-size:12px;background:#eef1ef}.badge.contents_confirmed{background:#fff1cf;color:#79540b}.badge.label_ready{background:#e5eef9;color:#24598d}.badge.dispatched{background:#dff1e6;color:#185c3d}.badge.cancelled{background:#eee;color:#666}.empty{text-align:center;padding:70px 20px;color:var(--muted)}.empty h3{color:var(--ink);margin-bottom:5px}.login-shell{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 70% 15%,#e5f0e9,transparent 32%),#f4f3ed;padding:20px}.login-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:34px;width:min(430px,100%);box-shadow:0 20px 60px #30473918}.login-card .brand-mark{margin-bottom:22px}.muted{color:var(--muted);line-height:1.6}.stack{display:grid;gap:14px}.stack label,.form-grid label{font-size:13px;font-weight:650;color:#455149;display:grid;gap:6px}input,select,textarea{border:1px solid #cfd8d2;border-radius:8px;padding:10px 11px;background:#fff;color:var(--ink);min-width:0}textarea{min-height:90px;resize:vertical}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#102019b8;z-index:10;display:grid;place-items:center;padding:20px}.modal{background:#fbfcfb;border-radius:16px;width:min(650px,100%);max-height:92vh;overflow:auto;box-shadow:0 30px 80px #0004}.modal.wide{width:min(960px,100%)}.modal>header,.modal>footer{padding:22px 26px;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:2}.modal>footer{border-top:1px solid var(--line);border-bottom:0;top:auto;bottom:0;justify-content:flex-end}.icon{border:0;background:transparent;color:var(--muted);padding:6px;display:grid;place-items:center}.header-actions{display:flex;align-items:center;gap:12px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:24px 26px}.full{grid-column:1/-1}.recipient-preview{display:grid;gap:4px;background:var(--green2);border-radius:10px;padding:15px}.recipient-preview small{color:#875d13}.section-head{margin-top:8px}.section-head h3,.section-head p{margin:0}.section-head p{color:var(--muted);font-size:13px;margin-top:4px}.case-row{display:grid;grid-template-columns:1fr 1fr 1.4fr auto;gap:8px}.photo-row{display:grid;grid-template-columns:auto 1fr 1.5fr auto;gap:10px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:9px;padding:9px}.file-button input{display:none}.import-box{border:1px dashed #c9d2cc;border-radius:9px;padding:12px}.import-box summary{cursor:pointer;color:#455149}.import-box textarea{display:block;width:100%;margin:12px 0}.detail-grid{padding:25px;display:grid;grid-template-columns:1fr 1fr;gap:28px}.detail-grid section{min-width:0}.detail-grid h3{font-size:15px;display:flex;align-items:center;gap:7px;border-bottom:1px solid var(--line);padding-bottom:10px}.content-card{background:#fff;border:1px solid var(--line);border-radius:9px;padding:12px;margin:8px 0;display:flex;gap:10px;align-items:center}.content-card strong,.content-card span{display:block}.content-card span{font-size:13px;color:var(--muted)}.label-ready{display:flex;align-items:center;justify-content:space-between;background:var(--green2);border-radius:10px;padding:13px}.label-ready strong{letter-spacing:.08em}.compact{margin-top:13px}.workflow-actions{display:flex;gap:10px;flex-wrap:wrap}.danger-link{border:0;background:transparent;color:var(--danger);padding:10px}.timeline{border-left:2px solid var(--line);margin-left:7px;padding-left:17px}.timeline>div{display:grid;grid-template-columns:160px 1fr 130px;gap:12px;padding:8px 0;font-size:13px}.timeline span,.timeline small{color:var(--muted)}.modal-title-row{display:flex;align-items:center;gap:9px}.back-button{margin-left:-10px}.recipient-step{padding:22px 26px 12px}.recipient-search{display:flex;align-items:center;gap:9px;background:#fff;border:2px solid #bac8bf;border-radius:12px;padding:0 11px;position:sticky;top:104px;z-index:1;box-shadow:0 5px 16px #233b2d10}.recipient-search:focus-within{border-color:var(--green);box-shadow:0 0 0 3px #185c3d1a}.recipient-search input{border:0;outline:0;width:100%;padding:13px 0;font-size:16px}.recipient-section{margin-top:22px}.recipient-section h3{display:flex;align-items:center;gap:7px;margin:0 0 10px;font-size:14px}.recipient-list-head{display:flex;align-items:center;justify-content:space-between}.recipient-list-head span{font-size:12px;color:var(--muted)}.recipient-cards{display:grid;grid-template-columns:1fr 1fr;gap:9px}.recipient-card{display:grid;grid-template-columns:24px 1fr;gap:8px;text-align:left;border:1px solid var(--line);border-radius:11px;background:#fff;padding:13px;color:var(--ink);min-height:88px}.recipient-card:hover{border-color:#8da899}.recipient-card.selected{border:2px solid var(--green);padding:12px;background:var(--green2)}.recipient-check{width:21px;height:21px;border-radius:50%;border:1px solid #b9c5bd;display:grid;place-items:center;color:#fff;margin-top:1px}.recipient-card.selected .recipient-check{background:var(--green);border-color:var(--green)}.recipient-card-main{min-width:0}.recipient-card-main strong,.recipient-card-main small,.recipient-card-main em{display:block}.recipient-card-main strong{font-size:15px}.recipient-card-main small{color:var(--muted);font-size:12px;line-height:1.5;margin-top:4px}.recipient-card-main em{color:#718078;font-size:11px;font-style:normal;margin-top:5px}.recipient-cards.recent .recipient-card{background:#fffaf0;border-color:#e5d5af}.recipient-cards.recent .recipient-card.selected{background:var(--green2);border-color:var(--green)}.recipient-footer{justify-content:space-between!important}.recipient-confirm{display:flex;align-items:center;gap:16px;margin-left:auto}.recipient-confirm div{max-width:430px}.recipient-confirm strong,.recipient-confirm small{display:block}.recipient-confirm small{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}.no-results{text-align:center;color:var(--muted);padding:45px 15px}.recipient-preview.editable{width:100%;border:1px solid #b9d0c2;text-align:left;color:var(--ink);grid-template-columns:1fr auto;align-items:center;cursor:pointer}.recipient-preview.editable div{display:grid;gap:4px}.recipient-preview.editable span{font-size:13px}.recipient-preview.editable em{font-style:normal;color:var(--green);font-weight:700}@media(max-width:800px){.app-shell{display:block}aside{height:auto;position:static;padding:14px 18px;flex-direction:row;align-items:center}.brand{padding:0}.brand small,aside nav,.user-card>div,.user-card>small{display:none}.user-card{border:0;margin:0 0 0 auto;padding:0}.workspace{padding:24px 14px}.stats{grid-template-columns:repeat(3,1fr)}.shipment-row{grid-template-columns:1fr auto}.shipment-row>:nth-child(2),.shipment-row>:nth-child(3){display:none}.form-grid,.detail-grid{grid-template-columns:1fr}.full{grid-column:auto}.case-row{grid-template-columns:1fr}.photo-row{grid-template-columns:auto 1fr auto}.photo-row input{grid-column:1/-1}.modal-backdrop{padding:0}.modal,.modal.wide{width:100%;height:100%;max-height:none;border-radius:0}.timeline>div{grid-template-columns:1fr}.topbar{align-items:flex-end}.topbar h1{font-size:28px}.modal>header{padding:16px 17px}.modal>footer{padding:12px 14px}.recipient-step{padding:14px}.recipient-search{top:83px}.recipient-cards{grid-template-columns:1fr}.recipient-card{min-height:76px;padding:11px}.recipient-card.selected{padding:10px}.recipient-footer>.ghost{display:none}.recipient-confirm{width:100%;display:grid;grid-template-columns:1fr auto;gap:9px}.recipient-confirm .primary{min-height:48px}.recipient-confirm div{min-width:0}.recipient-confirm>span{font-size:13px;color:var(--muted)}.form-grid{padding:18px 14px}.section-head{align-items:flex-end}.section-head .secondary{white-space:nowrap}}.required-chip{display:inline-flex;vertical-align:middle;background:#fae9e6;color:#8b302a;border-radius:999px;padding:2px 7px;font-size:10px;margin-left:5px}.admin-page{display:grid;gap:20px}.admin-page .topbar{margin-bottom:0}.admin-badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:#e5f1ea;color:var(--green);padding:8px 12px;font-size:13px;font-weight:700}.admin-section{overflow:visible}.admin-section-title{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid var(--line)}.admin-section-title>div{display:flex;align-items:center;gap:9px}.admin-section-title h2{font-size:17px;margin:0}.admin-section-title>span{font-size:13px;color:var(--muted)}.admin-filters{display:flex;gap:10px;padding:14px 20px;border-bottom:1px solid var(--line)}.admin-filters select{min-width:150px}.admin-history-list article{display:grid;grid-template-columns:minmax(190px,1.5fr) 1fr 1.2fr 100px 120px;align-items:center;gap:14px;padding:15px 20px;border-bottom:1px solid #edf0ee;font-size:13px}.admin-history-list article:last-child{border-bottom:0}.admin-history-list strong,.admin-history-list small{display:block}.admin-history-list small{color:var(--muted);margin-top:3px}.user-list article{display:grid;grid-template-columns:minmax(240px,1fr) 150px 130px;align-items:center;gap:14px;padding:15px 20px;border-bottom:1px solid #edf0ee}.user-list article.inactive{background:#f7f7f7;color:var(--muted)}.user-identity strong,.user-identity span{display:block}.user-identity span{color:var(--muted);font-size:13px;margin-top:3px}.user-identity small{display:inline-block;margin-left:7px;padding:2px 6px;border-radius:999px;background:var(--green2);color:var(--green);font-size:10px}.user-list .danger-link{display:inline-flex;align-items:center;justify-content:center;gap:5px}.admin-help{margin:0;padding:13px 20px;background:#f7f9f7;color:var(--muted);font-size:12px;line-height:1.6}.role-label{display:inline-block!important;margin-left:6px!important;padding:2px 6px;border-radius:999px;background:#294337;color:#d6e7dc!important;font-size:10px!important}@media(max-width:800px){aside nav{display:flex;margin-left:18px}aside nav button{font-size:0;padding:10px}aside nav button svg{width:20px;height:20px}.admin-badge{font-size:11px}.admin-filters{padding:12px;display:grid;grid-template-columns:1fr auto}.admin-filters select{grid-column:1/-1;grid-row:2}.admin-section-title{padding:15px 13px}.admin-history-list article{grid-template-columns:1fr auto;padding:14px 13px}.admin-history-list article>span:nth-of-type(1),.admin-history-list article>span:nth-of-type(2){display:none}.admin-history-list article>span:nth-of-type(3){grid-column:1}.admin-history-list article>.badge{grid-column:2;grid-row:1}.user-list article{grid-template-columns:1fr auto;padding:14px 13px}.user-identity{grid-column:1/-1}.user-list article>select{min-height:44px}.user-list article>button{min-height:44px}.admin-help{padding:12px 13px}.admin-page .topbar{align-items:center}.admin-page .topbar h1{font-size:24px}}.shipping-route-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px}.shipping-route-cards button{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;text-align:left;border:1px solid var(--line);background:#fff;border-radius:11px;padding:14px;color:var(--ink)}.shipping-route-cards button svg{grid-row:1/3;color:var(--muted)}.shipping-route-cards button strong,.shipping-route-cards button span{display:block}.shipping-route-cards button span{font-size:12px;color:var(--muted);margin-top:3px}.shipping-route-cards button.selected{border:2px solid var(--green);padding:13px;background:var(--green2)}.shipping-route-cards button.selected svg{color:var(--green)}.closure-warning{display:flex;align-items:flex-start;gap:9px}.closure-warning svg{flex:0 0 auto}.shipping-summary{display:grid;gap:5px;background:#f5f7f5;border-radius:9px;padding:12px;margin-bottom:10px}.shipping-summary span{display:flex;align-items:center;gap:5px;font-size:13px;color:var(--muted)}.label-ready>span{font-size:12px;color:var(--muted)}@media(max-width:800px){.topbar>.header-actions{display:grid;gap:7px}.topbar>.header-actions button{min-height:44px;padding:9px 11px}.shipping-route-cards{grid-template-columns:1fr}.shipping-route-cards button{min-height:70px}}.qr-scanner{border:1px solid #c9d5cd;background:#f7faf8;border-radius:12px;padding:14px}.qr-scanner-head{display:flex;justify-content:space-between;align-items:center;gap:16px}.qr-scanner-head h3{display:flex;align-items:center;gap:7px;margin:0}.qr-scanner-head p{margin:4px 0 0;color:var(--muted);font-size:12px}.qr-scanner video{display:block;width:min(440px,100%);aspect-ratio:4/3;object-fit:cover;background:#14231c;border-radius:10px;margin:12px auto}.qr-scanner>small{display:block;color:var(--muted);margin-top:8px}.qr-scanner details{margin-top:10px}.qr-scanner details textarea{width:100%;margin:10px 0}.confirmation-sheet{padding:24px 26px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.confirmation-sheet>section{background:#fff;border:1px solid var(--line);border-radius:11px;padding:15px}.confirmation-sheet h3{display:flex;align-items:center;gap:7px;font-size:14px;margin:0 0 10px}.confirmation-sheet h3 svg{width:18px}.confirmation-sheet p{font-size:13px;color:var(--muted);margin:6px 0}.confirmation-sheet>.full{grid-column:1/-1}.warning-check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:8px;margin-top:8px;color:#6f4a09!important}.warning-check input{width:18px;height:18px}.exception-tabs{display:flex;gap:8px;padding:14px;border-bottom:1px solid var(--line)}.exception-tabs button:not(.secondary){border:0;border-radius:999px;padding:8px 14px;background:#eef1ef;color:var(--muted)}.exception-tabs button.active{background:var(--green);color:#fff}.exception-tabs .secondary{margin-left:auto}.exception-list article{display:grid;grid-template-columns:120px 1fr auto;gap:14px;align-items:center;padding:16px 18px;border-bottom:1px solid #edf0ee}.exception-list article small{display:block;color:var(--muted);margin-top:5px}.exception-kind{display:inline-flex;width:max-content;border-radius:999px;padding:5px 9px;background:#fff1cf;color:#79540b;font-size:12px}.exception-kind.save_failed,.exception-kind.api_unknown{background:#fae9e6;color:#8b302a}.exception-kind.recipient_mismatch{background:#fde6df;color:#8f3729}@media(max-width:800px){.qr-scanner-head{align-items:flex-start}.qr-scanner-head button{white-space:nowrap}.confirmation-sheet{grid-template-columns:1fr;padding:14px}.confirmation-sheet>.full{grid-column:auto}.exception-list article{grid-template-columns:1fr auto;padding:14px}.exception-kind{grid-column:1/-1}.exception-list article .primary{min-height:44px}}.environment-ribbon{position:fixed;top:0;left:0;right:0;z-index:100;background:#a33b32;color:#fff;text-align:center;font-size:12px;font-weight:800;letter-spacing:.08em;padding:5px}.environment-ribbon+.login-shell{padding-top:46px}.app-shell>.environment-ribbon~aside{padding-top:52px}.app-shell>.environment-ribbon~.workspace{padding-top:66px}
