html,body{background:var(--color-background);height:100%;margin:0;overflow:hidden}#scene{touch-action:none;width:100%;height:100%;display:block}#ui{pointer-events:none;position:fixed;inset:0}.logo{margin:20px 24px;line-height:0}.logo img{filter:drop-shadow(0 2px 6px #00000080);width:min(280px,60vw)}@media (width<=720px){.logo{display:none}}.hud-top{pointer-events:auto;position:fixed;top:16px;left:50%;transform:translate(-50%)}.hud-status{border-radius:var(--radius-small);background:color-mix(in srgb, var(--color-surface) 85%, transparent);max-width:min(320px,100vw - 48px);color:var(--color-text);font-family:var(--font-text);pointer-events:auto;padding:8px 12px;font-size:.85rem;line-height:1.4;position:fixed;top:92px;left:24px}.hud-status strong{font-family:var(--font-title)}.hud-status__next{color:var(--color-textMuted)}.settings-button{width:var(--touch-size);height:var(--touch-size);border:1px solid var(--color-border);border-radius:var(--radius-small);background:var(--color-surface);color:var(--color-text);cursor:pointer;pointer-events:auto;font-size:1.3rem;position:fixed;top:16px;right:16px}.settings-button:hover{border-color:var(--color-accent)}.settings-content{justify-items:start;gap:16px;display:grid}.settings-content p{color:var(--color-textMuted);margin:0}.build-bar{background:linear-gradient(transparent, color-mix(in srgb, var(--color-background) 85%, transparent) 30%);pointer-events:auto;scrollbar-width:thin;gap:10px;padding:12px 16px 16px;display:flex;position:fixed;bottom:0;left:0;right:0;overflow-x:auto}.build-bar[hidden]{display:none}.build-bar .ui-card{flex:none}.build-bar .ui-card.is-short .ui-card__costs{color:var(--color-problem)}.hud-mode-hint{border-radius:var(--radius-small);background:color-mix(in srgb, var(--color-surface) 90%, transparent);color:var(--color-text);font-family:var(--font-text);white-space:nowrap;padding:6px 12px;font-size:.85rem;position:fixed;bottom:200px;left:50%;transform:translate(-50%)}.building-panel{pointer-events:auto;width:min(340px,100vw - 32px);position:fixed;top:92px;right:16px}.building-panel[hidden]{display:none}.building-panel__facts{grid-template-columns:auto 1fr;gap:6px 12px;margin:0 0 16px;font-size:.9rem;display:grid}.building-panel__facts dt{color:var(--color-textMuted)}.building-panel__facts dd{margin:0}.building-panel__facts .is-good{color:var(--color-good)}.building-panel__facts .is-problem{color:var(--color-problem)}.building-panel__buttons{flex-wrap:wrap;gap:8px;display:flex}.building-panel__improve{border:1px solid var(--color-border);border-radius:var(--radius-small);gap:6px;margin:0 0 12px;padding:10px;display:grid}.building-panel__improve p{margin:0}.building-panel__improve-cost{flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:.9rem;display:flex}.building-panel__improve-lock{color:var(--color-problem);font-size:.9rem}.building-panel__improve-done{margin:0 0 12px;font-size:.9rem}.scene-overlay{pointer-events:none;position:absolute;inset:0;overflow:hidden}.scene-marker{font-family:var(--font-text);white-space:nowrap;font-weight:700;position:absolute;top:0;left:0}.scene-marker--bonus,.scene-marker--malus{color:var(--color-ink);box-shadow:var(--shadow);border-radius:999px;padding:2px 8px;font-size:.85rem}.scene-marker--bonus{background:var(--color-good)}.scene-marker--malus{background:var(--color-problem);color:var(--color-parchment)}.scene-marker--label{border-radius:var(--radius-small);background:var(--color-parchment);color:var(--color-ink);padding:3px 8px;font-size:.8rem}@media (width<=720px){.hud-top{top:8px;left:8px;transform:none}.hud-status{font-size:.75rem;top:72px;left:8px}.settings-button{top:8px;right:8px}}@media (width<=600px){.building-panel{top:auto;bottom:190px;right:16px}.hud-mode-hint{white-space:normal;text-align:center;width:calc(100vw - 32px)}}.hud-status{justify-items:start;gap:4px;display:grid}.hud-status__queue{color:var(--color-textMuted);margin:4px 0 0;padding-left:18px}.hud-status__queue .is-running{color:var(--color-text)}.hud-status .ui-button{min-height:32px;padding:0 10px;font-size:.85rem}.wishes-panel{top:92px;left:calc(360px + var(--toolbar-space));pointer-events:auto;width:min(320px,100vw - 32px);position:fixed}.wishes-panel[hidden]{display:none}.wishes-panel__list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.wishes-panel__item{border:1px solid var(--color-border);border-radius:var(--radius-small);background:var(--color-surfaceRaised);width:100%;color:var(--color-text);font:inherit;text-align:left;cursor:pointer;padding:8px 10px}.wishes-panel__item:hover{border-color:var(--color-accent)}.wishes-panel__hint,.wishes-panel__empty{color:var(--color-textMuted);margin:10px 0 0;font-size:.85rem}.scene-marker.is-clickable{pointer-events:auto;cursor:pointer}.scene-marker--mood{border:2px solid var(--color-background);width:20px;height:20px;color:var(--color-ink);border-radius:50%;place-items:center;font-size:.75rem;display:grid}.scene-marker--mood.is-good{background:var(--color-good)}.scene-marker--mood.is-hint{background:var(--color-hint)}.scene-marker--mood.is-problem{background:var(--color-problem);color:var(--color-parchment)}.scene-marker--progress{justify-items:center;gap:2px;display:grid}.scene-marker__ring{background:conic-gradient(var(--color-accent) calc(var(--progress) * 360deg), color-mix(in srgb, var(--color-background) 70%, transparent) 0);border-radius:50%;width:26px;height:26px;-webkit-mask:radial-gradient(circle,#0000 7px,#000 8px);mask:radial-gradient(circle,#0000 7px,#000 8px)}.scene-marker__time{background:color-mix(in srgb, var(--color-background) 80%, transparent);color:var(--color-text);border-radius:999px;padding:1px 6px;font-size:.7rem}.absence p{margin:0 0 8px}.absence__goods{flex-wrap:wrap;gap:4px 14px;margin:0 0 8px;padding:0;font-weight:600;list-style:none;display:flex}.absence .is-good,.absence__good{color:var(--color-good)}.absence .is-problem,.absence__problem{color:var(--color-problem)}.absence__note{color:var(--color-textMuted)}@media (width<=720px){.wishes-panel{top:auto;bottom:190px;left:8px}}.wishes-panel__nobody{justify-items:start;gap:12px;display:grid}.wishes-panel__nobody .wishes-panel__empty{color:var(--color-text);margin:0}.scene-marker--river{background:color-mix(in srgb, var(--color-surface) 92%, transparent);border:1px solid var(--color-border);color:var(--color-text);box-shadow:var(--shadow);border-radius:999px;align-items:center;gap:8px;padding:4px 10px;font-size:.8rem;display:flex}.scene-marker--river.is-clickable:hover{border-color:var(--color-accent)}.river-value{font-variant-numeric:tabular-nums;align-items:center;gap:3px;display:inline-flex}.river-value .ui-icon{width:16px;height:16px}.river-value.is-good{color:var(--color-good)}.river-value.is-hint{color:var(--color-hint)}.river-value.is-problem{color:var(--color-problem)}.river-info dl{grid-template-columns:auto 1fr;gap:6px 12px;margin:0;display:grid}.river-info dt{color:var(--color-textMuted)}.river-info dd{margin:0}.river-info .is-problem{color:var(--color-problem)}.river-info .is-good{color:var(--color-good)}.settings-section{gap:8px;margin-bottom:18px;display:grid}.settings-section .ui-title{font-size:1rem}.settings-section p{color:var(--color-textMuted);margin:0}.settings-buttons{flex-wrap:wrap;gap:8px;display:flex}.settings-legal{margin:0;font-size:.85rem}.settings-legal a,.link-button{color:var(--color-accent)}.link-button{font:inherit;cursor:pointer;background:0 0;border:none;justify-self:start;padding:0;font-size:.85rem;text-decoration:underline}.ui-form{gap:12px;display:grid}.form-intro{color:var(--color-textMuted);margin:0;font-size:.9rem}.ui-field{color:var(--color-textMuted);gap:4px;font-size:.85rem;display:grid}.ui-input{min-height:var(--touch-size);border:1px solid var(--color-border);border-radius:var(--radius-small);background:var(--color-background);color:var(--color-text);font:inherit;padding:0 12px;font-size:1rem}.ui-input:focus{outline:2px solid var(--color-accent);outline-offset:1px}.ui-check{align-items:center;gap:8px;font-size:.9rem;display:flex}.form-error{min-height:1.2em;color:var(--color-problem);margin:0;font-size:.9rem;font-weight:600}.recovery{justify-items:start;gap:12px;display:grid}.recovery p{margin:0}.recovery__code{border-radius:var(--radius-small);background:var(--color-parchment);color:var(--color-ink);letter-spacing:.08em;-webkit-user-select:all;user-select:all;padding:10px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.3rem;font-weight:700}.hanse-chooser{gap:12px;display:grid}.hanse-chooser .ui-title{margin-top:6px;font-size:1rem}.name-picker{gap:6px;display:grid}.name-picker__label{color:var(--color-textMuted);font-size:.85rem}.name-picker__row{gap:8px;display:flex}.name-picker__row select{flex:1;min-width:0}.name-picker__preview{font-family:var(--font-title);font-size:1.1rem}.hanse-list{gap:8px;max-height:260px;display:grid;overflow-y:auto}.hanse-row{border:1px solid var(--color-border);border-radius:var(--radius-small);background:var(--color-surfaceRaised);align-items:center;gap:10px;padding:8px 10px;display:flex}.hanse-row__text{flex:1;gap:2px;font-size:.85rem;display:grid}.hanse-row__text span{color:var(--color-textMuted)}.hanse-chooser__code{gap:8px;display:flex}.hanse-chooser__code .ui-input{text-transform:uppercase;flex:1;min-width:0}.section-panel{top:92px;left:calc(360px + var(--toolbar-space));pointer-events:auto;width:min(340px,100vw - 32px);max-height:calc(100vh - 300px);position:fixed;overflow-y:auto}.section-panel[hidden]{display:none}.section-panel__hanse{align-items:center;gap:10px;margin-bottom:10px;display:flex}.section-panel__hanse>div{gap:2px;font-size:.85rem;display:grid}.section-panel__hanse span{color:var(--color-textMuted)}.section-panel__code{-webkit-user-select:all;user-select:all;font-family:ui-monospace,Menlo,monospace}.section-panel__hint{color:var(--color-textMuted);margin:0 0 8px;font-size:.8rem}.section-chain{gap:0;margin:0;padding:0;list-style:none;display:grid}.section-chain__slot,.section-chain__visit{border-left:4px solid var(--color-riverBlue);justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;font-size:.85rem;display:flex}.section-chain__visit{background:var(--color-surfaceRaised);width:100%;color:var(--color-text);font:inherit;text-align:left;cursor:pointer;border-top:none;border-bottom:none;border-right:none}.section-chain__visit:hover{background:var(--color-border)}.section-chain__slot.is-you{background:color-mix(in srgb, var(--color-accent) 20%, transparent)}.section-chain__slot.is-empty,.section-chain__slot.is-ruin{color:var(--color-textMuted)}.section-chain__slot.is-simulated{font-style:italic}.section-chain__text{display:grid}.section-chain__text span{color:var(--color-textMuted);font-size:.75rem}.section-chain__water{gap:8px;display:flex}.hud-status__buttons{flex-wrap:wrap;gap:4px;display:flex}.section-panel__help{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;margin-bottom:8px;font-size:.85rem;display:flex}.section-chain__slot.has-actions{justify-content:stretch;gap:4px;padding:0 0 6px;display:grid}.section-chain__actions{flex-wrap:wrap;align-items:center;gap:6px;padding:0 10px;display:flex}.section-chain__building{color:var(--color-accent)}.section-chain__helped{color:var(--color-meadowGreen);font-size:.85rem}.inbox-badge{background:var(--color-brickRed);color:#fff;text-align:center;border-radius:9px;min-width:18px;padding:0 5px;font-size:.75rem;font-weight:700;line-height:18px}.inbox-badge[hidden]{display:none}.inbox-panel{top:92px;left:calc(360px + var(--toolbar-space));pointer-events:auto;width:min(360px,100vw - 32px);max-height:calc(100vh - 300px);position:fixed;overflow-y:auto}.inbox-panel[hidden]{display:none}.inbox-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.inbox-item{border:1px solid var(--color-border);border-radius:var(--radius-small);gap:4px;padding:8px 10px;display:grid}.inbox-item.is-unread{border-color:var(--color-accent)}.inbox-item p{margin:0}.inbox-item__time,.inbox-item__answer,.inbox-empty{color:var(--color-textMuted);font-size:.8rem}.inbox-item__replies{flex-wrap:wrap;gap:4px;display:flex}.compose{gap:10px;min-width:0;display:grid}.compose .ui-field,.compose .ui-input{min-width:0;max-width:100%}.compose select.ui-input{text-overflow:ellipsis;width:100%}.compose__row{gap:6px;display:flex}.compose__row .ui-input{flex:1;min-width:0}.settings-reputation:empty{display:none}.trade-panel{top:92px;left:calc(360px + var(--toolbar-space));pointer-events:auto;width:min(380px,100vw - 32px);max-height:calc(100vh - 300px);position:fixed;overflow-y:auto}.trade-panel[hidden]{display:none}.trade,.trade__tab{grid-template-columns:minmax(0,1fr);gap:10px;display:grid}.trade-tabs{border-bottom:1px solid var(--color-border);gap:4px;display:flex}.trade-tabs__tab{color:var(--color-textMuted);font:inherit;cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;padding:6px 12px;font-weight:600}.trade-tabs__tab.is-active{border-bottom-color:var(--color-accent);color:var(--color-text)}.trade__row{gap:6px;display:flex}.trade__row .ui-input{flex:1;min-width:0}.trade__row .trade__amount{flex:0 0 80px}.trade__hint,.trade-empty,.trade-offer__time{color:var(--color-textMuted);margin:0;font-size:.85rem}.trade__buttons{flex-wrap:wrap;gap:6px;display:flex}.trade-list,.trade-stock{gap:6px;margin:0;padding:0;font-size:.9rem;list-style:none;display:grid}.trade-stock{grid-template-columns:repeat(2,1fr)}.trade-offer{border:1px solid var(--color-border);border-radius:var(--radius-small);justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.trade-offer>div{gap:2px;min-width:0;display:grid}.trade-offer>.ui-button{flex-shrink:0}.visit-banner{border-radius:var(--radius);background:var(--color-parchment);max-width:calc(100vw - 32px);color:var(--color-ink);box-shadow:var(--shadow);pointer-events:auto;align-items:center;gap:12px;padding:10px 14px;font-weight:600;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.visit-banner[hidden]{display:none}@media (width<=720px){.trade-panel{width:auto;max-height:70vh;inset:auto 8px 8px}.inbox-panel{width:auto;max-height:60vh;inset:auto 8px 8px}.section-panel{top:auto;bottom:190px;left:8px}.visit-banner{text-align:center;flex-direction:column}}.hud-top{flex-direction:column;align-items:center;gap:6px;display:flex}.goal-strip{background:color-mix(in srgb, var(--color-surface) 90%, transparent);border:1px solid var(--color-border);border-radius:999px;gap:4px;margin:0;padding:3px 6px;list-style:none;display:flex}.goal-strip__level{color:var(--color-textMuted);font-family:var(--font-text);border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:.75rem;display:flex;position:relative}.goal-strip__level svg{width:16px;height:16px}.goal-strip__name{display:none}.goal-strip__level.is-current{background:var(--color-accent);color:var(--color-accentText);font-weight:700}.goal-strip__level.is-current .goal-strip__name{display:inline}.goal-strip__level.is-done{color:var(--color-good)}.goal-strip__level.is-done:after{content:"✓";font-size:.65rem;font-weight:700;position:absolute;top:-4px;right:0}.goal{gap:6px;width:100%;display:grid}.goal__toggle{color:var(--color-text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;align-items:baseline;gap:2px;padding:0;display:flex}.goal__toggle:after{content:"▾";color:var(--color-textMuted);margin-left:6px}.goal.is-open .goal__toggle:after{content:"▴"}.goal__toggle strong{font-family:var(--font-title)}.goal__count{color:var(--color-textMuted)}.goal__details[hidden]{display:none}.goal__conditions,.goal__tasks{gap:3px;margin:0;padding:0;list-style:none;display:grid}.goal__conditions li{color:var(--color-textMuted);gap:6px;display:flex}.goal__conditions li.is-done{color:var(--color-good)}.goal__check{text-align:center;width:1em;font-weight:700}.goal__tasks{margin-top:6px}.goal__tasks li{transition:opacity .4s,transform .4s}.goal:not(.is-open) .goal__tasks li:nth-child(n+2){display:none}.goal__tasks li.is-done{opacity:0;transform:translate(16px)}.goal__tasks li.is-done .goal__task:before{content:"✓ ";color:var(--color-good)}.goal__task{border:1px solid var(--color-accent);border-radius:var(--radius-small);background:color-mix(in srgb, var(--color-accent) 14%, transparent);width:100%;color:var(--color-text);font:inherit;text-align:left;cursor:pointer;padding:6px 10px;font-weight:600}.goal__task:hover:not(:disabled){background:color-mix(in srgb, var(--color-accent) 28%, transparent)}.goal__task:disabled{border-color:var(--color-border);cursor:default;background:0 0}.goal-intro{font-family:var(--font-title);margin:0;font-size:1.4rem;line-height:1.4}.ui-tooltip.is-long .building-info{gap:6px;display:grid}.building-info p,.building-panel__intro p{margin:0}.building-info__desc{font-weight:600}.building-info__locked{color:var(--color-brickRed);font-weight:600}.building-info__costs{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.building-info__cost{align-items:center;gap:3px;font-weight:700;display:inline-flex}.building-info__neighbours{flex-wrap:wrap;gap:4px;display:flex}.neighbour-chip{border-radius:999px;padding:1px 8px;font-size:.75rem;font-weight:700}.neighbour-chip.is-good{background:var(--color-good);color:var(--color-ink)}.neighbour-chip.is-bad{background:var(--color-problem);color:var(--color-parchment)}.building-info__neighbour-text{opacity:.85;font-size:.85em}.building-panel__intro{gap:4px;margin-bottom:10px;font-size:.9rem;display:grid}.building-panel__problems{border-radius:var(--radius-small);background:color-mix(in srgb, var(--color-problem) 15%, transparent);color:var(--color-problem);gap:4px;margin:0 0 12px;padding:8px 10px 8px 26px;font-size:.9rem;font-weight:600;display:grid}@media (width<=720px){.hud-top{align-items:flex-start}.hud-status{top:104px}}.hanse-panel{left:calc(360px + var(--toolbar-space));pointer-events:auto;width:min(400px,100vw - 32px);position:fixed}.hanse-panel[hidden]{display:none}.trade-offer.is-chosen{border-color:var(--color-accent)}.project{border:1px solid var(--color-border);border-radius:var(--radius-small);gap:6px;padding:10px;display:grid}.project-good{gap:2px;font-size:.85rem;display:grid}.project-bar{background:var(--color-surfaceRaised);border-radius:4px;height:8px;overflow:hidden}.project-bar__fill{background:var(--color-good);height:100%}.coat-editor{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.coat-editor__fields{flex:1;gap:8px;min-width:200px;display:grid}.research-panel{left:calc(360px + var(--toolbar-space));pointer-events:auto;width:min(420px,100vw - 32px);position:fixed}.research-panel[hidden]{display:none}.research__pair{align-items:center}.research__plus{font-weight:700}.research__last{border-radius:var(--radius-small);background:var(--color-surfaceRaised);margin:0;padding:8px 10px;font-size:.9rem}.research__last.is-found{border-left:4px solid var(--color-good)}.recipe-book{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.recipe{border:1px solid var(--color-border);border-radius:var(--radius-small);align-content:start;gap:4px;padding:8px 10px;font-size:.85rem;display:grid}.recipe p{margin:0}.recipe.is-open{color:var(--color-textMuted);border-style:dashed}.recipe__name{font-family:var(--font-title)}.recipe__inputs,.recipe__tip{color:var(--color-accent)}.recipe__effect{color:var(--color-good)}.building-panel,.wishes-panel,.section-panel,.inbox-panel,.trade-panel,.hanse-panel,.research-panel,.season-panel,.branch-panel,.chronicle-panel,.help-panel{top:var(--hud-window-top,132px);max-height:calc(100vh - var(--hud-window-top,132px) - 210px);overflow-y:auto}@media (width<=720px){.building-panel,.wishes-panel,.section-panel,.inbox-panel,.trade-panel,.hanse-panel,.research-panel,.season-panel,.branch-panel,.chronicle-panel,.help-panel{z-index:2;width:auto;height:50vh;max-height:50vh;inset:auto 0 0}.building-panel .ui-panel,.wishes-panel .ui-panel,.section-panel .ui-panel,.inbox-panel .ui-panel,.trade-panel .ui-panel,.hanse-panel .ui-panel,.research-panel .ui-panel,.season-panel .ui-panel,.branch-panel .ui-panel,.chronicle-panel .ui-panel,.help-panel .ui-panel{border-bottom-right-radius:0;border-bottom-left-radius:0;min-height:100%}}.level-up{z-index:20;background:radial-gradient(circle, color-mix(in srgb, var(--color-background) 55%, transparent), transparent 70%);color:var(--color-text);text-align:center;pointer-events:auto;flex-direction:column;justify-content:center;align-items:center;gap:12px;animation:.6s ease-out level-up-in;display:flex;position:fixed;inset:0}.level-up.is-leaving{opacity:0;transition:opacity .3s}.level-up__kicker{color:var(--color-accent);font-family:var(--font-title);letter-spacing:.12em;text-transform:uppercase;font-size:1.1rem}.level-up__title{font-family:var(--font-title);text-shadow:0 2px 12px #0009;padding:0 16px;font-size:clamp(2rem,7vw,4rem)}@keyframes level-up-in{0%{opacity:0;transform:scale(.9)}}.spec-chooser{gap:12px;display:grid}.spec-cards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;display:grid}.spec-card{border:1px solid var(--color-border);border-radius:var(--radius-small);background:var(--color-surfaceRaised);align-content:start;gap:6px;padding:12px;display:grid}.spec-card.is-chosen{border-color:var(--color-accent)}.spec-card p,.spec-card h3{margin:0}.spec-card__icon .ui-icon{width:36px;height:36px;color:var(--color-accent)}.spec-card__sentence{font-style:italic}.spec-card__list{margin:0;padding-left:18px;font-size:.85rem}.spec-card__extra,.spec-card__gap{font-size:.85rem}.spec-card__gap{color:var(--color-textMuted)}.section-chain__spec{color:var(--color-textMuted);align-items:center;gap:4px;font-size:.75rem;display:inline-flex}.section-chain__spec .ui-icon{width:14px;height:14px}.ui-modal:has(.spec-chooser){width:min(980px,100vw - 32px)}.ui-modal:has(.event-cards__wrap){width:min(900px,100vw - 32px)}.event-cards__wrap{gap:12px;display:grid}.event-cards{perspective:1000px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.event-card{min-height:300px}.event-card__inner{height:100%;transform-style:preserve-3d;transition:transform .5s ease-out;display:grid}.event-card.is-hidden .event-card__inner{transform:rotateY(180deg)}.event-card__front,.event-card__back{border:1px solid var(--color-border);border-radius:var(--radius);backface-visibility:hidden;grid-area:1/1}.event-card__front{background:var(--color-surfaceRaised);flex-direction:column;gap:8px;padding:14px;display:flex}.event-card__front p,.event-card__front h3{margin:0}.event-card__answers{gap:8px;margin-top:auto;display:grid}.event-card__answer{gap:4px;display:grid}.event-card__front.has-two .event-card__answer+.event-card__answer{border-top:1px dashed var(--color-border);padding-top:8px}.event-card__back{background:repeating-linear-gradient(45deg, var(--color-surface), var(--color-surface) 10px, var(--color-surfaceRaised) 10px, var(--color-surfaceRaised) 20px);color:var(--color-accent);place-items:center;font-size:2.5rem;display:grid;transform:rotateY(180deg)}.event-card__text{font-style:italic}.event-card__deal{color:var(--color-accent);font-size:.9rem;font-weight:600}.event-card__problem{color:var(--color-problem);font-size:.85rem}.event-card.is-chosen .event-card__front{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent)}.event-card.is-expired{opacity:.45;filter:grayscale(.8)}.event-cards__outcome{margin:0;font-weight:600}.event-cards__outcome:empty{display:none}@media (prefers-reduced-motion:reduce){.event-card__inner{transition:none}}.treaties{border-top:1px solid var(--color-border);gap:8px;margin-top:16px;padding-top:12px;display:grid}.treaties h3,.treaties p{margin:0}.treaties__neighbours,.treaties__list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.treaties__item{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surfaceRaised);gap:2px;padding:8px 10px;display:grid}.treaties__status{color:var(--color-textMuted);font-size:.9rem}.treaties__item.is-active .treaties__status{color:var(--color-good)}.treaties__item.is-broken .treaties__status{color:var(--color-problem)}.treaties__form{gap:8px;display:grid}.treaties,.treaties__form .ui-input{min-width:0;max-width:100%}:root{--toolbar-space:0px}:root:has(.toolbar:not([hidden])){--toolbar-space:68px}.hud-status{left:calc(24px + var(--toolbar-space))}.toolbar{width:64px;max-height:calc(100vh - 92px - var(--build-bar-height,230px));border-radius:var(--radius-small);background:color-mix(in srgb, var(--color-surface) 85%, transparent);pointer-events:auto;scrollbar-width:none;flex-direction:column;gap:4px;padding:4px;display:flex;position:fixed;top:92px;left:8px;overflow-y:auto}.toolbar[hidden],.toolbar__item[hidden],.toolbar__badge[hidden]{display:none}.toolbar__item{min-height:var(--touch-size);border-radius:var(--radius-small);color:var(--color-text);font-family:var(--font-text);cursor:pointer;background:0 0;border:1px solid #0000;flex:none;justify-items:center;gap:2px;padding:4px 2px 3px;display:grid;position:relative}.toolbar__item:hover,.toolbar__item:focus-visible{border-color:var(--color-border);background:color-mix(in srgb, var(--color-text) 8%, transparent)}.toolbar__item.is-active{border-color:var(--color-accent);color:var(--color-accent)}.toolbar__icon .ui-icon{width:20px;height:20px}.toolbar__label{text-align:center;-webkit-hyphens:manual;hyphens:manual;max-width:100%;font-size:.68rem;line-height:1.1;overflow:hidden}.toolbar__badge{background:var(--color-brickRed);color:#fff;text-align:center;border-radius:8px;min-width:16px;padding:0 4px;font-size:.68rem;font-weight:700;line-height:16px;position:absolute;top:2px;right:6px}@media (width<=720px){:root:has(.toolbar:not([hidden])){--toolbar-space:0px}.hud-status{left:8px}.toolbar{top:auto;right:0;bottom:var(--build-bar-height,224px);border-radius:0;flex-direction:row;gap:2px;width:auto;max-height:none;padding:4px;left:0;overflow:auto hidden}.toolbar__item{flex:1 0 48px;padding-inline:0}.toolbar__label{font-size:.62rem}.hud-mode-hint{bottom:calc(var(--build-bar-height,224px) + 64px)}}.season-panel{left:calc(360px + var(--toolbar-space));pointer-events:auto;width:min(420px,100vw - 32px);position:fixed}.season-panel[hidden]{display:none}.season__intro,.season__note,.season__empty{color:var(--color-textMuted);margin:0 0 8px;font-size:.85rem}.season__reward{border:1px dashed var(--color-accent);border-radius:var(--radius-small);margin:0 0 10px;padding:6px 8px;font-size:.85rem}.season__reward.is-done{color:var(--color-good);border-style:solid}.season__list{gap:8px;margin:0 0 12px;padding:0;list-style:none;display:grid}.season__goal{grid-template-columns:1fr auto;gap:2px 8px;font-size:.85rem;display:grid}.season__goal.is-done .season__text{color:var(--color-good)}.season__points{color:var(--color-accent);font-weight:700}.season__bar{background:linear-gradient(to right, var(--color-accent) calc(var(--share,0) * 100%), color-mix(in srgb, var(--color-text) 15%, transparent) 0);border-radius:3px;height:6px}.season__goal.is-done .season__bar{background:var(--color-good)}.season__value{color:var(--color-textMuted);font-size:.75rem}.season__slot{gap:6px;margin-bottom:12px;display:grid}.season__item{border:1px solid var(--color-border);border-radius:var(--radius-small);grid-template-columns:1fr auto;align-items:center;gap:2px 8px;padding:6px 8px;font-size:.85rem;display:grid}.season__item.is-worn{border-color:var(--color-accent)}.season__item strong,.season__item .season__description{grid-column:1}.season__item .ui-button{white-space:nowrap;grid-area:1/2/span 2;min-height:32px;font-size:.8rem}.season__description{color:var(--color-textMuted);font-size:.78rem}.season__ranking{gap:4px;margin:0;padding-left:22px;display:grid}.season__ranking li span{min-width:50%;display:inline-flex}.season__ranking .is-you{color:var(--color-accent);font-weight:700}.branch-panel{left:calc(360px + var(--toolbar-space));pointer-events:auto;width:min(420px,100vw - 32px);position:fixed}.branch-panel[hidden]{display:none}.branch__section{gap:6px;margin-bottom:12px;display:grid}.branch__note{color:var(--color-textMuted);margin:0;font-size:.82rem}.branch__own{border:1px solid var(--color-border);border-radius:var(--radius-small);grid-template-columns:1fr auto;align-items:center;gap:2px 8px;padding:6px 8px;display:grid}.branch__own.is-shown{border-color:var(--color-accent)}.branch__own>strong,.branch__own>.branch__note{grid-column:1}.branch__own>:last-child{grid-area:1/2/span 2}.branch__here{color:var(--color-accent);font-size:.8rem}.branch__raft{flex-wrap:wrap;gap:6px;display:flex}.branch__rafts{color:var(--color-textMuted);margin:0;padding-left:18px;font-size:.8rem}.branch__label{gap:4px;font-size:.85rem;display:grid}.branch__tributary{border-left:3px solid var(--color-riverBlue);gap:4px;margin-bottom:10px;padding:6px 8px;font-size:.85rem;display:grid}.branch__chain{gap:2px;margin:0;padding-left:20px;display:grid}.branch__slot{justify-content:space-between;align-items:center;gap:6px;display:flex}.branch__slot.is-empty{color:var(--color-textMuted)}.branch__slot.is-you{color:var(--color-accent);font-weight:700}.branch__slot .ui-button{min-height:28px;padding:0 8px;font-size:.78rem}.branch__mouth{color:var(--color-riverBlue);margin:0;font-size:.8rem}.section-chain__mouth{color:var(--color-riverBlue);padding:2px 10px 2px 22px;font-size:.8rem;list-style:none}.branch .name-picker__row{gap:6px;display:flex}.branch select.ui-input{width:100%;min-width:0}.branch .name-picker__row select.ui-input{flex:1}.chronicle-panel{left:calc(360px + var(--toolbar-space));pointer-events:auto;width:min(440px,100vw - 32px);position:fixed}.chronicle-panel[hidden]{display:none}.chronicle__note{color:var(--color-textMuted);margin:0;font-size:.82rem}.chronicle__book{gap:6px;margin:0 0 12px;padding-left:20px;display:grid}.chronicle__entry{gap:2px;font-size:.85rem;display:grid}.chronicle__entry.is-museum strong:before{content:"🏛 "}.chronicle__relics{color:var(--color-accent);font-size:.8rem}.chronicle__retire{gap:8px;display:grid}.chronicle__relics-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px;display:grid}.chronicle__relic{border:1px solid var(--color-border);border-radius:var(--radius-small);cursor:pointer;grid-template-columns:auto 1fr;gap:2px 6px;padding:6px 8px;font-size:.82rem;display:grid}.chronicle__relic:has(input:checked){border-color:var(--color-accent)}.chronicle__relic>:not(input){grid-column:2}.chronicle__effect{color:var(--color-good);font-size:.78rem}.chronicle__label{gap:4px;font-size:.85rem;display:grid}.chronicle select.ui-input{width:100%;min-width:0}.chronicle .name-picker__row{gap:6px;display:flex}.chronicle .name-picker__row select.ui-input{flex:1}.section-chain__slot.is-museum .section-chain__text strong{color:var(--color-sandstone)}.section-chain__museum{color:var(--color-textMuted);font-size:.78rem}.guide{top:var(--hud-window-top,132px);z-index:3;border:2px solid var(--color-accent);border-radius:var(--radius);background:var(--color-parchment);width:min(340px,100vw - 32px);color:var(--color-ink);font-family:var(--font-text);pointer-events:auto;gap:4px;padding:12px 14px;display:grid;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 6px 18px #00000059}.guide[hidden],.guide-arrow[hidden]{display:none}.guide__count{opacity:.75;font-size:.75rem}.guide__title{font-family:var(--font-title);font-size:1.05rem}.guide__text{margin:0;font-size:.95rem;line-height:1.4}.guide__buttons{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.guide .ui-button--ghost{color:var(--color-ink)}.guide-arrow{z-index:1001;pointer-events:none;position:fixed;top:0;left:0}.guide-arrow__tip{color:var(--color-accent);text-shadow:0 2px 4px #0009;font-size:2.2rem;line-height:1;animation:.9s ease-in-out infinite guide-bounce;position:absolute;bottom:6px;left:0;transform:translate(-50%)}.guide-arrow__ring{border:3px solid var(--color-accent);border-radius:50%;width:34px;height:34px;animation:1.2s ease-out infinite guide-pulse;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.guide-glow{outline-offset:2px;animation:1.2s ease-in-out infinite guide-glow;outline:3px solid var(--color-accent)!important}@keyframes guide-bounce{50%{transform:translate(-50%,-8px)}}@keyframes guide-pulse{0%{opacity:1;transform:translate(-50%,-50%)scale(.6)}to{opacity:0;transform:translate(-50%,-50%)scale(1.6)}}@keyframes guide-glow{50%{outline-color:color-mix(in srgb, var(--color-accent) 40%, transparent)}}@media (prefers-reduced-motion:reduce){.guide-arrow__tip,.guide-arrow__ring,.guide-glow{animation:none}}@media (width<=720px){.guide{top:auto;left:8px;right:8px;bottom:calc(var(--build-bar-height,224px) + 64px);width:auto;transform:none}}.scene-marker--voice{white-space:normal;background:var(--color-parchment);width:max-content;max-width:180px;color:var(--color-ink);font-family:var(--font-text);text-align:center;border-radius:10px;padding:4px 8px;font-size:.75rem;line-height:1.25;box-shadow:0 2px 6px #0000004d}.scene-marker--voice:after{border:5px solid #0000;border-top-color:var(--color-parchment);content:"";border-bottom:0;position:absolute;bottom:-5px;left:50%;transform:translate(-50%)}.help-panel{left:calc(360px + var(--toolbar-space));pointer-events:auto;width:min(440px,100vw - 32px);position:fixed}.help-panel[hidden]{display:none}.help__search{width:100%;margin-bottom:8px}.help__goal{font-family:var(--font-title);font-size:1.05rem}.help__note{color:var(--color-textMuted);font-size:.82rem}.help__levels{gap:6px;margin:0 0 12px;padding-left:20px;display:grid}.help__levels li{gap:2px;display:grid}.help__entry{border-bottom:1px solid var(--color-border);padding:6px 0}.help__entry summary{cursor:pointer}.help__stages{margin:4px 0 0;padding-left:20px;font-size:.82rem}.help__start{justify-items:start;gap:8px;display:grid}.intro__text{margin:0;font-size:1rem;line-height:1.45}.build-bar__toggle{display:none}@media (width<=720px){.build-bar{gap:6px;padding:6px 8px 8px}.build-bar__toggle{z-index:1;width:var(--touch-size);border:1px solid var(--color-border);border-radius:var(--radius-small);background:var(--color-surfaceRaised);color:var(--color-text);flex:none;font-size:1rem;display:block;position:sticky;left:0}.build-bar:not(.is-expanded) .ui-card{width:76px;min-height:var(--touch-size);border-width:1px;gap:2px;padding:4px 6px}.build-bar:not(.is-expanded) .ui-card__art{background:0 0;height:28px}.build-bar:not(.is-expanded) .ui-card__art .ui-icon{width:22px;height:22px}.build-bar:not(.is-expanded) .ui-card__header .ui-title{text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.build-bar:not(.is-expanded) :is(.ui-card__subtitle,.ui-card__text){display:none}.build-bar:not(.is-expanded) .ui-card__costs{gap:4px;font-size:.68rem}.build-bar:not(.is-expanded) .ui-card__cost .ui-icon{width:12px;height:12px}}.colorblind .river-value.is-good:after,.colorblind .ui-resource:not(.is-full,.is-empty) .ui-resource__value:after{content:" ✓"}.colorblind .river-value.is-hint:after,.colorblind .ui-resource.is-full .ui-resource__value:after{content:" ~"}.colorblind .river-value.is-problem:after,.colorblind .ui-resource.is-empty .ui-resource__value:after{content:" !";font-weight:800}.colorblind .ui-toast--problem:before{content:"⚠ "}.colorblind .build-bar .ui-card.is-short .ui-card__costs:before{content:"! ";color:var(--color-problem);font-weight:800}.colorblind .scene-marker--mood{outline:2px solid var(--color-ink)}.colorblind .scene-marker--malus:before{content:"⚠ "}.colorblind .building-panel__facts dd.is-good:before{content:"✓ "}.colorblind .building-panel__facts dd.is-problem:before{content:"! ";font-weight:800}@media (width<=720px){.season-panel,.branch-panel,.chronicle-panel,.help-panel{width:auto;left:0;right:0}:root:has(:is(.building-panel,.wishes-panel,.section-panel,.inbox-panel,.trade-panel,.hanse-panel,.research-panel,.season-panel,.branch-panel,.chronicle-panel,.help-panel):not([hidden])) .guide{top:8px;bottom:auto}}.settings-slider{gap:2px;width:100%;font-size:.9rem;display:grid}.settings-slider input{width:100%;min-height:var(--touch-size);accent-color:var(--color-accent)}.settings-slider small{color:var(--color-textMuted)}
