:root{--bg: #fafaf9;--fg: #1c1917;--muted: #78716c;--accent: #2563eb;--card: #ffffff;--line: #e7e5e4;--danger: #b91c1c;--danger-bg: #fef2f2;--ok: #15803d;--ok-bg: #f0fdf4;--warn-bg: #fffbeb;color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--bg: #0c0a09;--fg: #f5f5f4;--muted: #a8a29e;--accent: #60a5fa;--card: #1c1917;--line: #292524;--danger: #f87171;--danger-bg: #2a1212;--ok: #4ade80;--ok-bg: #0f2417;--warn-bg: #2a2110}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.6 system-ui,-apple-system,Hiragino Sans,PingFang SC,Noto Sans CJK,sans-serif}.container{max-width:480px;margin:0 auto;padding:24px 16px}h1{font-size:1.5rem;margin:0 0 4px}h2{font-size:1.1rem;margin:0 0 8px}.lead{color:var(--muted);margin:0 0 8px}.small{font-size:.85rem;color:var(--muted)}label{display:block;font-weight:600;margin:12px 0 4px;font-size:.9rem}input,select,textarea,button{font:inherit;width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--fg)}button{background:var(--accent);color:#fff;border:none;cursor:pointer;margin-top:16px;font-weight:600}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}a{color:var(--accent)}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;margin-top:16px}.topbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.lang-switch{display:flex;gap:4px}.lang-switch button{width:auto;margin:0;padding:6px 10px;font-size:.85rem;background:var(--card);color:var(--fg);border:1px solid var(--line)}.lang-switch button[aria-pressed=true]{background:var(--accent);color:#fff;border-color:var(--accent)}.grid2,.grid3{display:grid;gap:0 12px}@media(min-width:420px){.grid2{grid-template-columns:1fr 1fr}}.receipts{list-style:none;margin:0;padding:0}.receipt{border-top:1px solid var(--line);padding:12px 0}.receipt:first-child{border-top:none;padding-top:0}.row-head{display:flex;justify-content:space-between;align-items:center}.link-btn{width:auto;margin:0;padding:4px 8px;background:none;color:var(--danger);font-weight:600}.status-line{margin:8px 0 0;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.8rem;font-weight:700;border:1px solid var(--line)}.badge-post{background:var(--ok-bg);color:var(--ok);border-color:var(--ok)}.badge-immediate{background:var(--card);color:var(--accent);border-color:var(--accent)}.badge-invalid,.badge-too_small,.badge-expired{color:var(--muted)}.badge-customs{background:var(--danger-bg);color:var(--danger);border-color:var(--danger)}.range{font-weight:600}.hint{display:block;width:100%;font-size:.85rem;color:var(--muted)}.summary .big-label{margin:0;color:var(--muted)}.summary .big{font-size:1.6rem;font-weight:800;margin:0}.note{font-size:.85rem;color:var(--muted);margin:4px 0 12px}.stats{margin:0}.stats div{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-top:1px solid var(--line)}.stats dt{color:var(--muted)}.stats dd{margin:0;font-weight:700;text-align:right}.warn{background:var(--warn-bg);border-radius:8px;padding:8px 12px;margin:12px 0 0;font-weight:600}.customs-alert{background:var(--danger-bg);border:2px solid var(--danger)}.customs-alert h2{color:var(--danger)}.customs-alert ul{margin:0;padding-left:1.2rem;font-weight:700}.customs-ok{background:var(--ok-bg);border-color:var(--ok)}.customs-ok p{margin:0}.unsure{font-size:.9rem;font-weight:600;margin:8px 4px 0}.checklist{list-style:none;margin:0;padding:0}.checklist li{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-top:1px solid var(--line)}.checklist li:first-child{border-top:none}.checklist input{width:22px;height:22px;margin:2px 0 0;flex:none;padding:0;accent-color:var(--accent)}.checklist label{margin:0;font-weight:400;font-size:1rem}.airport-name{font-weight:700;margin:0 0 8px}.steps{list-style:none;counter-reset:step;margin:0;padding:0}.step{counter-increment:step;position:relative;padding:8px 0 8px 44px;min-height:40px}.step:before{content:counter(step);position:absolute;left:0;top:8px;width:32px;height:32px;border-radius:50%;background:var(--accent);color:#fff;font-weight:800;display:grid;place-items:center}.step strong,.step span{display:block}.step span{color:var(--muted);font-size:.9rem}footer p{margin:4px 0}.offers{margin-top:1.5rem;padding:1rem;border:1px solid #ddd;border-radius:8px}.offers h2{font-size:1rem;margin:0 0 .5rem}.offers ul{margin:0;padding-left:1.2rem}
