:root{color-scheme:light;font-size:100%;--canvas:#F5F7F8;--paper:#fff;--text:#334155;--ink:#1F2937;--muted:#475569;--accent:#1F6B63;--dark:#174F49;--selected:#EAF3F0;--line:#D9E2E5;--control:#64748B;--title:1.625rem;--section:1.375rem;--label:1.125rem;--body:1.0625rem;--help:1rem;--note:.9375rem;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP","Yu Gothic",Meiryo,sans-serif;color:var(--text);background:var(--canvas);line-height:1.7;font-synthesis:none;overflow-anchor:none}
html[data-text-size=large]{font-size:125%}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}h1,h2,h3,p{margin:0}h1,h2,h3{color:var(--ink);line-height:1.5}h1{font-size:var(--title)}h2{font-size:var(--section)}h3{font-size:var(--label)}p+p{margin-top:.75rem}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea,summary{touch-action:manipulation;scroll-margin:1.5rem}button,a,summary{overflow-wrap:anywhere}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:48px;border:2px solid var(--control);border-radius:10px;padding:.65rem .9rem;background:var(--paper);font-size:var(--label);font-weight:600;line-height:1.5;text-align:center;cursor:pointer;text-decoration:none;color:var(--text)}button:hover,.button:hover{background:var(--selected);border-color:var(--accent)}button:disabled{background:#F1F5F4;color:var(--muted);border-style:dashed;cursor:not-allowed}.primary{background:var(--accent);border-color:var(--accent);color:white}.primary:hover{background:var(--dark);color:white}a{color:var(--dark)}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}input,select,textarea{width:100%;min-width:0;min-height:52px;padding:.7rem;border:2px solid var(--control);border-radius:10px;background:var(--paper);font-size:var(--label)}input:disabled,select:disabled{background:#F1F5F4;color:var(--muted);border-style:dashed}textarea{display:block;resize:vertical;line-height:1.7;overflow-wrap:anywhere}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}input[type=checkbox],input[type=radio]{width:22px;height:22px;min-height:22px;flex:0 0 22px;margin:0;accent-color:var(--accent)}fieldset{min-width:0;border:0;margin:0;padding:0}legend,.field-label{font-weight:600;margin-bottom:.5rem}label.field{display:block;margin-top:1rem}label.field>span{display:block;margin-bottom:.5rem;font-weight:600}.field-label{display:block;margin-top:1rem}header{background:white;border-bottom:1px solid var(--line)}.header-inner{max-width:1240px;padding:20px 28px;margin:auto;display:flex;align-items:center;gap:1rem;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);font-size:1.5rem;font-weight:700;line-height:1.4}.brand-mark{display:grid;place-items:center;width:50px;height:50px;flex-shrink:0;border-radius:12px;background:var(--accent);color:#fff;font-family:serif;font-size:2rem}.brand small{display:block;font-size:var(--note);font-weight:400;color:var(--muted);margin-top:4px}.version{font-size:var(--help);color:var(--muted)}main{max-width:1240px;margin:auto;padding:0 28px}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding:22px 0}.eyebrow{font-size:var(--body);color:var(--dark);font-weight:600}.size-control{display:flex;gap:8px;flex-wrap:wrap}.size-control legend{font-size:var(--help);padding:0}.size-control .choice{padding:.5rem .75rem}.tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:28px}.tabs button{padding:1rem .7rem;border-color:var(--accent);color:var(--dark)}.tabs [aria-selected=true]{background:var(--accent);color:white}.intro{margin-bottom:24px}.intro>p{margin-top:.75rem;font-size:var(--body)}.steps{display:flex;gap:10px 22px;list-style:none;padding:0;margin:20px 0;flex-wrap:wrap;font-size:var(--body)}.steps li{display:flex;align-items:center;gap:8px}.steps b{display:grid;place-items:center;border-radius:50%;width:30px;height:30px;background:var(--selected);color:var(--dark)}.workspace{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:24px;align-items:start}.workspace>*{min-width:0}.card,.section-card,.preset-panel{background:white;border:1px solid var(--line);border-radius:16px;margin-bottom:20px}.card{padding:22px}.card>p{margin-top:.75rem}.section-card summary{cursor:pointer;min-height:60px;padding:20px;list-style-position:inside;font-size:var(--section);font-weight:700;color:var(--ink)}.section-card summary .summary-value{display:block;font-weight:400;font-size:var(--help);color:var(--muted);margin-top:5px;overflow-wrap:anywhere}.section-card[open] summary{border-bottom:1px solid var(--line)}.section-content{padding:0 20px 20px}.condition{padding-top:20px}.condition+.condition{border-top:1px solid var(--line);margin-top:20px}.condition-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:12px}.priority{font-size:var(--help);min-width:6rem;color:var(--dark);border-color:var(--accent)}.priority[data-value=必須]{background:var(--accent);color:white}.priority[data-value=重視]{background:var(--selected)}.priority[data-value=対象外]{border-style:dashed;color:var(--muted);border-color:var(--control)}.choices{display:flex;flex-wrap:wrap;gap:10px}.choice{display:flex;align-items:center;gap:10px;min-height:48px;padding:.75rem;border:2px solid var(--control);border-radius:10px;font-size:var(--label);cursor:pointer;line-height:1.5;min-width:0;overflow-wrap:anywhere}.choices>.choice{flex:1 1 9rem}.choice:has(input:checked){background:var(--selected);border-color:var(--accent);color:var(--dark);font-weight:600}.choice:has(input:disabled){background:#F1F5F4;border-style:dashed;color:var(--muted)}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.row{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}.row>*{flex:1 1 10rem;min-width:0}.helper{font-size:var(--body);color:var(--muted);margin-top:12px}.note{font-size:var(--note);color:var(--muted);margin-top:10px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.actions>*{flex:1 1 9rem;min-width:0}.preset-panel>details>summary{padding:16px 20px;min-height:56px;cursor:pointer;font-size:var(--label);font-weight:600}.preset-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:0 20px 16px}.preset-card{min-width:0;border-top:1px solid var(--line);padding-top:12px}.preset-card label{display:block;font-weight:600}.save-status{padding:10px 20px;font-size:var(--help);border-top:1px solid var(--line);color:var(--muted)}.notice{padding:14px 16px;background:#EAF3F0;border-left:4px solid var(--accent);border-radius:6px;margin:14px 0;font-size:var(--body);white-space:pre-line;overflow-wrap:anywhere}.warning{background:#FFF7DF;border-color:#886217;color:#554015}.error{background:#FFF0F0;color:#852323;border-color:#A13333}.output h2{margin-bottom:10px}.output textarea{min-height:24rem}.paste-guide{padding:16px 0;border-top:1px solid var(--line);margin-top:18px;font-size:var(--body)}.ai-links{display:grid;gap:10px}.ai-links .button{color:var(--dark);border-color:var(--accent)}.point{padding:16px 0;border-bottom:1px solid var(--line)}.point-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.point-head label{font-weight:600}.point>.actions{margin:10px 0 0}.point>.actions button{font-size:var(--help);flex:1 1 4rem}.segment{margin:16px 0;padding:18px;border:1px solid var(--line);border-radius:12px;overflow-wrap:anywhere}.segment ol{padding-left:1.5rem;font-size:var(--body)}#memo-preview ol{padding-left:1.5rem;overflow-wrap:anywhere}#memo-preview{margin-top:20px}.map-output{margin-top:4px}footer{border-top:1px solid var(--line);padding:28px 0 32px;margin-top:32px;font-size:var(--help);color:var(--muted)}.footer-brand{font-size:var(--label);font-weight:700;color:var(--dark)}footer p{margin-top:12px}.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);max-width:calc(100% - 32px);width:max-content;border-radius:10px;background:#1F2937;color:white;padding:12px 20px;font-size:var(--body);box-shadow:0 4px 20px #0002;z-index:20}dialog{width:min(520px,calc(100% - 24px));max-height:90dvh;overflow:auto;padding:24px;border:2px solid var(--accent);border-radius:16px;color:var(--text)}dialog::backdrop{background:#142c2a66}dialog p{white-space:pre-line;font-size:var(--body);margin-top:16px;overflow-wrap:anywhere}.skip{position:absolute;left:1rem;top:-100px;background:white;padding:12px;z-index:30}.skip:focus{top:1rem}
.gps-result{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0}.gps-result .notice{flex:1 1 13rem;min-width:0;margin:0}.gps-result button{flex:0 1 auto;font-size:var(--help)}
.card>summary{min-height:48px;cursor:pointer;font-size:var(--label);font-weight:600}
.preset-content{padding:0 20px 16px}.preset-panel .summary-value{display:block;font-weight:400;font-size:var(--help);color:var(--muted);overflow-wrap:anywhere;margin-top:4px}
.map-settings{margin-top:20px}.map-settings legend{font-size:var(--section);color:var(--ink)}.point-copy-list{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere}.segment>summary{min-height:48px;cursor:pointer;font-size:var(--label);font-weight:600}
.map-settings .choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.point>.actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.point>.actions button{padding-inline:.5rem}
html[data-text-size=small]{font-size:90%}
.display-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;width:min(100%,34rem)}.display-controls .size-control{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.display-controls .choice{font-size:var(--help);justify-content:center}.layout-toggle{align-self:end;min-width:5rem;padding:.55rem .65rem}.point{padding-block:12px}.point .field-label{margin:0 0 .4rem;font-size:var(--body)}.point-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:stretch}.point-input-row button{font-size:var(--help);white-space:nowrap;padding:.5rem;min-height:52px}.point>.point-move-actions{margin-top:8px}.point-move-actions button{white-space:nowrap}#memo::placeholder{color:#7B8797;opacity:1;font-weight:400}
.subtabs{position:sticky;top:0;z-index:8;background:var(--canvas);padding:.5rem 0;margin:0 0 20px;gap:6px}.subtabs.route-subtabs{grid-template-columns:repeat(3,minmax(0,1fr))}.subtabs.tabs button{font-size:var(--help);padding:.65rem .25rem;font-weight:500}.subtabs.tabs button[aria-selected=true]{background:var(--selected);color:var(--dark);font-weight:700;box-shadow:inset 0 -3px 0 var(--accent)}html[data-tabbed=true]{scroll-padding-top:7rem}html[data-tabbed=true] .workspace{grid-template-columns:minmax(0,1fr)}html[data-tabbed=true] [data-subpanel-group],html[data-tabbed=true] :is(input,select,textarea,button,a,summary){scroll-margin-block-start:7rem}
@media(max-width:700px){.map-settings{padding:12px}.map-settings .choices{gap:6px}.map-settings .choice{flex-direction:column;text-align:center;gap:.35rem;padding:.5rem .2rem;font-size:var(--body)}.display-controls{gap:8px}.display-controls .size-control .choice,.layout-toggle{flex-direction:column;gap:4px;padding:.3rem .15rem;text-align:center}.layout-toggle{width:5rem}.size-control .choice{min-width:0}}
@media(max-width:900px){.workspace{grid-template-columns:1fr}.output textarea{min-height:20rem}}
@media(max-width:540px){main{padding:0 16px}.header-inner{padding:18px 16px}.toolbar{align-items:flex-start}.eyebrow{width:100%}.tabs{gap:6px}.tabs button{font-size:var(--body);padding:.8rem .45rem}.card{padding:18px}.section-card summary{padding:18px}.section-content{padding:0 16px 18px}.preset-grid{grid-template-columns:1fr;padding-inline:16px}.check-grid{grid-template-columns:1fr}.brand small{max-width:15rem}.steps{gap:10px 16px}.version{align-self:flex-start}.row>*{flex-basis:100%}}
@media(prefers-reduced-motion:no-preference){button,.button{transition:background-color .12s}}
