:root{color-scheme:light;--ink:#172121;--muted:#667085;--line:#d7dee2;--surface:#ffffff;--surface-soft:#f5f7f8;--teal:#0f766e;--teal-soft:#dff6f2;--green:#2f7d32;--amber:#a15c00;--red:#b42318;--blue:#2563eb;--violet:#6d28d9;--shadow:0 14px 36px rgba(16,24,40,0.08)}*{box-sizing:border-box}body{margin:0;background:#eef3f4;color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}a{color:inherit}.app-shell{width:min(1180px,100%);margin:0 auto;padding:16px}.top-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:6px 0 14px}.eyebrow,.label{margin:0 0 4px;color:var(--teal);font-size:.78rem;font-weight:700}h1,h2,h3,p{overflow-wrap:anywhere}h1{font-size:clamp(1.35rem,4vw,2.1rem);line-height:1.22;letter-spacing:0}h1,h2{margin:0}h2{font-size:1.05rem;line-height:1.25}h3{margin:0;font-size:.92rem;line-height:1.3}.icon-button,.primary-button{border:0;cursor:pointer}.icon-button{display:grid;width:44px;height:44px;flex:0 0 44px;place-items:center;border-radius:8px;background:var(--surface);color:var(--teal);box-shadow:var(--shadow)}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:46px;margin-top:14px;border-radius:8px;background:var(--teal);color:white;font-weight:700}button:disabled{cursor:not-allowed;opacity:.7}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.companion-panel,.decision-panel,.notice-panel,.panel{border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.decision-panel{padding:18px;color:#10201f}.decision-ok{border-color:#87c7a0;background:linear-gradient(135deg,#ffffff,#e7f7ec)}.decision-caution{border-color:#e3ba70;background:linear-gradient(135deg,#ffffff,#fff4d9)}.decision-short{border-color:#d8965b;background:linear-gradient(135deg,#ffffff,#ffe9d5)}.decision-stop{border-color:#e29992;background:linear-gradient(135deg,#ffffff,#ffe6e4)}.decision-main{display:flex;gap:14px;align-items:flex-start}.decision-icon{display:grid;width:52px;height:52px;flex:0 0 52px;place-items:center;border-radius:8px;background:rgba(15,118,110,.12);color:var(--teal)}.decision-main p{margin:8px 0 0;color:#344054;line-height:1.65}.decision-main h2{font-size:clamp(1.55rem,6vw,2.65rem);letter-spacing:0}.decision-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.action-line span,.decision-meta span,.risk-chip{display:inline-flex;align-items:center;min-height:28px;border-radius:8px;padding:4px 9px;background:rgba(255,255,255,.82);color:#344054;font-size:.78rem;font-weight:700}.notice-panel{display:flex;align-items:flex-start;gap:10px;margin-top:12px;padding:12px;color:#713b12;background:#fff8e6}.notice-panel p{margin:0}.grid{display:grid;gap:14px;margin-top:14px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.companion-panel,.panel{padding:16px}.mini-title,.section-heading{display:flex;align-items:center;gap:8px}.section-heading{margin-bottom:12px;color:var(--teal)}.section-heading h2{color:var(--ink)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.field{display:grid;gap:5px}.field span{color:#475467;font-size:.78rem;font-weight:700}.field input,.field select,.field textarea{width:100%;min-height:42px;border:1px solid var(--line);border-radius:8px;padding:9px 10px;background:#fff;color:var(--ink)}.field textarea{min-height:82px;resize:vertical}.wide-field{margin-top:10px}.toggles{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.toggle{display:inline-flex;align-items:center;gap:8px;min-height:36px;border:1px solid var(--line);border-radius:8px;padding:7px 10px;background:var(--surface-soft);color:#344054;font-size:.86rem;font-weight:700}.toggle input{width:17px;height:17px;accent-color:var(--teal)}.companion-panel{margin-top:14px;background:#fbfdff}.companion-message{margin:0 0 12px;color:#243b3b;font-size:1rem;line-height:1.7}.packing-grid,.three-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.mini-list,.packing-group{border:1px solid var(--line);border-radius:8px;padding:12px;background:var(--surface)}.mini-title{margin-bottom:8px;color:var(--blue)}.mini-title h3{color:var(--ink)}.mini-list ul,.packing-group ul,.segment-card ul{margin:0;padding-left:18px;color:#344054;line-height:1.55}.boundary{margin:12px 0 0;border-left:4px solid var(--teal);padding:8px 10px;background:var(--teal-soft);color:#16433f;line-height:1.55}.check-list{display:grid;gap:9px;margin:0;padding:0;list-style:none}.check-list li{display:grid;grid-template-columns:18px 1fr;gap:8px;align-items:start;color:#344054;line-height:1.5}.check-list svg{color:var(--green);margin-top:2px}.segment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px}.segment-card{min-height:218px;border:1px solid var(--line);border-radius:8px;padding:14px;background:var(--surface);box-shadow:var(--shadow)}.segment-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.risk-低め{background:#e7f7ec;color:var(--green)}.risk-注意{background:#fff4d9;color:var(--amber)}.risk-高め{background:#ffe6e4;color:var(--red)}.risk-未確認{background:#edf2ff;color:var(--blue)}.action-line{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.action-line span{background:var(--surface-soft)}.packing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.first-actions{display:grid;gap:8px}.first-actions details{border:1px solid var(--line);border-radius:8px;background:var(--surface-soft)}.first-actions summary{display:flex;align-items:center;gap:8px;min-height:42px;padding:9px 10px;cursor:pointer;color:var(--violet);font-weight:700}.first-actions ol{margin:0;padding:0 14px 12px 34px;color:#344054;line-height:1.55}.source-list{display:grid;gap:8px}.source-list a{display:grid;gap:3px;border:1px solid var(--line);border-radius:8px;padding:10px;text-decoration:none;background:var(--surface-soft)}.source-list span{color:var(--teal);font-weight:800}.source-list small{color:var(--muted);line-height:1.45}.app-footer{display:flex;justify-content:space-between;gap:12px;margin:18px 0 10px;color:#475467;font-size:.84rem;line-height:1.55}.app-footer p{margin:0}.app-footer a{color:var(--teal);font-weight:800;white-space:nowrap}@media (max-width:920px){.grid.two,.segment-grid,.three-columns{grid-template-columns:1fr}.segment-card{min-height:auto}}@media (max-width:620px){.app-shell{padding:12px}.decision-main{display:grid}.form-grid,.packing-grid{grid-template-columns:1fr}.companion-panel,.decision-panel,.panel{padding:13px}.top-bar{align-items:flex-start}.app-footer{display:grid}}