:root{color-scheme:light dark;--color-bg: #f6f5f3;--color-surface: #ffffff;--color-border: #e6e2db;--color-text: #23201c;--color-text-muted: #726b62;--color-accent: #e8590c;--color-accent-hover: #c94e0a;--color-accent-contrast: #ffffff;--color-danger: #c0392b;--color-danger-bg: #fbe9e7;--radius: 10px;--shadow: 0 1px 2px rgba(20, 15, 10, .06), 0 4px 16px rgba(20, 15, 10, .06)}@media (prefers-color-scheme: dark){:root{--color-bg: #1b1917;--color-surface: #262320;--color-border: #3a352f;--color-text: #f2efe9;--color-text-muted: #a89f93;--color-accent: #ff8a4c;--color-accent-hover: #ffa06b;--color-accent-contrast: #201a12;--color-danger: #ff6b5e;--color-danger-bg: #3a231f;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 4px 20px rgba(0, 0, 0, .35)}}*{box-sizing:border-box}html,body{margin:0;min-height:100vh}body{background:var(--color-bg);color:var(--color-text);font-family:-apple-system,Segoe UI,system-ui,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}#root{max-width:640px;margin:0 auto;padding:2rem 1.25rem 4rem}h1,h2,h3{line-height:1.25;letter-spacing:-.01em}h1{font-size:1.75rem;margin:0 0 .25rem}h2{font-size:1.2rem;margin:2rem 0 .75rem}p{color:var(--color-text-muted);margin:.5rem 0 1rem}a{color:var(--color-accent);text-decoration:none;font-weight:600}a:hover{text-decoration:underline}main{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.75rem}nav{display:flex;gap:.5rem 1rem;flex-wrap:wrap;margin:1rem 0;padding:.75rem 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}nav a{font-weight:600;color:var(--color-text-muted)}nav a.active{color:var(--color-accent)}section+section{margin-top:1.5rem}.place-picker{position:relative;flex:1}.place-picker-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow);max-height:220px;overflow-y:auto;z-index:10;padding:.25rem 0}.place-picker-dropdown li{padding:.5rem .75rem;border-bottom:none;cursor:pointer;display:block}.place-picker-dropdown li:hover{background:var(--color-bg)}ul,ol{list-style:none;margin:0;padding:0}li{padding:.65rem .25rem;border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;gap:.75rem}li:last-child{border-bottom:none}table{width:100%;border-collapse:collapse;margin-top:.5rem}th,td{text-align:left;padding:.6rem .5rem;border-bottom:1px solid var(--color-border);font-size:.95rem}th{color:var(--color-text-muted);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}form{display:flex;flex-direction:column;gap:.9rem;margin:1rem 0}label{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem;font-weight:600;color:var(--color-text-muted)}fieldset{border:1px solid var(--color-border);border-radius:var(--radius);padding:1rem;margin:0;display:flex;flex-direction:column;gap:.6rem}legend{padding:0 .4rem;font-weight:600;color:var(--color-text-muted);font-size:.85rem;text-transform:uppercase;letter-spacing:.04em}fieldset>div{display:flex;gap:.5rem;align-items:center}input,select,textarea{font:inherit;color:var(--color-text);background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;padding:.6rem .75rem;width:100%}input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}button,a.btn-primary{font:inherit;font-weight:600;cursor:pointer;border:1px solid var(--color-border);border-radius:8px;padding:.6rem 1.1rem;background:var(--color-surface);color:var(--color-text);display:inline-block;text-decoration:none;transition:background-color .12s ease,border-color .12s ease,opacity .12s ease}button:hover{border-color:var(--color-accent)}button:disabled{opacity:.55;cursor:not-allowed}.icon-button{padding:.4rem;line-height:0;border-radius:6px;color:var(--color-text-muted)}.icon-button:hover{color:var(--color-danger);border-color:var(--color-danger)}form>button[type=submit],a.btn-primary,.btn-primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-contrast);align-self:flex-start}form>button[type=submit]:hover,a.btn-primary:hover,.btn-primary:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}p[role=alert]{color:var(--color-danger);background:var(--color-danger-bg);border-radius:8px;padding:.6rem .75rem;font-weight:600;font-size:.9rem}strong{color:var(--color-text)}li[aria-roledescription]{cursor:grab}
