/* Redesign presentation only. Service, progression and avatar contracts unchanged. */
:root{--ink:#e5eded;--muted:#82979e;--surface:#111d24;--line:#25383f;--accent:#a5f0d5;--blue:#91c6df}
*{box-sizing:border-box}body{margin:0;background:#080f14;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;text-align:left;padding:0 18px 110px;background-image:radial-gradient(ellipse at 20% 0%,#152b3380,transparent 60%)}
button,input,select{font:inherit}button{cursor:pointer;transition:background .15s,transform .15s,border-color .15s;box-shadow:none!important}button:active{transform:scale(.97)}button:disabled{opacity:.45;cursor:wait}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
button{background:#18282f;color:var(--ink);border:1px solid var(--line);border-radius:12px;margin:0}button:hover{background:#233942;border-color:#54736e}h1,h2,h3,p{margin-top:0}h2{letter-spacing:-.04em}p{color:var(--muted);line-height:1.5}a{color:inherit}#app{max-width:1080px;margin:auto}#app.hidden{display:none}.brand-bar{display:flex;align-items:center;justify-content:space-between;height:74px;border-bottom:1px solid var(--line)}.brand{text-decoration:none;font-size:18px;font-weight:850;letter-spacing:.13em}.brand span{color:var(--accent);margin-left:4px}.season-label{font-size:9px;letter-spacing:.1em;color:var(--muted);max-width:115px;text-align:right}.preview-note{font-size:10px;color:#a8b8bf;padding:10px 0;letter-spacing:.04em}.preview-note a{text-underline-offset:3px}#data-mode{display:none}
#player-space{margin:18px 0 25px}#player-space[hidden]{display:none!important}.player-view-header{margin:0}.player-view-header h2{font-size:23px;font-weight:650}.player-eyebrow{color:var(--accent);font-size:9px;letter-spacing:.18em;margin:0 0 8px}#household-toggle{display:none}#player-view-description{font-size:12px;margin:4px 0 16px}#player-space .players{margin:0!important;gap:16px}#player-space .player-card{background:radial-gradient(ellipse at 50% 35%,#26434980,transparent 65%),linear-gradient(155deg,#182830,#0d171e);border:1px solid #30454e;border-radius:22px;box-shadow:none!important;display:grid;grid-template-columns:1fr auto;gap:5px 12px;padding:18px!important;position:relative;overflow:hidden}
#player-space .player-card::before{content:'HOUSE / 01';position:absolute;top:18px;left:18px;font-size:9px;letter-spacing:.18em;color:#819da5}#player-space .avatar-container{grid-column:1/-1;width:100%;margin:0!important}#player-space[data-view=home] .avatar-container{height:340px}#player-space .player-card h2{font-size:26px;margin:8px 0 0;text-align:left;color:var(--ink)}#player-space .player-card p{font-size:12px;margin:0;text-align:right;align-self:end}#player-space .player-card h2+p{font-size:11px;letter-spacing:.07em;color:var(--accent);border:1px solid #537368;padding:7px 10px;border-radius:6px;margin-bottom:2px}#player-space .player-card h2+p+p{grid-column:1/-1;margin:8px 0 4px;color:#9bb2ba}#player-space .xp-bar{grid-column:1/-1;background:#293940;border:0;height:5px;margin:0;width:100%;border-radius:8px}.xp-progress{background:linear-gradient(90deg,#78bcae,#b4f0d9)!important;box-shadow:none}
#household-app{max-width:none;margin:0;padding:0;position:relative}#household-app>p{font-size:12px;margin-bottom:18px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin:28px 0 18px}.section-heading p{font-size:9px;letter-spacing:.17em;color:var(--accent);margin:0 0 6px}.section-heading h2{font-size:26px;font-weight:650;margin:0}#household-app .v1-status:empty{display:none}.v1-status:not(:empty){padding:12px;border-left:2px solid var(--accent);background:#19312b;border-radius:5px;font-size:13px;color:var(--accent);position:sticky;top:8px;z-index:5}
.manage-menu{margin:-50px 0 30px auto;width:max-content;max-width:100%;position:relative;z-index:4}.manage-menu summary{font-size:11px;color:var(--muted);cursor:pointer;border:1px solid var(--line);padding:10px 12px;border-radius:10px;list-style:none}.manage-menu summary:after{content:' +';color:var(--accent)}.manage-menu[open]{width:100%;margin:0 0 18px}.utility-actions{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.utility-actions button{font-size:12px;min-height:44px;padding:10px 13px}.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.category-card{padding:13px 10px;text-align:left;display:flex;flex-direction:column;gap:8px;min-height:111px;background:#111d24;border:1px solid #25363e}.category-card svg{width:24px;height:24px;fill:none;stroke:var(--blue);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.category-card span{font-size:11px;font-weight:600;line-height:1.3}.category-card small{font-size:9px;color:var(--muted);margin-top:auto}.category-card[aria-pressed=true]{background:linear-gradient(140deg,#24483d,#142b29);border-color:#94d7bf}.category-card[aria-pressed=true] svg,.category-card[aria-pressed=true] span{color:var(--accent);stroke:var(--accent)}
.quest-section{margin:25px 0 30px}.quest-heading{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:6px;gap:10px}.quest-heading h3{font-size:16px;font-weight:600;margin:0}.quest-heading>span{font-size:8px;color:var(--muted);letter-spacing:.09em}.quest-list{display:grid;gap:8px}.v1-task{display:flex;gap:0;background:#111e26;border:1px solid #243740;border-radius:13px;overflow:hidden;margin:0}.v1-task button:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:1;text-align:left;min-width:0;border:0;background:none;padding:16px 14px;min-height:66px}.v1-task button:first-child>span{font-size:13px;font-weight:550;line-height:1.45}.v1-task b{font-size:18px;font-weight:650;letter-spacing:-.04em;color:var(--accent);display:flex;flex-direction:column;align-items:center;min-width:35px}.v1-task small{font-size:8px;letter-spacing:.15em;color:#91b3aa}.v1-task button+button{border:0;border-left:1px solid var(--line);border-radius:0;background:transparent;min-width:44px;color:var(--muted)}.v1-task:hover{border-color:#54736e}.v1-task:has(button:active){background:#244238}
#rpg-navigation{position:fixed;bottom:max(12px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:calc(100% - 28px);max-width:430px;display:grid;grid-template-columns:repeat(3,1fr);padding:5px;border:1px solid #3b5157;background:#101b22f5;backdrop-filter:blur(18px);border-radius:18px;z-index:30;box-shadow:0 12px 40px #0008}#rpg-navigation button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;background:none;border:0;font-size:10px;color:#8ba1a9;min-height:54px;padding:6px}#rpg-navigation span{font-size:21px;line-height:24px}#rpg-navigation [aria-current=page]{color:var(--accent);background:#28463d70}
.member-roster{display:grid;gap:9px}.member-row{display:flex;align-items:center;gap:12px;padding:15px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.member-initial{display:grid;place-items:center;width:40px;height:44px;border:1px solid #48616a;background:#23363f;border-radius:12px;color:var(--accent);font-size:20px}.member-row strong{font-size:14px}.member-row p{font-size:11px;margin:4px 0 0}.member-row b{margin-left:auto;font-size:12px;color:var(--accent);white-space:nowrap}
.v1-card{background:var(--surface);border:1px solid var(--line);padding:17px;border-radius:16px;margin:12px 0}.v1-card p{font-size:13px;color:#b4c6cc;line-height:1.8}.v1-card button{min-height:44px;padding:10px 14px;font-size:12px}.v1-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:16px}.v1-actions strong{font-size:14px;font-weight:550}.v1-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}.v1-calendar>span{font-size:10px;padding:8px;color:var(--muted)}.v1-calendar button{min-height:44px;min-width:0;font-size:11px;padding:2px;border:0;background:#172832}.v1-calendar button[aria-pressed=true]{background:var(--accent);color:#102a23}.date-banner{margin-top:16px;border:1px solid #7d7150;background:#302b1d;padding:12px;border-radius:12px;font-size:12px}.date-banner button{margin-top:8px;padding:8px;min-height:44px}
#v1-sheet{color:var(--ink);background:#111e26;border:1px solid #476269;border-radius:24px;padding:24px;width:min(94vw,460px);max-height:85svh;overflow:auto;box-shadow:0 20px 80px #0009}#v1-sheet::backdrop{background:#02090dcc;backdrop-filter:blur(7px)}#v1-sheet h2{font-size:24px}#v1-sheet label,#household-app>label{display:block;font-size:12px;color:var(--muted);margin:15px 0}input,select{background:#0c171e!important;color:var(--ink)!important;border:1px solid #3b525c!important;border-radius:10px;padding:13px;min-height:48px;width:100%;margin:7px 0;font-size:16px}#v1-sheet button{padding:12px 16px;min-height:48px;margin:5px}#v1-sheet form>button:first-of-type{margin-left:0}#v1-sheet form>button:last-child{display:block;width:100%;background:var(--accent);color:#102e25;font-weight:650;margin:20px 0 0}#v1-sheet>button:last-child{width:100%;margin:12px 0 0}#login-screen{padding-top:80px}.login-card{background:var(--surface)!important;border:1px solid var(--line)!important;box-shadow:none!important}
@media(min-width:850px){body{padding:0 35px 110px}#app{display:grid;grid-template-columns:390px minmax(0,1fr);gap:0 48px}.brand-bar,.preview-note{grid-column:1/-1}.brand-bar{height:86px}#player-space{grid-column:1;align-self:start;position:sticky;top:20px;margin-top:30px}#household-app{grid-column:2;grid-row:3}.category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}#player-space[data-view=home] .avatar-container{height:420px}body[data-pane=history] #household-app{grid-column:1/-1;max-width:760px;width:100%;justify-self:center}body[data-pane=household] #player-space{position:static;grid-column:1/-1}body[data-pane=household] #household-app{grid-column:1/-1;grid-row:auto}body[data-pane=household] .member-roster{grid-template-columns:repeat(2,1fr)}}
@media(max-width:450px){#player-space[data-view=household] .players{grid-template-columns:repeat(2,minmax(0,1fr))}#player-space[data-view=household] .avatar-container{height:205px}#player-space[data-view=household] .player-card{padding:10px!important;display:block}#player-space[data-view=household] .player-card h2{font-size:20px}#player-space[data-view=household] .player-card p{font-size:10px;margin:9px 0}#player-space[data-view=household] .player-card:before{display:none}#v1-sheet{margin: auto auto 12px;border-radius:24px 24px 14px 14px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.player-card::before { background: linear-gradient(90deg, transparent, #a5f0d5, transparent); }

/* History only: keep occurrence identity, attribution and cancellation legible. */
.v1-history-entry h3{font-size:16px;line-height:1.4;margin:8px 0}
.v1-history-entry time,.v1-history-entry small{font-size:12px;color:var(--muted)}
.v1-history-entry p{margin:4px 0}
.v1-history-entry .v1-history-xp{color:var(--accent);font-weight:700;margin:12px 0}
.v1-history-entry[data-cancelled=true] .v1-history-xp{color:var(--muted)}
.v1-history-entry>strong{font-size:12px;color:var(--muted)}

/* Date + beneficiary filters and read-only daily completion totals. */
.v1-history-person{display:flex;flex-direction:column;gap:8px;margin:16px 0;color:var(--muted);font-size:13px}
.v1-history-person select{width:100%;min-height:46px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);font:inherit;font-size:16px}
.v1-history-summary{margin:16px 0;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
.v1-history-summary h3{font-size:15px;margin:0 0 12px}
.v1-history-summary ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;list-style:none;padding:0;margin:0 0 12px}
.v1-history-summary li{display:flex;flex-wrap:wrap;gap:6px 12px;justify-content:space-between;padding:10px;background:#ffffff04;border-radius:10px;font-size:13px;overflow-wrap:anywhere}
.v1-history-summary strong{color:var(--accent);white-space:nowrap}
.v1-history-summary small,.v1-history-summary p{color:var(--muted);font-size:12px;line-height:1.6}

/* Reserve scroll space without changing the navigation's appearance. */
body{min-height:100dvh;padding-bottom:max(110px,var(--nav-clearance,110px),calc(100px + env(safe-area-inset-bottom)))}
html{scroll-padding-bottom:max(110px,var(--nav-clearance,110px))}
.history-day-modes{display:flex;gap:8px;margin:18px 0 8px}
.history-day-modes button{flex:1;min-height:46px;padding:10px 14px}
.history-day-modes [aria-pressed=true]{background:var(--accent);color:#102a23;border-color:var(--accent)}
/* Fixed 2D composition: feet-level companion/ground, side equipment, upper aerial. */
#player-space[data-view=household] .reward-portraits{inset:0;width:100%;display:block}
#player-space[data-view=household] .reward-portraits[hidden]{display:none}
#player-space[data-view=household] .player-avatar{padding-right:0;width:76%;margin-inline:12%}
#player-space[data-view=household] .reward-portrait{position:absolute;max-height:none;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 5px 5px #0008)}
#player-space[data-view=household] .reward-portrait[data-slot=equipment]{right:0;bottom:5%;width:32%;height:55%}
#player-space[data-view=household] .reward-portrait[data-slot=ground]{right:0;bottom:1%;width:38%;height:27%}
#player-space[data-view=household] .reward-portrait[data-slot=companion]{left:0;bottom:0;width:42%;height:43%}
#player-space[data-view=household] .reward-portrait[data-slot=aerial]{right:0;top:7%;width:30%;height:26%;object-position:center}

@media(min-width:850px) and (max-height:800px){#player-space{position:static}}
