:root{--paper:#f4ead8;--paper-deep:#ead9bb;--card:#fffaf1;--ink:#1c1712;--muted:#7a6d5e;--line:#1c17121f;--vermillion:#c23b22;--vermillion-soft:#f6d7cf;--gold:#b8893d;--teal:#2f6e63;--teal-soft:#dceee9;--won:#1f6b4a;--won-soft:#d7efe4;--lost:#9b2335;--lost-soft:#f6d6db;--pending:#8a6914;--pending-soft:#f5e6c3;--shadow:0 18px 40px #462a121a;--radius:22px;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:Zen Kaku Gothic New,Hiragino Sans,sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html,body,#root{min-height:100dvh;margin:0}body{background:radial-gradient(circle at top left, #c23b2214, transparent 28%), radial-gradient(circle at 90% 8%, #2f6e631a, transparent 26%), linear-gradient(180deg, #f8f0df 0%, var(--paper) 40%, #efe3cc 100%);padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)}button,input,select,textarea{font:inherit;font-size:16px}button{cursor:pointer;min-height:44px}h1,h2,h3,.brand-en{font-family:Shippori Mincho,serif}.app-shell{width:min(1180px,100% - 24px);margin:0 auto;padding:20px 0 80px}.topbar{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:28px;display:flex}.brand{align-items:center;gap:14px;display:flex}.stamp{border:2px solid var(--vermillion);width:52px;height:52px;color:var(--vermillion);letter-spacing:.08em;background:#fffaf1cc;border-radius:8px;place-items:center;font-family:Shippori Mincho,serif;font-weight:700;display:grid;transform:rotate(-8deg)}.brand h1{letter-spacing:.08em;margin:0;font-size:28px}.brand p,.muted{color:var(--muted);margin:4px 0 0}.nav{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.nav button,.ghost,.primary,.danger{color:var(--ink);background:0 0;border:0;border-radius:999px;min-height:44px;padding:10px 16px}.nav button{border:1px solid var(--line);background:#fffaf199}.nav button.active{background:var(--ink);color:var(--card)}.ghost{border:1px solid var(--line);background:var(--card)}.primary{background:var(--vermillion);color:#fff}.danger{background:var(--lost-soft);color:var(--lost)}.grid{gap:16px;display:grid}.stats{grid-template-columns:repeat(4,1fr)}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.stat-card .label{color:var(--muted);letter-spacing:.08em;font-size:13px}.stat-card .value{margin-top:8px;font-family:Shippori Mincho,serif;font-size:36px}.rate-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.rate-card{border:1px solid var(--line);background:#fffdf8;border-radius:16px;padding:14px}.rate-pair{grid-template-columns:1fr 1fr;gap:10px;margin-top:10px;display:grid}.pct{margin-top:2px;font-family:Shippori Mincho,serif;font-size:28px}.section-head{justify-content:space-between;align-items:flex-end;gap:12px;margin:8px 0 4px;display:flex}.section-head h2{margin:0;font-size:22px}.two-col{grid-template-columns:1.4fr .8fr}.lottery-row,.person-row,.inventory-row{align-items:center;gap:12px;display:grid}.lottery-row{border-top:1px dashed var(--line);grid-template-columns:1.4fr .8fr auto;padding:16px 0}.lottery-row:first-child,.inventory-row:first-of-type{border-top:0;padding-top:0}.product-name{margin:2px 0 6px;font-size:18px;font-weight:700}.meta{color:var(--muted);flex-wrap:wrap;gap:8px 12px;font-size:13px;display:flex}.badge{letter-spacing:.04em;border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;display:inline-flex}.badge.upcoming{color:#5b5248;background:#ece7df}.badge.open{background:var(--teal-soft);color:var(--teal)}.badge.waiting{background:var(--pending-soft);color:var(--pending)}.badge.announced{color:#5b5248;background:#ece7df}.badge.won{background:var(--won-soft);color:var(--won)}.badge.lost{background:var(--lost-soft);color:var(--lost)}.badge.pending{background:var(--pending-soft);color:var(--pending)}.badge.na{color:#5b5248;background:#ece7df}.badge.delivery{color:#7a5720;background:#efe4cf}.badge.store{background:var(--teal-soft);color:var(--teal)}.toolbar{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.toolbar input,.toolbar select,.field input,.field select,.field textarea{border:1px solid var(--line);background:#fffdf8;border-radius:14px;width:100%;padding:11px 12px}.toolbar input,.toolbar select{width:auto;min-width:180px}.form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.field.full{grid-column:1/-1}.field label{color:var(--muted);margin-bottom:6px;font-size:13px;display:block}.field .hint{color:var(--muted);margin:8px 0 0;font-size:12px;line-height:1.6}.product-pick{gap:8px;display:grid}.field-label{color:var(--muted);margin-bottom:6px;font-size:13px;display:block}.product-option{border:1px solid var(--line);background:#fffdf8;border-radius:14px;min-height:44px;padding:10px 12px}.product-option:has(input:checked){border-color:var(--teal);background:var(--teal-soft)}.product-add{gap:8px;display:flex}.product-add input{border:1px solid var(--line);background:#fffdf8;border-radius:14px;flex:1;min-width:0;padding:11px 12px}.product-tags{flex-wrap:wrap;gap:6px;margin:6px 0;display:flex}.note-text{white-space:pre-wrap;word-break:break-word}.note-text a{color:var(--teal);word-break:break-all}.line-box{border:1px dashed var(--line);background:#fffdf8;border-radius:16px;margin-top:22px;padding:16px}.line-box h3{margin:0 0 8px;font-size:16px}.hint-list{color:var(--muted);margin:10px 0 14px;padding-left:1.2em;font-size:13px;line-height:1.7}button:disabled{opacity:.5;cursor:not-allowed}.modal-back{z-index:20;background:#1c171259;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{width:min(680px,100%);max-height:calc(100vh - 40px);overflow:auto}.actions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.lottery-row .actions{flex-wrap:wrap;gap:8px;display:flex}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%}th{text-align:left;color:var(--muted);white-space:nowrap;padding:8px 10px 12px;font-size:12px;font-weight:500}td{border-top:1px solid var(--line);vertical-align:top;padding:12px 10px}.user-cell{min-width:168px}.user-cell select,.user-cell input[type=number]{border:1px solid var(--line);background:#fffdf8;border-radius:10px;width:100%;margin-top:6px;padding:8px 10px}.check{align-items:center;gap:8px;font-size:13px;display:flex}.check input{flex-shrink:0;width:22px;height:22px}.check.big{border:1px solid var(--line);background:#fffdf8;border-radius:14px;gap:10px;min-height:48px;padding:10px 12px}.check.big span{gap:2px;display:grid}.notice{background:var(--pending-soft);color:#5c4a12;border-radius:16px;margin:12px 0 16px;padding:12px 14px;font-size:14px;line-height:1.6}.record-list{gap:12px;display:grid}.record-card{border:1px solid var(--line);background:#fffdf8;border-radius:16px;gap:12px;padding:14px;display:grid}.user-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.user-panel{border:1px solid var(--line);background:var(--card);border-radius:14px;gap:8px;padding:10px;display:grid}.user-panel select,.user-panel textarea{border:1px solid var(--line);background:#fffdf8;border-radius:10px;width:100%;min-height:44px;padding:8px 10px}.user-panel textarea{resize:vertical;min-height:72px}.skip-reason{gap:4px;display:grid}.user-panel.skipped{background:#f4f1ea}.skip-na{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.empty{text-align:center;color:var(--muted);padding:48px 20px}.fold-list{gap:8px;display:grid}.fold-head,.fold summary,.fold-store{grid-template-columns:1.4fr 80px 80px 80px;align-items:center;gap:12px;display:grid}.fold-head{padding:4px 12px 8px}.fold{border:1px solid var(--line);background:#fffdf8;border-radius:16px}.fold summary{cursor:pointer;min-height:52px;padding:12px;list-style:none}.fold summary::-webkit-details-marker{content:"";display:none}.fold summary::marker{content:"";display:none}.fold summary .product-name{align-items:center;gap:8px;margin:0;display:flex}.fold summary .product-name:before{content:"▸";color:var(--muted);font-size:14px;line-height:1}.fold[open] summary .product-name:before{content:"▾"}.fold-body{border-top:1px dashed var(--line);padding:4px 12px 12px}.fold-store{padding:10px 0 0}.fold-store+.fold-store{border-top:1px dashed var(--line);margin-top:8px;padding-top:10px}.fold-list>.hint{color:var(--muted);margin:4px 0 0;font-size:12px}.inventory-row{border-top:1px dashed var(--line);grid-template-columns:1.4fr 80px 80px 80px;padding:12px 0}.qty{font-family:Shippori Mincho,serif;font-size:22px}.alert{background:var(--vermillion-soft);color:#7a2418;border-radius:16px;margin-bottom:16px;padding:12px 14px}.split-users{grid-template-columns:1fr 1fr;gap:10px;display:grid}.person-card{border:1px solid var(--line);background:#fffdf8;border-radius:16px;padding:12px}.person-card strong{margin-bottom:8px;display:block}@media (width<=900px){.two-col,.form-grid,.split-users,.lottery-row,.user-grid,.rate-grid{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.topbar{flex-direction:column;gap:12px}.brand h1{font-size:22px}.nav{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;width:100%;padding-bottom:2px;overflow-x:auto}.nav::-webkit-scrollbar{display:none}.nav button{white-space:nowrap;flex:none}.section-head{flex-direction:column;align-items:stretch}.section-head .primary,.section-head .ghost,.lottery-row .actions{justify-content:stretch;width:100%}.lottery-row .actions button,.section-head button{flex:1}.toolbar{flex-direction:column}.toolbar input,.toolbar select{width:100%;min-width:0;min-height:44px}.inventory-row,.fold-head,.fold summary,.fold-store{grid-template-columns:1fr 64px 64px 64px;align-items:end}.stat-card .value{font-size:28px}.card{padding:16px}.modal-back{padding:12px;padding-bottom:max(12px, env(safe-area-inset-bottom));align-items:end}.modal{border-bottom-right-radius:0;border-bottom-left-radius:0;width:100%;max-height:calc(100dvh - 24px)}}@media (width<=420px){.app-shell{width:calc(100% - 16px);padding-top:12px}.inventory-row,.fold-head,.fold summary,.fold-store{grid-template-columns:1fr 1fr}.inventory-row>:first-child,.fold-head>:first-child,.fold summary>:first-child,.fold-store>:first-child{grid-column:1/-1}}
