:root{--bg:#1b120b;--panel:#2a1c11ee;--text:#f3e7d3;--muted:#bda98c;--accent:#d9a441;--accent-dark:#a97a24;--danger:#c4513f;--border:#5a412a;color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;margin:0;overflow:hidden}#game{position:fixed;inset:0}#ui{pointer-events:none;position:fixed;inset:0}#ui>*{pointer-events:auto}body.in-game #ui{pointer-events:none}.btn{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:8px;padding:.7rem 1.4rem;transition:background .15s,transform 50ms}.btn:active{transform:translateY(1px)}.btn--primary{background:var(--accent);color:#241707;font-weight:600}.btn--primary:hover{background:#e8b555}.btn--ghost{color:var(--text);border-color:var(--border);background:0 0}.btn--ghost:hover{background:#ffffff14}.btn--small{padding:.4rem .9rem;font-size:.9rem}.home{background:radial-gradient(ellipse at center, #3d2817 0%, var(--bg) 70%);flex-direction:column;justify-content:center;align-items:center;gap:2rem;height:100%;min-height:100%;padding:2rem 16px;display:flex;overflow-y:auto}.home__header{text-align:center}.home__title{color:var(--accent);letter-spacing:.04em;margin:0;font-family:Georgia,serif;font-size:clamp(2.5rem,6vw,4rem)}.home__subtitle{color:var(--muted);margin:.5rem 0 0}.home__panel{background:var(--panel);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:1.5rem;width:min(520px,100%);padding:1.5rem;display:flex}.saves__title{color:var(--muted);margin:0 0 .75rem;font-size:1rem;font-weight:500}.saves__empty{color:var(--muted);margin:0;font-style:italic}.saves__list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.save{border:1px solid var(--border);background:#00000025;border-radius:10px;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem;display:flex}.save__info{flex-direction:column;min-width:0;display:flex}.save__name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.save__meta{color:var(--muted);font-size:.8rem}.save__actions{flex-shrink:0;gap:.4rem;display:flex}.name-form{flex-direction:column;gap:.6rem;display:flex}.name-form__label{font-weight:600}.name-form__input{font:inherit;border:1px solid var(--border);color:var(--text);background:#00000040;border-radius:8px;padding:.7rem}.name-form__input:focus{outline:2px solid var(--accent);outline-offset:1px}.name-form__error{color:var(--danger);min-height:1.2em;margin:0;font-size:.9rem}.name-form__actions{justify-content:flex-end;gap:.5rem;display:flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.is-active{border-color:var(--accent);background:#fff2}.hud{background:linear-gradient(#000000d0,#0000);justify-content:space-between;align-items:center;gap:1rem;padding:.6rem 1rem;transition:background .6s;display:flex;position:absolute;top:0;left:0;right:0}.hud.is-night{background:linear-gradient(#0a1030e0,#0000)}.hud .btn{white-space:nowrap}.hud__group{align-items:center;gap:.7rem;min-width:0;display:flex}.hud__name{white-space:nowrap;text-overflow:ellipsis;font-family:Georgia,serif;font-size:1.1rem;overflow:hidden}.hud__quests{font:inherit;color:var(--text);border:1px solid var(--border);cursor:pointer;white-space:nowrap;background:#0005;border-radius:999px;padding:.25rem .7rem;font-size:.85rem}.hud__quests:hover{border-color:var(--accent)}.hud__works{font:inherit;color:var(--text);border:1px solid var(--accent);cursor:pointer;background:#0006;border-radius:8px;flex-direction:column;gap:.2rem;min-width:0;max-width:300px;padding:.25rem .6rem .35rem;font-size:.8rem;display:flex}.hud__works[hidden]{display:none}.hud__works[data-state=sans-charpentiere]{border-color:var(--danger)}.hud__works-text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.hud__works-bar{background:#fff2;border-radius:2px;height:4px;overflow:hidden}.hud__works-fill{background:var(--accent);height:100%;display:block}.hud__works[data-state=sans-charpentiere] .hud__works-fill{background:var(--danger)}.hud__resources{gap:.9rem;font-size:.95rem;display:flex}.hud__res{white-space:nowrap}.hud__icon{margin-right:.25rem}.hud__res strong.is-full{color:var(--accent)}.hud__res strong.is-low{color:var(--danger)}.clock{flex-direction:column;gap:.25rem;min-width:150px;display:flex}.clock__label{white-space:nowrap;font-size:.9rem}.clock__bar{background:#fff2;border-radius:2px;height:4px;overflow:hidden}.clock__fill{background:var(--accent);height:100%}.is-night .clock__fill{background:#8aa2ff}.modal{background:#000000a0;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0}.modal[hidden]{display:none}.modal__box{border:1px solid var(--border);background:#24180e;border-radius:14px;max-height:calc(100vh - 32px);overflow:hidden;box-shadow:0 20px 60px #000000a0}.menu{grid-template-columns:240px 1fr;width:min(980px,100%);height:min(640px,100%);display:grid}.menu__nav{border-right:1px solid var(--border);flex-direction:column;gap:.15rem;padding:.8rem;display:flex;overflow-y:auto}.menu__group{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:.8rem 0 .3rem;font-size:.72rem}.menu__group:first-child{margin-top:0}.menu__item{font:inherit;text-align:left;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;padding:.45rem .6rem;font-size:.92rem;display:flex}.menu__item:hover:not(:disabled){background:#ffffff12}.menu__item.is-active{color:#ffe2a8;background:#d9a44133}.menu__item:disabled{color:#fff5;cursor:default}.menu__close{margin-top:auto}.menu__content{padding:1.2rem 1.4rem;overflow-y:auto}.tag{border:1px solid #fff3;border-radius:999px;padding:0 .45rem;font-size:.7rem}.dig{width:min(760px,100%);padding:1.2rem 1.4rem;overflow-y:auto}.panel__title{color:var(--accent);margin:0 0 .4rem;font-family:Georgia,serif}.panel__intro{color:var(--muted);margin:0 0 1rem}.panel__sub{margin:1.4rem 0 .6rem;font-size:1rem}.notice{background:#c4513f22;border:1px solid #c4513f66;border-radius:8px;margin:0 0 1rem;padding:.5rem .8rem}.cards{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.8rem;margin:1rem 0;display:grid}.card{border:1px solid var(--border);background:#00000030;border-radius:10px;flex-direction:column;gap:.4rem;padding:.8rem;display:flex}.card.is-locked{opacity:.55}.card__title{align-items:center;gap:.4rem;display:flex}.card__text,.card__cost,.card__reason{margin:0;font-size:.85rem}.card__text{color:var(--muted);flex:1}.card__cost{color:#ffe2a8}.card__reason{color:#e98a7a}.swatch{border:1px solid var(--accent);border-radius:3px;width:14px;height:14px;display:inline-block}.table{border-collapse:collapse;width:100%;margin-bottom:.6rem;font-size:.9rem}.table th,.table td{text-align:left;border-bottom:1px solid #ffffff14;padding:.45rem .6rem}.table th{color:var(--muted);font-weight:500}.rows{flex-direction:column;gap:.5rem;display:flex}.row{border:1px solid var(--border);background:#00000025;border-radius:10px;justify-content:space-between;align-items:center;gap:1rem;padding:.6rem .8rem;display:flex}.row__info{flex-direction:column;flex:1;gap:.3rem;display:flex}.row__meta{color:var(--muted);font-size:.8rem}.quest.is-done{border-color:#6fae4a}.progress{background:#ffffff1a;border-radius:4px;height:8px;overflow:hidden}.progress__fill{background:var(--accent);height:100%}.room-panel{background:var(--panel);border:1px solid var(--border);border-radius:14px;width:308px;padding:1rem;position:absolute;top:64px;bottom:16px;right:16px;overflow-y:auto}.room-panel[hidden]{display:none}.room-panel>div{flex-direction:column;align-items:stretch;gap:.6rem;display:flex}.room-panel .panel__title{margin-top:.4rem}.room-panel__level{color:#ffe2a8;margin:0}.room-panel__effect{margin:0}.room-panel .card__cost{margin-top:.6rem}.toasts{flex-direction:column;align-items:center;gap:.4rem;display:flex;position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%);pointer-events:none!important}.toast{background:var(--panel);border:1px solid var(--border);opacity:0;white-space:nowrap;border-radius:8px;padding:.55rem 1.1rem;transition:opacity .25s,transform .25s;transform:translateY(.6rem)}.toast--visible{opacity:1;transform:translateY(0)}.themes{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.8rem;display:grid}.themes--compact{grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem}.theme{font:inherit;color:var(--text);text-align:left;border:2px solid var(--border);cursor:pointer;background:#00000030;border-radius:10px;flex-direction:column;gap:.35rem;min-width:0;padding:.5rem;display:flex}.theme:hover{border-color:#a98552}.theme:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.theme.is-active{border-color:var(--accent);background:#d9a44122}.theme__preview{aspect-ratio:240/140;border-radius:6px;width:100%;display:block}.theme__name{font-size:.9rem}.themes--compact .theme__name{font-size:.75rem;line-height:1.2}.theme__desc{color:var(--muted);font-size:.8rem}.theme__check{color:var(--accent);font-size:.8rem;font-weight:600}.themes--compact .theme__check{display:none}.home__themes{flex-direction:column;display:flex}@media (width<=520px){.themes--compact{grid-template-columns:repeat(2,minmax(0,1fr))}}.portrait{border:2px solid var(--border);border-radius:50%;flex-shrink:0;width:56px;height:56px;display:block}.card .portrait{align-self:center;width:64px;height:64px}.row .portrait{order:-1}.zoom{background:var(--panel);border:1px solid var(--border);border-radius:999px;align-items:center;gap:2px;padding:4px;display:flex;position:absolute;bottom:16px;left:16px;box-shadow:0 6px 20px #00000080}.zoom__btn,.zoom__lens{font:inherit;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:999px;height:36px}.zoom__btn{width:36px;font-size:1.3rem;line-height:1}.zoom__lens{font-variant-numeric:tabular-nums;min-width:92px;padding:0 .7rem;font-size:.9rem}.zoom__btn:hover:not(:disabled),.zoom__lens:hover{background:#ffffff14}.zoom__btn:disabled{opacity:.35;cursor:default}.zoom__lens.is-zoomed{color:var(--accent);font-weight:600}.zoom button:focus-visible{outline:2px solid var(--accent)}
