:root{--bg-color: #ffffff;--text-color: #1f2320;--text-secondary: #6b7770;--border-color: #dde4e0;--card-bg: #f8f9fa;--accent: #2e7d32;--accent-ink: #ffffff;--focus: #1565c0;--shadow: rgba(0, 0, 0, .1);--pulse-rgb: 46, 125, 50}@media(prefers-color-scheme:dark){:root{--bg-color: #161a18;--text-color: #e8ece9;--text-secondary: #9aa8a1;--border-color: #2e3733;--card-bg: #1e2320;--accent: #43a047;--focus: #90caf9;--shadow: rgba(0, 0, 0, .4);--pulse-rgb: 124, 196, 127}}body.dark-mode{--bg-color: #161a18;--text-color: #e8ece9;--text-secondary: #9aa8a1;--border-color: #2e3733;--card-bg: #1e2320;--accent: #43a047;--focus: #90caf9;--shadow: rgba(0, 0, 0, .4);--pulse-rgb: 124, 196, 127}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg-color);color:var(--text-color);font:15px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}#siteNavLang{display:none}body .site-nav{background:var(--nav-bg)}.cmp-page{max-width:1400px;margin:0 auto;padding:18px 20px 30px}.cmp-page h1{font-size:24px;margin:0 0 4px;display:flex;align-items:center;gap:10px}.cmp-page h1 i{color:var(--accent)}.cmp-page h2{font-size:18px;margin:22px 0 8px}.cmp-lede{color:var(--text-secondary);margin:0 0 16px;max-width:80ch}.cmp-lede b{color:var(--text-color)}.cmp-lede a{color:var(--accent);text-decoration:underline}body.dark-mode .cmp-lede a{color:rgb(var(--pulse-rgb))}.cmp-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.cmp-slot{border:1px solid var(--border-color);border-top:4px solid var(--slot-colour, var(--border-color));border-radius:10px;padding:12px 14px;background:var(--card-bg);min-height:150px;display:flex;flex-direction:column;gap:8px;position:relative;min-width:0}.cmp-slot.is-over{outline:2px dashed var(--focus);outline-offset:-4px}.cmp-slot__head{display:flex;align-items:center;gap:8px;font-weight:700;font-size:14px}.cmp-slot__head .cmp-swatch{width:12px;height:12px}.cmp-slot__label{font:inherit;font-weight:700;color:inherit;background:transparent;border:0;border-bottom:1px dashed var(--border-color);padding:0 2px;min-width:0;flex:1}.cmp-slot__label:focus{outline:none;border-bottom-color:var(--focus)}.cmp-slot__hint{color:var(--text-secondary);font-size:13px;margin:0}.cmp-slot__file{font-size:13.5px;line-height:1.4}.cmp-slot__file b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmp-slot__meta{color:var(--text-secondary);font-size:12.5px}.cmp-slot__actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}.cmp-slot__busy{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary)}.cmp-spinner{width:14px;height:14px;border-radius:50%;border:2px solid var(--border-color);border-top-color:var(--accent);animation:cmp-spin .8s linear infinite;flex:none}@keyframes cmp-spin{to{transform:rotate(360deg)}}.cmp-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:7px;border:1px solid var(--border-color);background:var(--bg-color);color:var(--text-color);font:inherit;font-size:13.5px;cursor:pointer;line-height:1.2}.cmp-btn:hover{border-color:var(--focus)}.cmp-btn:disabled{opacity:.5;cursor:default}.cmp-btn:disabled:hover{border-color:var(--border-color)}.cmp-btn--primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.cmp-btn--primary:hover{filter:brightness(1.08);border-color:var(--accent)}.cmp-btn--small{padding:4px 9px;font-size:12.5px}.cmp-btn--on{border-color:var(--focus);background:#1565c01a;font-weight:600}body.dark-mode .cmp-btn--on{border-color:var(--focus);background:#90caf929}.cmp-run{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:14px 0 6px}.cmp-run label{font-size:13.5px;display:inline-flex;align-items:center;gap:6px}.cmp-status{font-size:13px;color:var(--text-secondary);min-height:1.4em}.cmp-status--bad{color:#c62828}body.dark-mode .cmp-status--bad{color:#ef9a9a}.cmp-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-top:10px}.cmp-body--nomap{grid-template-columns:1fr}.cmp-body--nomap .cmp-mapwrap{display:none}.cmp-results{min-width:0}.cmp-mapwrap{position:sticky;top:8px;height:calc(100vh - 16px);min-height:420px;display:flex;flex-direction:column;gap:0}#cmpMap{width:100%;flex:1;min-height:220px;border-radius:10px;border:1px solid var(--border-color);background:#e5e3df}.cmp-mapwrap>.cmp-legend,.cmp-mapwrap>.cmp-bands,.cmp-mapwrap>.cmp-lines{flex:none}.cmp-mapwrap{overflow:auto}body.dark-mode #cmpMap{background:#22272a}.cmp-legend{display:flex;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--text-secondary);margin:6px 0 0}.cmp-legend i{display:inline-block;width:20px;height:4px;vertical-align:middle;margin-right:5px;border-radius:2px}.cmp-section{margin-top:22px}.cmp-section__head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cmp-section__head h2{margin:0;flex:1}.cmp-tools{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0 0;padding-top:14px;border-top:1px solid var(--border-color)}.cmp-viewbar{display:flex;gap:6px;align-items:center;min-height:30px;margin:0 0 10px;padding-right:96px}.cmp-stepper{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 10px;border:1px solid var(--border-color);border-radius:8px;background:var(--card-bg);margin:8px 0}.cmp-stepper__pos{font-variant-numeric:tabular-nums;font-size:13px;color:var(--text-secondary)}.cmp-stepper select,.cmp-stepper input[type=text]{font:inherit;font-size:13px;padding:5px 8px;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-color);color:var(--text-color)}.cmp-stepper input[type=text]{flex:1 1 160px;min-width:0}.cmp-pin{background:transparent!important;border:none!important}.cmp-pin span{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--pin-colour, #ff9800);color:#fff;font-size:11.5px;font-weight:700;border:2px solid #fff;box-shadow:0 1px 3px #00000059;cursor:pointer}.cmp-pin.is-current span{outline:3px solid #ff9800}.cmp-empty{border:1px dashed var(--border-color);border-radius:10px;padding:18px;color:var(--text-secondary);font-size:14px;line-height:1.5}.cmp-empty ol{margin:8px 0 0;padding-left:20px}.cmp-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}@media(max-width:980px){.cmp-slots,.cmp-body{grid-template-columns:1fr}.cmp-mapwrap{position:static;height:48vh;min-height:300px;order:-1}}@media(max-width:480px){.cmp-page{padding:12px 12px 24px}.cmp-page h1{font-size:20px}}.cmp-resultswrap{position:relative;min-width:0}.cmp-expand{position:absolute;top:8px;right:8px;z-index:500;display:inline-flex;align-items:center;gap:6px;padding:5px 10px;cursor:pointer;font-size:12px;background:var(--card-bg, #fff);color:var(--text-color);border:1px solid var(--border-color);border-radius:7px;box-shadow:0 1px 4px #00000024}.cmp-expand:hover{border-color:var(--accent)}.cmp-mapwrap .cmp-expand{top:8px;right:8px}body.cmp-zoomed .cmp-body>*{display:none}body.cmp-zoomed .cmp-zoom-target{display:block;position:fixed;inset:0;z-index:4000;height:auto;margin:0;padding:14px 16px;overflow:auto;background:var(--bg-color, #fff)}body.dark-mode.cmp-zoomed .cmp-zoom-target{background:#1a1d1b}body.cmp-zoomed .cmp-mapwrap.cmp-zoom-target{display:flex;flex-direction:column;overflow:hidden}body.cmp-zoomed .cmp-mapwrap.cmp-zoom-target #cmpMap{flex:1;min-height:0}body.cmp-zoomed .cmp-zoom-target .cmp-expand{position:fixed;top:12px;right:16px}.cmp-lines{margin-top:8px;font-size:13px}.cmp-lines>summary{cursor:pointer;color:var(--text-secondary);padding:2px 0}.cmp-lines__rows{display:flex;flex-direction:column;gap:6px;margin:8px 0}.cmp-line{display:flex;align-items:center;gap:8px;padding:5px 8px;border:1px solid var(--border-color);border-radius:7px}.cmp-line__name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmp-line input[type=color]{width:30px;height:24px;padding:0;cursor:pointer;border:1px solid var(--border-color);border-radius:5px;background:none}.cmp-line__order{display:flex;gap:2px}.cmp-line__order button{width:26px;height:24px;cursor:pointer;line-height:1;background:var(--bg-color);color:var(--text-color);border:1px solid var(--border-color);border-radius:5px}.cmp-line__order button:disabled{opacity:.35;cursor:default}.cmp-line__top{font-size:11px;color:var(--text-secondary);white-space:nowrap}.cmp-btn--sm{font-size:12px;padding:4px 9px}.cmp-fade{position:absolute;left:10px;top:98px;z-index:500;display:flex;align-items:center;gap:8px;flex-wrap:wrap;max-width:calc(100% - 20px);padding:5px 10px;border-radius:8px;background:var(--card-bg, #fff);border:1px solid var(--border-color);box-shadow:0 1px 4px #00000029;font-size:12px}.cmp-fade label{display:inline-flex;align-items:center;gap:5px;color:var(--text-secondary)}.cmp-fade input[type=range]{width:110px}.cmp-fade output{min-width:34px;text-align:right;font-variant-numeric:tabular-nums}@media(max-width:480px){.cmp-fade input[type=range]{width:80px}}.cmp-bands{margin:4px 0 0;font-size:12px;color:var(--text-secondary)}.cmp-sens{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:4px 0 8px;font-size:12.5px}.cmp-sens>span{color:var(--text-secondary)}.cmp-sens select{font-size:12.5px;padding:3px 6px}.cmp-looks{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.cmp-look{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:10px;border:1px solid var(--border-color);border-radius:8px;padding:8px 11px;background:var(--card-bg, #fff);cursor:pointer;font-size:13.5px;line-height:1.4}.cmp-look:hover,.cmp-look:focus{border-color:var(--focus);outline:none}.cmp-look.is-current{background:var(--cmp-hi, #fff3e0);border-color:var(--cmp-amber, #ff9800)}body.dark-mode .cmp-look.is-current{background:var(--cmp-hi, #3a2a1a);border-color:var(--cmp-amber, #ff9800)}.cmp-look__who{color:var(--text-secondary)}.cmp-look__why{display:block;color:var(--text-secondary);font-size:12.5px}.cmp-look .cmp-rank{padding-top:2px}@media(max-width:480px){.cmp-look{grid-template-columns:auto minmax(0,1fr)}.cmp-look .cmp-rank{grid-column:2;margin-left:0;padding-top:0}}.cmp-dialog{border:1px solid var(--border-color);border-radius:12px;padding:0;max-width:540px;width:calc(100vw - 32px);background:var(--card-bg, #fff);color:var(--text-color);box-shadow:0 12px 40px #00000047}.cmp-dialog::backdrop{background:#00000073}.cmp-dialog__head{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border-color)}.cmp-dialog__head h2{margin:0;font-size:17px;flex:1}.cmp-dialog__body{padding:16px;display:flex;flex-direction:column;gap:14px}.cmp-dialog__foot{display:flex;justify-content:flex-end}.cmp-field{display:flex;flex-direction:column;gap:5px;font-size:13px}.cmp-field>span{color:var(--text-secondary)}.cmp-field textarea,.cmp-field input{font:inherit;font-size:13.5px;padding:7px 9px;border-radius:7px;border:1px solid var(--border-color);background:var(--bg-color, #fff);color:var(--text-color);width:100%;resize:vertical}.cmp-check{display:flex;gap:9px;align-items:flex-start;font-size:13.5px}.cmp-check small{display:block;color:var(--text-secondary);font-size:12px;margin-top:2px}.cmp-share__out{font-size:13px;display:flex;flex-direction:column;gap:6px}.cmp-share__link{display:flex;flex-direction:column;gap:5px;color:var(--text-secondary)}.cmp-share__link input{font:inherit;font-size:12.5px;padding:7px 9px;border-radius:7px;border:1px solid var(--border-color);background:var(--bg-color, #fff);color:var(--text-color)}.cmp-warn{color:#c62828}body.dark-mode .cmp-warn{color:#ef9a9a}.cmp-slot__tick{margin-left:auto;color:var(--accent);font-size:15px;display:none}.cmp-slot.is-ready .cmp-slot__tick{display:inline-block}.cmp-slot.is-ready{border-top-color:var(--slot-colour)}@keyframes cmp-pulse{0%{box-shadow:0 0 rgba(var(--pulse-rgb),.85)}70%{box-shadow:0 0 0 10px rgba(var(--pulse-rgb),0)}to{box-shadow:0 0 rgba(var(--pulse-rgb),0)}}.cmp-pulse{animation:cmp-pulse 1.9s ease-out infinite}@media(prefers-reduced-motion:reduce){.cmp-pulse{animation:none;box-shadow:0 0 0 3px rgba(var(--pulse-rgb),.65)}}.cmp-toggles{display:flex;gap:4px;flex-wrap:wrap}.cmp-toggles[hidden]{display:none}.cmp-toggle{display:inline-flex;align-items:center;gap:5px;font:inherit;font-size:11.5px;line-height:1;padding:4px 7px;border-radius:6px;cursor:pointer;border:1px solid var(--border-color);background:var(--card-bg);color:var(--text-color)}.cmp-toggle i{width:10px;height:10px;border-radius:2px;display:inline-block}.cmp-toggle:hover{border-color:var(--accent)}.cmp-toggle.is-off{opacity:.5;text-decoration:line-through}.cmp-toggle.is-off i{background:transparent!important;border:1px solid var(--border-color)}.cmp-legend .is-off{opacity:.5}@media(max-width:480px){.cmp-toggle{font-size:11px;padding:3px 5px}}.cmp-wip{display:inline-block;vertical-align:middle;margin-left:10px;font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 9px;border-radius:999px;color:var(--accent);border:1px solid var(--accent);background:rgba(var(--pulse-rgb),.12)}.cmp-faq{max-width:80ch;margin:48px 0 8px;padding-top:24px;border-top:1px solid var(--border-color)}.cmp-faq h2{font-size:17px;margin:0 0 14px}.cmp-faq dt{font-weight:700;font-size:14px;margin-top:16px}.cmp-faq dd{margin:5px 0 0;color:var(--text-secondary);font-size:14px;line-height:1.55}.cmp-faq a{color:var(--accent)}.cmp-share__past{border-top:1px solid var(--border-color);padding-top:14px;margin-top:4px}.cmp-share__past h3{margin:0 0 4px;font-size:14px}.cmp-shares{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.cmp-share__empty{color:var(--text-secondary);font-size:13px}.cmp-share__row{display:flex;gap:10px;align-items:flex-start;flex-wrap:wrap;border:1px solid var(--border-color);border-radius:8px;padding:8px 10px;font-size:13px}.cmp-share__row.is-expired{opacity:.6}.cmp-share__meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.cmp-share__meta b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmp-share__meta .cmp-muted{font-size:12px}.cmp-share__acts{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.cmp-share__acts .cmp-btn{text-decoration:none}.cmp-judge{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}.cmp-judge select,.cmp-judge input{font:inherit;font-size:12.5px;padding:5px 7px;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-color);color:var(--text-color)}.cmp-judge input{flex:1;min-width:140px}.cmp-judge select{max-width:100%}.cmp-region.is-judged{border-left-color:var(--accent)}.cmp-stepper__pos{font-variant-numeric:tabular-nums}
