:root{color-scheme:light;--bg:#f4f3ef;--surface:#fff;--line:#deddd8;--ink:#242431;--muted:#626571;--accent:#6552d8;--violet:#6552d8;--rail:#1e2230;--good:#207960;--bad:#af3346}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.6 Inter,"Segoe UI",Tahoma,system-ui,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer;min-height:40px;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:8px;padding:8px 13px;font-weight:600}button:hover{border-color:var(--accent);background:#f3f0ff}button:disabled{opacity:.45;cursor:not-allowed}button.primary{background:var(--accent);color:white;border-color:var(--accent)}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #aea2f4;outline-offset:3px}input,select,textarea{width:100%;min-height:44px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:10px 12px}input[type=checkbox]{width:22px;min-height:22px;accent-color:var(--accent)}input[type=file]{font-size:12px}textarea{min-height:100px}label{display:grid;gap:7px;font-size:13px;color:var(--muted);align-content:start}h1,h2,h3,p{margin-top:0}h1{font-size:28px;line-height:1.25;letter-spacing:-.6px;margin:6px 0 0;font-weight:750}h2{font-size:20px;line-height:1.4;letter-spacing:-.3px}small,.muted{color:var(--muted)}.shell{display:grid;grid-template-columns:230px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--rail);color:#f5f3ff;padding:26px 15px;position:sticky;top:0;height:100vh;overflow:auto}.brand{font-size:25px;letter-spacing:2.5px;font-weight:900;padding:0 12px}.eyebrow{text-transform:uppercase;font-size:10px;letter-spacing:1.8px;font-weight:700;color:var(--accent);margin:7px 0 24px}.sidebar .eyebrow{color:#b4aed5;padding:0 12px}.nav{display:grid;gap:3px}.nav button{border:none;background:transparent;color:#bcc1d2;text-align:start;border-radius:6px;font-weight:500;min-height:37px;padding:8px 12px}.nav button:hover{background:#2d3244;color:white}.nav button.active{background:#6d5dde;color:white;box-shadow:inset 3px 0 #c2b8ff}.nav-group{font-size:10px;text-transform:uppercase;letter-spacing:1.4px;color:#8890a6;padding:15px 12px 6px;font-weight:700}.main{width:100%;max-width:1680px;padding:28px 36px;min-width:0;margin:0 auto}.top{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:76px;margin-bottom:26px;border-bottom:1px solid var(--line);padding-bottom:24px}.top small{letter-spacing:1.5px;font-size:10px;font-weight:700}.actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:24px;margin-bottom:20px}.overview-hero{padding:24px 28px;margin-bottom:24px;border-radius:12px;background:#e9e4fc;border-inline-start:4px solid var(--accent)}.overview-hero h2{font-size:27px;max-width:700px;margin:6px 0 10px}.overview-hero .eyebrow{margin-bottom:8px}.overview-hero p{margin:0;color:#555166}.metric-grid,.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-bottom:24px}.metric{border:1px solid var(--line);background:white;padding:20px;border-radius:10px;display:flex;flex-direction:column;gap:12px}.metric span{color:var(--muted);font-size:12px}.metric strong,.stat{font-size:32px;line-height:1.15;letter-spacing:-1px;font-weight:750;font-variant-numeric:tabular-nums}.workspace-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:20px}.game-meter{display:grid;grid-template-columns:1fr auto;gap:8px;margin:17px 0}.game-meter progress{grid-column:1/-1;width:100%;height:8px;appearance:none;border:none;border-radius:5px;overflow:hidden}.game-meter progress::-webkit-progress-bar{background:#eeedf3}.game-meter progress::-webkit-progress-value{background:var(--accent);border-radius:5px}.game-meter progress::-moz-progress-bar{background:var(--accent)}.table-wrap{overflow:auto;padding:0}table{width:100%;min-width:640px;border-collapse:collapse;text-align:start}th{text-align:start;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;background:#f9f8fb;white-space:nowrap}td,th{padding:16px 20px;border-bottom:1px solid #eeedf1;vertical-align:middle}tr:last-child td{border-bottom:none}tbody tr:hover{background:#faf9ff}td button{min-height:34px;font-size:12px;white-space:nowrap;padding:7px 11px}.record-cell{display:flex;align-items:center;gap:10px;min-width:180px}.record-avatar{width:34px;height:34px;flex:none;display:grid;place-items:center;background:#ebe7fd;color:#594ab1;border-radius:9px;font-size:14px;font-weight:750;overflow:hidden}.record-avatar img{width:100%;height:100%;object-fit:cover}.mono,code{font-family:ui-monospace,SFMono-Regular,monospace;font-size:11px;overflow-wrap:anywhere;max-width:100%;color:var(--muted)}td .mono{margin-top:5px}.badge{display:inline-flex;font-size:11px;line-height:1.4;background:#ece8fc;color:#5a48b0;border:1px solid #dcd6f5;padding:5px 9px;border-radius:5px}.error{padding:15px;background:#fff0f1;color:#982235;border:1px solid #e8bec5;border-radius:8px;margin-bottom:18px;overflow-wrap:anywhere}.good{color:var(--good)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px}.full{grid-column:1/-1}.login{max-width:450px;margin:8vh auto;padding:35px;border-top:4px solid var(--accent)}.login form{display:grid;gap:18px;margin-bottom:20px}.banner{width:100%;aspect-ratio:16/5;object-fit:cover;margin:15px 0;border-radius:8px;background:#efedf6}.dialog{width:min(960px,94vw);max-height:88vh;overflow:auto;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:14px;padding:28px;box-shadow:0 24px 80px #17213935}.dialog::backdrop{background:#1318298f}.dialog header{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:24px}.dialog header h2{margin:0}.rule{background:#f5f3fc;color:#59526f;border-inline-start:3px solid var(--accent);padding:13px 16px;margin:18px 0;font-size:12px}.empty{padding:38px;text-align:center;color:var(--muted)}.workspace-toolbar{display:flex;align-items:end;gap:12px;margin-bottom:10px}.workspace-toolbar label{flex:1;max-width:680px}.workspace-toolbar button{height:44px}.toolbar{display:flex;gap:10px;margin-bottom:18px;flex-wrap:wrap}.toolbar input{flex:1;min-width:180px}.skeleton{padding:40px;border:1px solid var(--line);background:white;border-radius:12px;color:var(--muted);min-height:120px}.detail-list{display:grid;gap:8px}.detail-list>div,.property{display:flex;justify-content:space-between;gap:24px;border-bottom:1px solid #eeedf2;padding:13px 0;overflow-wrap:anywhere}.property>span{color:var(--muted);font-size:12px;min-width:100px}.property>strong{font-weight:500;max-width:70%;text-align:end}.record-section{border:1px solid var(--line);border-radius:8px;padding:13px 17px;margin:12px 0;overflow-wrap:anywhere}.record-section summary{font-weight:650;cursor:pointer;padding:4px 0;color:#5449a2}.record-section .record-section{background:#faf9fc}.record-hero{display:flex;align-items:center;gap:14px;background:#f7f5fd;padding:18px;border-radius:10px;margin-bottom:20px}.record-hero .record-avatar{width:54px;height:54px;font-size:24px}.detail-tabs{display:flex;gap:8px;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:20px}.record-actions{display:flex;gap:10px;flex-wrap:wrap;padding-top:22px;margin-top:20px;border-top:1px solid var(--line)}.member-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding:14px 0}.member-row strong{min-width:140px}.pager{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-top:18px}.pager>span{margin-inline-end:auto;font-size:12px;color:var(--muted)}.game-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border:1px solid var(--line);border-radius:8px;padding:18px}.game-checks label{display:flex;align-items:center;justify-content:space-between}.footer{font-size:12px;color:var(--muted);margin:24px 0}.skip-link{position:absolute;top:-80px;left:10px;background:white;padding:10px;z-index:100}.skip-link:focus{top:10px}@media(max-width:1100px){.main{padding:24px}.shell{grid-template-columns:200px minmax(0,1fr)}.workspace-split{grid-template-columns:1fr}}@media(max-width:780px){.shell{display:block}.sidebar{height:auto;position:relative;padding:16px}.sidebar .eyebrow{margin-bottom:10px}.nav{display:flex;overflow:auto;padding-bottom:8px;gap:6px}.nav button{white-space:nowrap}.nav-group{display:none}.main{padding:20px 14px}.top{align-items:flex-start;flex-direction:column;gap:14px}.top h1{font-size:25px}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.dialog{padding:20px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric strong{font-size:28px}.overview-hero{padding:22px}.overview-hero h2{font-size:23px}.game-checks{grid-template-columns:repeat(2,minmax(0,1fr))}.property{gap:12px}.workspace-toolbar{align-items:end}.workspace-toolbar input{min-width:0}.member-row code{flex-basis:100%}.record-actions button{flex:1;min-width:130px}}@media(prefers-reduced-motion:no-preference){button{transition:background .15s,border-color .15s}.dialog[open]{animation:enter .18s ease-out}@keyframes enter{from{transform:translateY(8px);opacity:.5}to{transform:translateY(0);opacity:1}}}

.season-list{display:grid;gap:14px}.season-row{display:flex;align-items:center;justify-content:space-between;gap:20px}.season-row h3{margin:10px 0}.season-form{display:grid;gap:20px}.season-reward-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding-top:14px}.season-reward-editor{border:1px solid var(--border,#d0ced6);border-radius:12px;padding:14px;min-width:0}.season-tier-list,.season-goal-list{display:grid;gap:10px}.season-panels section[hidden]{display:none}.season-dialog{max-width:880px}.season-heading .record-actions{margin-top:18px}.season-row .record-actions{flex-shrink:0}.season-rewards>.field{max-width:260px}@media(max-width:650px){.season-row{align-items:stretch;flex-direction:column}.season-reward-pair{grid-template-columns:1fr}.season-row .record-actions{flex-shrink:1}}
/* Readable, responsive ENDURE conversation and community workspaces. */
.conversation-workspace{display:grid;grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:20px;align-items:start}.conversation-directory,.conversation-detail{background:var(--surface);border:1px solid var(--line);border-radius:16px;min-width:0;overflow:hidden}.conversation-directory{position:sticky;top:20px}.conversation-filters{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:18px;border-bottom:1px solid var(--line)}.conversation-filters>label:first-child,.conversation-filters>button{grid-column:1/-1}.conversation-filters label{min-width:0}.conversation-list{max-height:65vh;overflow:auto;scrollbar-gutter:stable}.conversation-row{width:100%;border:0;border-radius:0;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;text-align:start;padding:16px;min-width:0}.conversation-row[aria-pressed=true]{background:color-mix(in srgb,var(--accent) 10%,var(--surface));box-shadow:inset 3px 0 var(--accent)}.conversation-avatar{width:44px;height:44px;flex:0 0 44px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent);font-size:20px;font-weight:750;border-radius:14px;overflow:hidden}.conversation-avatar img{width:100%;height:100%;object-fit:cover}.conversation-row-copy{min-width:0;display:grid;gap:2px}.conversation-row-copy strong,.conversation-heading h2{overflow-wrap:anywhere}.conversation-row-copy small{color:var(--muted);font-weight:400}.conversation-pager{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:14px;border-top:1px solid var(--line)}.conversation-pager span{font-size:12px;flex:1}.conversation-heading{display:flex;align-items:center;gap:14px;padding:22px;border-bottom:1px solid var(--line);margin:0}.conversation-heading>div{min-width:0}.conversation-heading h2{font-size:20px;margin:0}.conversation-heading p{margin:3px 0 0}.conversation-detail{min-height:520px}.conversation-empty{padding:36px 24px;text-align:center;max-width:540px;margin:auto}.conversation-empty h2{font-size:21px}.conversation-access{max-width:560px;margin:28px auto;padding:0 24px;display:grid;gap:16px}.conversation-access p{margin:0}.conversation-thread-tools{display:flex;gap:8px;flex-wrap:wrap;padding:16px 20px;border-bottom:1px solid var(--line)}.conversation-timeline{display:flex;flex-direction:column;gap:14px;padding:20px;background:var(--bg)}.conversation-message{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px;min-width:0;overflow-wrap:anywhere}.conversation-message>header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.conversation-message time{color:var(--muted);font-size:12px}.message-copy{white-space:pre-wrap;line-height:1.8;margin:10px 0 0;unicode-bidi:plaintext}.conversation-message blockquote{border-inline-start:3px solid var(--accent);padding:8px 12px;margin:10px 0;background:var(--bg);border-radius:4px}.conversation-message blockquote p{margin:3px 0 0}.message-deleted{color:var(--muted);border-style:dashed}.message-remove{margin-top:12px;color:var(--bad);font-size:12px;padding:4px 10px;min-height:32px}.conversation-media{display:grid;gap:10px;margin-top:12px}.conversation-media:empty{display:none}.conversation-media img,.conversation-media video{max-width:100%;width:auto;max-height:420px;object-fit:contain;border-radius:10px;background:var(--bg)}.conversation-media audio{width:100%;max-width:460px}.conversation-media button{justify-self:start}.conversation-earlier{display:block;margin:16px auto}.deletion-facts{display:flex;flex-wrap:wrap;gap:12px;padding:16px 22px;background:var(--bg);font-size:12px}.deletion-facts p{margin:0}.conversation-back{display:none}.community-filters{display:grid;grid-template-columns:minmax(160px,1fr) minmax(130px,200px) auto;gap:14px;align-items:end;margin-bottom:20px}.community-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,290px),1fr));gap:16px}.community-card{background:var(--surface);border:1px solid var(--line);padding:20px;border-radius:16px;display:flex;flex-direction:column;gap:12px;min-width:0}.community-card .conversation-heading{padding:0;border:0}.community-card p{margin:0;overflow-wrap:anywhere}.community-card>button:first-of-type{margin-top:auto}.community-dialog{max-width:800px}.community-dialog .conversation-heading{padding:10px 0 20px}.community-dialog .form-grid{margin:24px 0}.community-members{border-top:1px solid var(--line);padding-top:20px}.community-member{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.community-member>div{min-width:0;display:grid;flex:1;overflow-wrap:anywhere}.community-member>button{flex-shrink:0}.dialog form{min-width:0}.dialog code{overflow-wrap:anywhere;white-space:normal}
@media(max-width:1000px){.conversation-workspace{grid-template-columns:minmax(260px,300px) minmax(0,1fr);gap:12px}}
@media(max-width:760px){.conversation-workspace{display:block}.conversation-directory{position:static}.conversation-detail{display:none}.conversation-selected .conversation-directory{display:none}.conversation-selected .conversation-detail{display:block}.conversation-back{display:block;margin:12px 18px}.conversation-list{max-height:none}.conversation-filters{grid-template-columns:1fr 1fr}.community-filters{grid-template-columns:1fr}.community-member{flex-wrap:wrap}.conversation-message>header{display:grid}.conversation-timeline{padding:12px}.conversation-heading{padding:18px}.community-dialog .form-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.conversation-workspace *, .community-workspace *{scroll-behavior:auto}}
.conversation-message.conversation-other{align-self:flex-end;width:88%;background:color-mix(in srgb,var(--accent) 5%,var(--surface))}.conversation-reactions{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.message-facts{font-size:12px;color:var(--muted);margin-top:14px;border-top:1px solid var(--line);padding-top:8px}.message-facts summary{cursor:pointer}.message-facts p{margin:8px 0;overflow-wrap:anywhere}.message-facts:not([open])>p{display:none}

[hidden]{display:none!important}

/* Premade profile artwork uses the same geometry as Flutter. */
.profile-frame-preview { margin:16px auto; width:240px; max-width:100%; text-align:center; padding:20px; border-radius:16px; background:#111722; color:#dce5f3; }
.profile-frame-preview svg { display:block; width:100%; height:auto; overflow:visible; }
.profile-frame-preview figcaption { margin-top:12px; font-size:13px; }
.frame-glint { animation:frame-glint 3.2s ease-in-out infinite alternate; }
@keyframes frame-glint { from { opacity:.36; } to { opacity:1; } }
@media (prefers-reduced-motion:reduce) { .frame-glint { animation:none; } }
