@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@500;600;700&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#10121b;--panel:#191c29;--panel2:#222636;--panel3:#2b3042;--border:#353849;--ink:#ebe8e3;--muted:#9b9aa8;--gold:#e0b878;--gold2:#a77c46;--red:#ce737f;--green:#74bca6;--blue:#8caccf;--purple:#b8a6dd;font-family:'DM Sans',system-ui,sans-serif;font-size:14px}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% -400px,#37304b 0,transparent 55%),var(--bg);color:var(--ink)}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.44;cursor:default}a{color:var(--gold)}h1,h2,h3,h4{font-family:Cinzel,Georgia,serif;letter-spacing:.025em}h1,h2,h3,h4,p{margin:0}small{color:var(--muted)}.muted{color:var(--muted)}.gold{color:var(--gold)}.red{color:var(--red)}.green{color:var(--green)}.inline{display:inline}.spaced{margin-top:12px}.hidden{display:none!important}.loading-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;color:var(--muted)}.sigil{font-size:60px;color:var(--gold)}.loading-screen h1{color:var(--ink);font-size:32px;letter-spacing:.2em}.logo{font-family:Cinzel,Georgia,serif;letter-spacing:.18em;color:var(--gold);font-size:18px;font-weight:700}.crown{font-size:24px;margin-right:8px;color:var(--gold)}.app{min-height:100vh;display:flex;flex-direction:column}.topbar{height:66px;padding:0 23px;display:flex;align-items:center;justify-content:space-between;background:#141621f0;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10;gap:12px;backdrop-filter:blur(12px)}.topbar .brand{display:flex;align-items:center;white-space:nowrap}.top-right{display:flex;align-items:center;gap:14px;font-size:12px}.top-right strong{color:var(--gold)}.top-right .icon-btn{margin-left:2px}.layout{display:grid;grid-template-columns:235px minmax(300px,1fr) minmax(320px,390px);gap:14px;max-width:1720px;width:100%;margin:0 auto;padding:15px;min-height:calc(100vh - 66px)}.leftside{min-width:0;display:flex;flex-direction:column;gap:12px}.panel{background:linear-gradient(140deg,#1b1d2b,#171a26);border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:0 8px 30px #07070c30}.pad{padding:17px}.panel-header{padding:15px 17px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:8px}.panel-header h3{font-size:14px}.player-card{text-align:center}.avatar{border:1px solid #756243;background:#29293a;color:var(--gold);width:58px;height:58px;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;border-radius:13px;font-family:Cinzel,Georgia,serif;font-weight:bold;font-size:22px;flex-shrink:0}.avatar img{width:100%;height:100%;object-fit:cover}.player-card .avatar{width:78px;height:78px;margin-bottom:10px}.player-card h3{font-size:14px}.eyebrow{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}.subline{font-size:12px;margin-top:4px;color:var(--muted)}.meter{height:7px;background:#0d0f18;border-radius:99px;overflow:hidden;border:1px solid #262837;margin-top:5px}.meter>b{display:block;height:100%;border-radius:99px;background:var(--green)}.meter.xp>b{background:var(--gold)}.meter-label{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;margin-top:12px}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:13px}.metric{padding:10px 6px;background:#252738;border:1px solid #33364a;border-radius:7px;text-align:center}.metric b{display:block;font-size:16px;color:var(--gold)}.metric small{font-size:10px}.nav-list{padding:8px;display:grid;gap:2px}.nav-list button{width:100%;background:transparent;border:0;text-align:left;padding:10px 12px;color:var(--muted);border-radius:7px;font-size:12px}.nav-list button:hover,.nav-list button.active{color:var(--ink);background:var(--panel3)}.nav-list button.active{border-left:2px solid var(--gold)}.online-panel{min-height:115px}.online-header{display:flex;align-items:center;gap:7px;font-size:11px;text-transform:uppercase;letter-spacing:.07em}.dot{width:7px;height:7px;background:var(--green);display:inline-block;border-radius:100%}.online-list{padding:12px;display:flex;flex-wrap:wrap;gap:7px;max-height:220px;overflow:auto}.online-person{background:#252738;border:1px solid var(--border);border-radius:100px;color:var(--ink);font-size:11px;padding:6px 10px}.online-person:hover{border-color:var(--gold)}.chat{display:flex;flex-direction:column;min-height:calc(100vh - 97px);height:calc(100vh - 97px);position:sticky;top:81px}.chat-head{border-bottom:1px solid var(--border);padding:18px 19px 10px}.chat-head h2{font-size:20px;margin-bottom:5px}.chat-head p{font-size:12px;color:var(--muted)}.tabs{display:flex;gap:5px;flex-wrap:wrap;margin-top:15px}.tabs button{padding:8px 13px;color:var(--muted);border:1px solid transparent;border-radius:7px;background:transparent;font-size:12px}.tabs button.active{border-color:#6e5b3e;color:var(--gold);background:#3d302324}.chat-messages{flex:1;overflow-y:auto;padding:17px 18px;display:flex;flex-direction:column;gap:12px;scrollbar-color:#484250 transparent}.msg{display:grid;grid-template-columns:32px 1fr;gap:10px}.msg .avatar{width:31px;height:31px;border-radius:8px;font-size:11px}.msg-row{display:flex;justify-content:space-between;gap:8px;align-items:center}.msg-author{font-weight:700;font-size:12px;border:0;background:transparent;color:var(--gold);padding:0}.msg-time{color:var(--muted);font-size:10px;white-space:nowrap}.msg-body{font-size:13px;line-height:1.5;color:#d5d4dc;white-space:pre-wrap;overflow-wrap:anywhere;margin-top:3px}.msg.system{border-left:2px solid #8b6d47;background:#30291d6b;border-radius:4px;padding:10px;display:block}.msg.system .msg-body{color:#cdbb9f}.report{background:none;border:0;color:#777486;padding:0 2px;font-size:10px}.chat-compose{border-top:1px solid var(--border);padding:13px 15px}.compose-form{display:flex;gap:8px}.compose-form input{flex:1;min-width:0}.control{width:100%;border:1px solid #3b4054;background:#10131e;color:var(--ink);border-radius:7px;padding:10px 11px;outline:none}.control:focus{border-color:var(--gold2);box-shadow:0 0 0 2px #b48e5630}.btn{border:1px solid #62503a;border-radius:7px;padding:10px 13px;background:#8e6a40;color:#fff6e7;font-weight:700;font-size:12px;white-space:nowrap}.btn:hover{filter:brightness(1.12)}.btn.secondary{background:#282b3a;color:#e0d9cb;border-color:#45465a}.btn.danger{background:#6b3642;border-color:#9e5661}.btn.subtle{background:transparent;color:var(--gold);border-color:#655237}.btn.tiny{padding:6px 9px;font-size:11px}.action-pane{min-width:0;max-height:calc(100vh - 97px);overflow-y:auto;position:sticky;top:81px;scrollbar-color:#484250 transparent}.action-pane>.panel{min-height:500px}.content{padding:16px;display:grid;gap:14px}.info{padding:13px;background:#262837;border:1px solid #36394d;border-radius:9px;line-height:1.55}.info.warn{border-color:#674a42;background:#3b252a}.info.good{border-color:#43625a;background:#20382e}.info p{font-size:12px;color:var(--muted);margin-top:5px}.section-title{color:var(--gold);font-size:12px;text-transform:uppercase;letter-spacing:.09em;font-weight:700;margin:5px 0}.item{background:#232635;border:1px solid #353849;padding:13px;border-radius:9px;display:flex;gap:11px;justify-content:space-between;align-items:center}.item.vertical{display:block}.item:hover{border-color:#514b4b}.item h4{font-size:12px;font-family:'DM Sans',sans-serif}.item p{font-size:11px;color:var(--muted);margin-top:5px;line-height:1.45}.item .actions{display:flex;flex-wrap:wrap;gap:5px;justify-content:flex-end}.chip{display:inline-flex;gap:5px;align-items:center;color:#c4bdaf;background:#303345;border:1px solid #414457;border-radius:100px;padding:3px 8px;font-size:10px;white-space:nowrap}.chip.gold{color:var(--gold);border-color:#665034;background:#2c251e}.row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.between{display:flex;align-items:center;justify-content:space-between;gap:8px}.stack{display:grid;gap:9px}.form-card{display:grid;gap:9px;padding:14px;border:1px solid var(--border);background:#242636;border-radius:9px}.form-card label{font-size:11px;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.field{display:grid;gap:5px}.pill-tabs{display:flex;gap:6px;flex-wrap:wrap}.pill-tabs .btn{font-size:11px}.progress-timer{font-variant-numeric:tabular-nums;color:var(--gold)}.empty{color:var(--muted);padding:20px 5px;text-align:center;font-size:12px}.grave{border:1px solid #51445a;background:#272333;border-radius:9px;padding:13px}.grave h4{font-size:13px;margin-bottom:5px}.kv{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid #353749;font-size:12px}.kv:last-child{border-bottom:0}.kv label{color:var(--muted)}.entry{padding:9px 0;border-bottom:1px solid #303344;font-size:12px}.entry:last-child{border-bottom:0}.auth-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(circle at 75% 10%,#38304760,transparent 40%),radial-gradient(circle at 5% 90%,#372b2360,transparent 45%)}.auth-card{width:min(100%,465px);padding:30px;border:1px solid #61503d;border-radius:16px;background:linear-gradient(150deg,#242332,#171821);box-shadow:0 25px 80px #06050a99}.auth-card h1{font-size:27px;letter-spacing:.14em;color:var(--gold);text-align:center}.auth-card p{line-height:1.6;color:var(--muted);text-align:center;margin:8px 0 22px}.auth-card .sigil{text-align:center;font-size:47px}.auth-card form{display:grid;gap:12px}.auth-card .btn{padding:13px}.auth-toggle{margin-top:14px;text-align:center}.link-button{background:none;border:0;color:var(--gold);text-decoration:underline}.divider{height:1px;background:var(--border);margin:12px 0}.hint{font-size:11px;color:var(--muted);line-height:1.45}.toast-stack{position:fixed;bottom:22px;right:22px;z-index:100;display:grid;gap:8px}.toast{border:1px solid #736044;background:#242432;color:var(--ink);max-width:360px;padding:13px 16px;border-radius:9px;box-shadow:0 15px 45px #0009;font-size:12px;line-height:1.4}.toast.error{border-color:var(--red)}#toast-stack{position:fixed;right:15px;bottom:15px;z-index:200;display:grid;gap:8px}.modal-backdrop{position:fixed;inset:0;z-index:30;background:#080a10c7;display:flex;align-items:center;justify-content:center;padding:20px}.modal{background:#202332;max-width:440px;width:100%;max-height:90vh;overflow:auto;border:1px solid #62513d;border-radius:12px;padding:20px}.modal-close{float:right;color:var(--muted);background:none;border:0;font-size:24px}.modal h2{font-size:18px;color:var(--gold);margin:12px 0}.hidden-phone{display:block}.mobile-action-toggle{display:none}.list-note{font-size:11px;color:var(--muted);margin-top:7px}.death-screen{margin:40px auto;max-width:580px}.death-header{text-align:center}.death-header .sigil{color:var(--red)}.death-header h1{font-size:23px;letter-spacing:.14em}.death-header p{color:var(--muted);font-size:13px;line-height:1.6;margin:12px 0}.death-screen .panel{padding:23px}.strong{font-weight:700}.value{text-align:right}
@media(max-width:1100px){.layout{grid-template-columns:190px minmax(260px,1fr) minmax(300px,360px);gap:8px;padding:8px}.topbar{padding:0 12px}.pad{padding:11px}.chat{min-height:calc(100vh - 86px);height:calc(100vh - 86px);top:74px}.action-pane{top:74px;max-height:calc(100vh - 86px)}}
@media(max-width:900px){.layout{grid-template-columns:185px minmax(0,1fr);grid-template-areas:'left main' 'left other'}.leftside{grid-area:left}.chat{grid-area:main;height:570px;min-height:570px;position:static}.action-pane{grid-area:other;max-height:none;position:static}.action-pane>.panel{min-height:0}.top-right .hide-mid{display:none}}
@media(max-width:620px){.topbar{height:59px}.top-right{gap:9px}.top-right .gold{font-size:11px}.logo{font-size:16px}.crown{font-size:20px}.layout{display:flex;flex-direction:column;gap:9px;padding:9px;min-height:calc(100vh - 59px)}.leftside{order:1}.leftside>.panel.player-card,.leftside>.panel.navigation{display:none}.online-panel{min-height:0}.online-panel .panel-header{padding:8px 12px}.online-list{padding:8px;max-height:88px}.chat{order:2;height:min(69vh,640px);min-height:400px;position:static}.chat-head{padding:13px 12px 9px}.chat-head h2{font-size:17px}.chat-messages{padding:13px}.action-pane{order:3;max-height:none}.action-pane>.panel{min-height:0}.mobile-action-toggle{display:flex;gap:6px;overflow:auto;scrollbar-width:none;padding:8px;background:var(--panel);border:1px solid var(--border);border-radius:8px;position:sticky;top:59px;z-index:9;order:0}.mobile-action-toggle button{padding:8px 10px;background:#303144;border:1px solid #474559;border-radius:7px;color:var(--ink);white-space:nowrap;font-size:11px}.mobile-action-toggle button.active{color:var(--gold);border-color:var(--gold2)}.content{padding:12px}.panel-header{padding:12px}.auth-card{padding:22px}.form-grid{grid-template-columns:1fr}}
/* Realm navigation first, online roster directly beneath it. */
.leftside{display:flex;flex-direction:column;gap:12px;min-width:0}
.leftside>.player-card{order:1}
.leftside>.navigation{order:2}
.leftside>.online-panel{order:3}
@media(max-width:620px){.leftside{gap:0}}

/* Dethroned v0.1.4 progression + staff UI */
.skill-track{height:7px;border-radius:99px;background:#0c0d17;border:1px solid #414257;margin-top:8px;overflow:hidden}
.skill-track>span{height:100%;display:block;background:linear-gradient(90deg,#936d40,#e0b878);border-radius:99px}
.admin-form{margin-top:12px}.admin-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:620px){.admin-form .form-grid{grid-template-columns:1fr}}

/* v0.1.5: compact eligibility filters and readable per-action staff tools */
.pill-tabs{gap:5px;flex-wrap:wrap}
.pill-tabs .btn{white-space:normal;text-align:center}
.staff-status{font-size:12px;color:var(--ink);margin:10px 0 4px;line-height:1.6}
.admin-form h4{font-size:13px;color:var(--gold)}
.admin-form p.hint{margin:0 0 4px}
.admin-form textarea{resize:vertical}

/* Dethroned v0.1.6: full-screen godmode console */
.staff-backdrop{position:fixed;inset:0;background:#06070be8;z-index:60;padding:clamp(8px,2vw,28px);display:grid;place-items:center}
.staff-modal{width:min(1300px,100%);height:min(95vh,100%);overflow:auto;border:1px solid #6e5b3e;background:#161924;border-radius:14px;box-shadow:0 35px 100px #000b}
.staff-shell{padding:clamp(12px,2vw,26px)}
.staff-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:14px;border-bottom:1px solid #454056;flex-wrap:wrap}
.staff-header h2{font-size:19px;color:var(--gold);letter-spacing:.05em}.staff-header p{font-size:12px;color:var(--muted);margin-top:5px}
.staff-search{margin:14px 0}.staff-columns{display:grid;grid-template-columns:minmax(195px,280px) minmax(0,1fr);gap:16px;align-items:start}
.staff-player-list{max-height:58vh;overflow:auto;background:#202433;border:1px solid var(--border);padding:10px;border-radius:9px}
.staff-account{display:flex;flex-direction:column;gap:5px;text-align:left;width:100%;border:1px solid transparent;background:#292d3d;color:var(--ink);padding:12px;border-radius:7px;margin-bottom:7px}
.staff-account.selected{border-color:var(--gold);background:#483726}.staff-account .hint{font-size:11px}
.staff-editor{min-width:0;display:grid;gap:13px}.staff-summary{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center;padding:14px;background:#24283a;border:1px solid var(--border);border-radius:9px}
.staff-summary h3{font-size:17px}.staff-summary p{font-size:12px;color:var(--muted);margin-top:5px}.staff-stats{display:flex;flex-wrap:wrap;gap:5px}
.staff-group{display:grid;gap:8px;padding:12px;background:#202433;border:1px solid var(--border);border-radius:9px}
.staff-group>b{font-size:12px;color:var(--gold)}.staff-action-form{background:#272a3a;padding:18px;border-color:#775f3d;max-width:100%}.staff-action-form h3{color:var(--gold);font-size:16px}
.staff-action-form label{font-size:12px;color:#d0c6b6}.staff-action-form .btn{justify-self:start}
.staff-footer{margin-top:22px;display:grid;grid-template-columns:1fr 1fr;gap:18px}.staff-footer>section{min-width:0;background:#202433;border:1px solid var(--border);padding:12px;border-radius:8px}
@media(max-width:740px){.staff-columns{grid-template-columns:1fr}.staff-player-list{max-height:175px}.staff-footer{grid-template-columns:1fr}.staff-modal{height:100%}.staff-backdrop{padding:0}.staff-shell{padding:12px}}

/* v0.1.7 — outcome stories, sidebar timers and prisoner view */
.deed-outcome{border-radius:12px;padding:18px 17px;display:grid;gap:10px;line-height:1.6;border:1px solid #557c63;background:linear-gradient(145deg,#203e2e,#18291f);box-shadow:0 8px 28px #0003}
.deed-outcome.success{border-color:#548a68;background:linear-gradient(130deg,#244b36,#162b24)}
.deed-outcome.failure,.deed-outcome.critical{border-color:#ad5a65;background:linear-gradient(135deg,#4d2631,#2f1b25)}
.deed-outcome-heading{font-family:Cinzel,Georgia,serif;font-size:15px;font-weight:700;letter-spacing:.08em;color:#b7edca}
.deed-outcome.failure .deed-outcome-heading,.deed-outcome.critical .deed-outcome-heading{color:#ffc0c1}
.deed-outcome p{color:#f1e9e4;font-size:13px;line-height:1.65}
.deed-outcome-reward{font-size:12px;font-weight:700;color:#c4ebd1;background:#101d17b0;border-radius:7px;padding:7px 10px;width:fit-content}
.deed-outcome.failure .deed-outcome-reward,.deed-outcome.critical .deed-outcome-reward{color:#ffb6bb;background:#2c1419b0}
.nav-timer{display:inline-flex;float:right;margin-left:4px;padding:1px 5px;color:#ddbd82;font-size:10px;background:#403321;border:1px solid #685035;border-radius:5px;line-height:17px}
.mobile-action-toggle .nav-timer{float:none;display:block;text-align:center;margin-left:0}

/* Dethroned v0.1.8: safe BBCode, editor helpers, stackable animated name/chat effects */
.bb-content{overflow-wrap:anywhere;white-space:pre-wrap;min-width:0;line-height:1.6}
.bb-content img.bb-image{display:block;max-width:min(100%,540px);max-height:400px;object-fit:contain;border:1px solid #5f5265;border-radius:8px;margin:7px 0;background:#111421}
.bb-quote{margin:6px 0;padding:8px 12px;background:#141722;border-left:3px solid var(--gold);border-radius:4px}
.bb-code{display:inline-block;background:#111520;color:#acd5e0;padding:3px 6px;border:1px solid #374158;border-radius:4px;white-space:pre-wrap;max-width:100%}
.bb-content a{color:#9dcaff;text-decoration:underline;text-underline-offset:2px}
.bb-rainbow{background:linear-gradient(110deg,#ff888e,#ffc571,#feee88,#8aebad,#82c3ff,#d6a0ff,#ff888e);background-size:350% 100%;-webkit-background-clip:text;background-clip:text;color:transparent!important;animation:bb-rainbow-shift 4s linear infinite}
.bb-glow{animation:bb-glow-pulse 2.3s ease-in-out infinite;filter:drop-shadow(0 0 3px #f3e5ff)}
.bb-bounce{display:inline-block;animation:bb-bounce-move 1s ease-in-out infinite}
.bb-float{display:inline-block;animation:bb-float-move 3.2s ease-in-out infinite}
.bb-pulse{display:inline-block;animation:bb-pulse-scale 1.7s ease-in-out infinite;transform-origin:center}
.bb-wave{display:inline-block;animation:bb-wave-move 2s ease-in-out infinite;transform-origin:bottom}
.bb-shimmer{background:linear-gradient(105deg,currentColor 20%,#fffdd3 50%,currentColor 80%);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent!important;animation:bb-rainbow-shift 2.5s linear infinite}
.name-effect{display:inline-block;line-height:1.35}
@keyframes bb-rainbow-shift{from{background-position:0% 50%}to{background-position:100% 50%}}
@keyframes bb-glow-pulse{0%,100%{text-shadow:0 0 3px #c1a7eb,0 0 9px #b994f477}50%{text-shadow:0 0 7px #ffe4fd,0 0 18px #f2a8ffcc}}
@keyframes bb-bounce-move{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes bb-float-move{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes bb-pulse-scale{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}
@keyframes bb-wave-move{0%,100%{transform:rotate(0deg)}50%{transform:rotate(-3deg)}}
.bb-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:5px;position:relative}
.bb-tool{border:1px solid #45485c;background:#282b3b;color:var(--ink);border-radius:5px;padding:5px 8px;font-size:11px;min-height:26px}
.bb-tool:hover,.bb-tool:focus-visible{background:#45415b;border-color:var(--gold)}
.bb-plus{border-color:#716045;color:var(--gold)}
.bb-menu{position:relative;display:flex;flex-wrap:wrap;gap:5px;flex-basis:100%;padding:9px;background:#181a28;border:1px solid #49465c;border-radius:6px;box-shadow:0 5px 12px #08060d55}
.bb-preview{border:1px dashed #77728e;border-radius:6px;padding:10px 12px;max-height:360px;overflow-y:auto;background:#151721;white-space:pre-wrap;overflow-wrap:anywhere}
.bb-preview:empty::after{content:'Nothing to preview';color:var(--muted)}
.compose-main{min-width:0;flex:1;display:grid;gap:6px}
.compose-form textarea{min-height:47px;max-height:150px;resize:vertical}
.compose-form>.btn{align-self:flex-end}
.name-effect-picker{display:flex;flex-wrap:wrap;gap:7px}
.name-effect-option{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid #4b4a62;border-radius:7px;background:#171a28;cursor:pointer;user-select:none}
.name-effect-option:has(input:checked){background:#38314a;border-color:#aa8ee1}
.name-effect-option input{accent-color:#ae92ef}
.profile-bio{display:block;max-height:65vh;overflow-y:auto;white-space:pre-wrap}
.msg-body .bb-image{max-height:220px!important;max-width:320px!important}
@media (prefers-reduced-motion:reduce){.bb-rainbow,.bb-glow,.bb-bounce,.bb-float,.bb-pulse,.bb-wave,.bb-shimmer{animation:none!important;transform:none!important}}

/* v0.1.9: effects are separated into motion wrappers and a visible ink layer.
   Rainbow text no longer places transparent color on the parent of Wave. */
.name-ink{display:inline-block;position:relative;isolation:isolate;color:inherit;line-height:1.35}
.name-motion{display:inline-block;vertical-align:baseline;line-height:1.35}
.name-ink.bb-rainbow{background:linear-gradient(105deg,#ff657e,#ffcf77,#fbffac,#7ffac3,#86bffe,#c6a0ff,#ff657e);background-size:350% 100%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:bb-rainbow-shift 4s linear infinite}
.name-ink.bb-shimmer:not(.bb-rainbow){background:linear-gradient(105deg,#cfb0ff,#fff4ba,#a8d6ff,#cfb0ff);background-size:250% 100%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:bb-rainbow-shift 2.5s linear infinite}
.name-ink.bb-glow{filter:none}
.name-ink.bb-glow:not(.bb-rainbow):not(.bb-shimmer)::before{content:attr(data-copy);position:absolute;inset:0;color:inherit;filter:blur(4px);opacity:.9;pointer-events:none;z-index:-1}
.name-ink.bb-glow.bb-rainbow::before{content:attr(data-copy);position:absolute;inset:0;background:linear-gradient(105deg,#ff657e,#ffcf77,#fbffac,#7ffac3,#86bffe,#c6a0ff,#ff657e);background-size:350% 100%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;color:transparent;filter:blur(5px);opacity:.9;animation:bb-rainbow-shift 4s linear infinite;pointer-events:none;z-index:-1}
.name-ink.bb-glow.bb-shimmer:not(.bb-rainbow)::before{content:attr(data-copy);position:absolute;inset:0;background:linear-gradient(105deg,#cfb0ff,#fff4ba,#a8d6ff,#cfb0ff);background-size:250% 100%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;color:transparent;filter:blur(5px);animation:bb-rainbow-shift 2.5s linear infinite;pointer-events:none;z-index:-1}
@media(prefers-reduced-motion:reduce){.name-ink.bb-rainbow,.name-ink.bb-shimmer,.name-ink.bb-glow::before,.name-motion{animation:none!important;transform:none!important}}
/* Dedicated character dossier based on the supplied portrait/layout sketch. */
.profile-screen{position:fixed;inset:0;overflow:auto;z-index:50;background:radial-gradient(ellipse at 30% 0%,#29273d 0%,#171925 53%,#10131f 100%);color:#ece8e8;padding:clamp(14px,3vw,42px)}
.profile-paper{max-width:1120px;margin:auto}
.profile-header{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid #80708a7d;padding:0 0 22px;margin-bottom:30px;flex-wrap:wrap}
.profile-overline{font-family:Cinzel,Georgia,serif;color:#bca383;letter-spacing:.16em;font-size:11px}
.profile-header h1{font-family:Cinzel,Georgia,serif;font-size:clamp(20px,3vw,35px);line-height:1.35;margin:8px 0 0;color:#f2e3cb}
.profile-grid{display:grid;grid-template-columns:minmax(200px,300px) minmax(0,1fr);gap:clamp(22px,4vw,70px);align-items:start}
.profile-photo-col{display:grid;gap:11px}
.profile-portrait{width:100%;aspect-ratio:3/5;border:1px solid #85718d;box-shadow:0 15px 45px #0008;background:#151724;overflow:hidden;position:relative}
.profile-portrait img{width:100%;height:100%;object-fit:cover;display:block}
.profile-portrait-empty{height:100%;display:grid;place-content:center;text-align:center;font-family:Georgia,serif;font-size:76px;color:#605873}
.profile-portrait-empty small{display:block;font:12px Arial,sans-serif;color:#aaa1aa}
.profile-status{background:#4a272e;border:1px solid #945261;text-align:center;padding:7px;color:#ffc9ce;font-size:12px}
.profile-status.living{background:#22372f;border-color:#507e64;color:#c2e4cc}
.profile-facts{display:grid;gap:16px;min-width:0;font-size:15px}
.profile-identity{border-bottom:1px solid #564c62;padding-bottom:15px}
.profile-identity h2{font:600 clamp(21px,2.5vw,31px) Cinzel,Georgia,serif;color:#f3e4d0}
.profile-identity p{color:#bcb3c1;margin-top:7px}
.profile-fact{display:grid;grid-template-columns:minmax(92px,125px) minmax(0,1fr);align-items:start;gap:16px;line-height:1.5}
.profile-fact>span{color:#afa4b4}
.profile-fact b{font-weight:500}
.family-person{display:inline-block;margin:0 8px 5px 0;padding:0;border:0;background:none;color:#eed2a1;text-decoration:underline;text-underline-offset:3px;text-align:left;cursor:pointer}
.family-departed{color:#b6a4aa}
.profile-none{color:#85808c;font-style:italic}
.profile-kin{margin-top:18px;border-top:1px solid #564c62;padding-top:18px;display:grid;gap:13px}
.profile-kin h3{color:#e4ccae;font:600 18px Cinzel,Georgia,serif}
.profile-biography{margin-top:36px;border:1px solid #84728a;padding:clamp(17px,3vw,28px);background:#1b1b2b97;box-shadow:0 12px 35px #05051236;min-height:180px}
.profile-biography h3{font:600 19px Cinzel,Georgia,serif;color:#ead2b4;border-bottom:1px solid #51495b;padding-bottom:13px;margin-bottom:17px}
.profile-biography .bb-content{white-space:pre-wrap;overflow-wrap:anywhere}
.profile-edit-intro{padding:14px;background:#282738;border:1px solid #574d66;border-radius:8px;margin-bottom:14px}
.profile-edit-intro p{margin:9px 0;color:#c1b9c2;line-height:1.5}
.portrait-crop-ui{display:grid;grid-template-columns:minmax(150px,205px) 1fr;gap:18px;margin-top:15px;align-items:start}
#portrait-preview{width:100%;aspect-ratio:3/5;border:1px solid #8e7e9b;touch-action:none;cursor:grab;background:#1a1927;display:block}
#portrait-preview:active{cursor:grabbing}
.portrait-settings{display:grid;gap:10px}
.portrait-settings input{width:100%}
.family-code-display{display:grid;gap:10px;padding:13px;background:#19392d;border:1px solid #72ad86;border-radius:8px;margin-top:12px;overflow-wrap:anywhere}
.family-code-display code{font-size:18px;letter-spacing:.09em;color:#c0efcb}
@media(max-width:630px){.profile-grid{grid-template-columns:1fr}.profile-photo-col{width:min(250px,100%)}.profile-fact{grid-template-columns:90px 1fr}.profile-header{gap:12px}.portrait-crop-ui{grid-template-columns:1fr}#portrait-preview{max-width:200px}}
/* v0.2.0: color and gradient palettes can be applied to every animation.
   Motion lives outside the isolated ink layer so effects stack without disappearing. */
.name-ink.bb-custom-solid,.name-ink.bb-custom-solid.bb-rainbow,.name-ink.bb-custom-solid.bb-shimmer{background:none!important;color:var(--bb-solid)!important;-webkit-text-fill-color:var(--bb-solid)!important}
.name-ink.bb-custom-gradient,.name-ink.bb-custom-gradient.bb-rainbow,.name-ink.bb-custom-gradient.bb-shimmer{background-image:var(--bb-palette)!important;background-size:350% 100%!important;background-clip:text!important;-webkit-background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;animation:bb-rainbow-shift 4s linear infinite}
.name-ink.bb-custom-solid.bb-glow::before{content:attr(data-copy)!important;position:absolute;inset:0;filter:blur(5px);opacity:.88;pointer-events:none;z-index:-1;color:var(--bb-solid)!important;background:none!important;-webkit-text-fill-color:var(--bb-solid)!important}
.name-ink.bb-custom-gradient.bb-glow::before{content:attr(data-copy)!important;position:absolute;inset:0;filter:blur(5px);opacity:.85;pointer-events:none;z-index:-1;background-image:var(--bb-palette)!important;background-size:350% 100%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:bb-rainbow-shift 4s linear infinite}
.effect-config-backdrop{position:fixed;inset:0;z-index:100;background:#080910b8;display:flex;align-items:center;justify-content:center;padding:14px}
.effect-config-card{width:min(520px,100%);border:1px solid #9c86ad;background:#1c2030;border-radius:12px;padding:22px;display:grid;gap:12px;box-shadow:0 28px 70px #0009}
.effect-config-card h3{margin:0;color:#f0d6bb}
.effect-config-card .effect-colors{display:flex;gap:9px;flex-wrap:wrap}
.effect-config-card input[type=color]{width:55px;height:40px;border:1px solid #76718a;background:transparent;border-radius:5px;cursor:pointer}
.effect-config-card label{display:block}
.effect-config-card .effect-preview{border:1px solid #4b4a62;padding:13px;border-radius:6px;min-height:48px}
.name-style-options{display:grid;gap:8px}
.name-style-row{display:grid;grid-template-columns:minmax(110px,auto) 1fr;align-items:center;gap:9px;padding:7px 9px;background:#202333;border:1px solid #4b4a62;border-radius:6px}
.name-style-row .effect-palette{width:100%;font-family:monospace;font-size:12px;min-width:0}
.staff-family{margin-top:24px;padding:15px;border:1px solid #766481;border-radius:9px;background:#1b1d2d}
.staff-family .family-code-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}
.staff-family .family-code-entry{padding:11px;background:#27293c;border:1px solid #514a64;border-radius:7px;overflow-wrap:anywhere}
.staff-family .family-code-entry .actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}
.staff-family .family-code-entry form{display:grid;gap:6px;margin-top:9px}
@media(prefers-reduced-motion:reduce){.name-ink.bb-custom-gradient,.name-ink.bb-custom-gradient.bb-glow::before{animation:none!important}}

/* v0.2.1: The owner's character dossier is the editing surface. */
.profile-inline-editor{margin:34px 0 45px;padding:clamp(16px,2.6vw,30px);background:#1b1d2d;border:1px solid #84728a;box-shadow:0 16px 45px #07071350;border-radius:9px}
.profile-editor-head{border-bottom:1px solid #4a4359;margin-bottom:18px;padding-bottom:12px}
.profile-editor-head h3{font:600 20px Cinzel,Georgia,serif;color:#f0d7b3}
.profile-editor-head p{color:#b6aec0;margin:8px 0 0}
.profile-inline-editor .form-card{max-width:100%;margin-bottom:18px}
.profile-inline-editor .portrait-crop-ui{grid-template-columns:minmax(170px,245px) minmax(0,1fr)}
.profile-status.protected{background:#21354d;border-color:#6898c4;color:#c2dffd}
@media(max-width:650px){.profile-inline-editor .portrait-crop-ui{grid-template-columns:1fr}}

/* v0.2.2: voluntary character death is restricted to the player's own profile editor */
.character-fate{margin-top:28px;padding:18px;border:1px solid rgba(190,78,79,.55);border-radius:12px;background:rgba(133,42,54,.09)}
.character-fate h3{margin:0 0 8px;color:#e9b0af}.character-fate p{color:var(--muted,#aaa);line-height:1.6;max-width:68ch}
.character-fate .form-card{margin-top:14px}.character-fate .btn.danger{margin-top:8px}

/* Dethroned v0.2.3: collaborative building projects and guild workshop storefronts */
.construction-status{display:flex;gap:7px;flex-wrap:wrap}
.construction-card{border:1px solid #514731;background:linear-gradient(155deg,#262a37,#212331);padding:15px;border-radius:10px;display:grid;gap:11px}
.construction-card h4{font-size:13px;color:#ebd1a9}
.construction-card p{font-size:12px;line-height:1.55;color:#b9b7c1}
.construction-card .between{flex-wrap:wrap}
.build-meter{height:12px;background:#11151e;border:1px solid #61513d;overflow:hidden;border-radius:99px}
.build-meter span{display:block;background:linear-gradient(90deg,#91724f,#e3b97b);height:100%;border-radius:99px}
.construction-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.construction-fund-form{margin-top:0;padding:11px}
.guild-price-form{margin-top:6px}
.guild-price-form .row{gap:4px;flex-wrap:nowrap}
@media(max-width:620px){.construction-card{padding:11px}.construction-actions .btn{white-space:normal}}

/* v0.2.4 — compact, opt-in name styling controls on character and guild profiles. */
.name-style-disclosure{border:1px solid #504864;border-radius:9px;background:#1c2131;min-width:0;overflow:hidden}
.name-style-disclosure summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;padding:10px 13px;color:#e5d9c3;font-size:12px;font-weight:600;min-height:40px}
.name-style-disclosure summary::-webkit-details-marker{display:none}
.name-style-disclosure summary::after{content:'▾';font-size:12px;color:#b6a1c7;transition:transform .16s}
.name-style-disclosure[open] summary::after{transform:rotate(180deg)}
.name-style-disclosure summary:hover,.name-style-disclosure summary:focus-visible{background:#2e2d42}
.name-style-title{min-width:0}.name-style-summary{margin-left:auto;background:#393344;color:#d8c2e7;padding:3px 8px;border-radius:99px;font-size:11px;white-space:nowrap;font-weight:500}
.name-style-disclosure .name-effect-picker{display:block;padding:11px 12px 4px;margin:0}
.name-style-disclosure .name-style-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:6px}
.name-style-disclosure .name-style-row{display:grid;grid-template-columns:minmax(0,1fr);align-content:start;gap:6px;padding:8px 10px}
.name-style-disclosure .name-style-row>label{display:flex;align-items:center;gap:8px;font-size:12px;cursor:pointer}
.name-style-disclosure .name-style-row>div{display:none;gap:6px;flex-wrap:wrap;align-items:center}
.name-style-disclosure .name-style-row:has(input[type="checkbox"]:checked)>div{display:flex}
.name-style-disclosure .name-style-row select.control{min-width:115px;max-width:100%;flex:1}
.name-style-disclosure .name-style-row .effect-colors{display:flex;flex-wrap:wrap;gap:4px}
.name-style-disclosure .name-style-row input[type="color"]{width:31px;height:30px;padding:1px;border-radius:4px}
.name-style-disclosure>.hint{margin:5px 12px 11px}
.family-code-finalized{font-size:12px;color:#bcb6c5;padding:9px 10px;border:1px solid #454458;border-radius:6px;background:#1f2532;margin-top:9px}
@media(max-width:620px){.name-style-disclosure summary{padding:9px 10px}.name-style-disclosure .name-effect-picker{padding:9px}}
.name-style-disclosure>.btn{margin:0 12px 12px;justify-self:start}

/* Dethroned v0.2.5 — dedicated, searchable game guide */
.guide-screen{position:fixed;inset:0;overflow:auto;overscroll-behavior:contain;z-index:55;background:radial-gradient(ellipse at 50% 0%,#303043 0%,#191b29 50%,#10131e 100%);color:#eee7de;padding:clamp(14px,3vw,40px)}
.guide-paper{max-width:1150px;margin:0 auto;padding-bottom:60px}
.guide-header{display:flex;justify-content:space-between;gap:18px;align-items:start;border-bottom:1px solid #6b5d6a;padding-bottom:24px;margin-bottom:22px}
.guide-eyebrow{color:#c6a77e;font:700 11px Cinzel,Georgia,serif;letter-spacing:.16em;text-transform:uppercase}
.guide-header h1{color:#f0dcc1;font:600 clamp(25px,4vw,39px) Cinzel,Georgia,serif;margin:7px 0 9px}
.guide-header p{max-width:70ch;color:#c2bdc6;line-height:1.6;font-size:13px}
.guide-toolbar{position:sticky;top:-1px;z-index:2;padding:13px 0;background:#181a27f2;backdrop-filter:blur(12px);border-bottom:1px solid #564d5c;margin-bottom:22px}
.guide-toolbar label{font-size:12px;color:#d8c4a9;display:block;margin-bottom:7px}
.guide-toolbar input{width:100%;max-width:580px;padding:11px 12px;border-radius:8px}
.guide-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:24px;align-items:start}
.guide-index{position:sticky;top:104px;border:1px solid #544c60;background:#202333;border-radius:10px;padding:13px;max-height:calc(100vh - 145px);overflow:auto}
.guide-index strong{color:#e7cda7;font:600 13px Cinzel,Georgia,serif;display:block;margin:0 0 10px}
.guide-index button{display:block;width:100%;text-align:left;border:0;border-radius:6px;background:none;color:#d8d1d9;padding:9px 8px;font-size:12px;cursor:pointer}
.guide-index button:hover,.guide-index button:focus-visible{background:#3c374c;color:#f7e5c7;outline-offset:2px}
.guide-index button[hidden]{display:none}
.guide-sections{display:grid;gap:18px;min-width:0}
.guide-card{background:linear-gradient(145deg,#242738,#1b1e2d);border:1px solid #625569;border-radius:11px;padding:clamp(16px,2.5vw,25px);scroll-margin-top:105px}
.guide-card[hidden]{display:none}
.guide-card .guide-kicker{color:#cbab7e;font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:700}
.guide-card h2{color:#f4dec1;font:600 clamp(19px,2.5vw,24px) Cinzel,Georgia,serif;margin:6px 0 9px}
.guide-card .guide-summary{color:#d3c9cd;line-height:1.65;font-size:13px;margin-bottom:13px}
.guide-steps{list-style:decimal;margin:0 0 0 20px;padding:0;display:grid;gap:10px}
.guide-steps li{padding-left:5px;font-size:13px;line-height:1.65;color:#ece2da}
.guide-steps li::marker{color:#d8b684;font-weight:700}
.guide-card .guide-note{margin-top:16px;border-left:3px solid #ba9560;background:#1b2430;padding:12px 13px;color:#c9cad0;font-size:12px;line-height:1.6;border-radius:3px}
.guide-empty{border:1px dashed #6c5f75;border-radius:10px;padding:28px;text-align:center;color:#c7bfc7}
.guide-count{font-size:12px;color:#bdb4c2;margin-top:8px}
@media(max-width:800px){.guide-layout{grid-template-columns:1fr}.guide-index{position:static;display:flex;flex-wrap:wrap;gap:5px;max-height:none}.guide-index strong{flex-basis:100%}.guide-index button{width:auto;padding:7px 9px;background:#2f3043;border:1px solid #494458}.guide-card{scroll-margin-top:120px}}
@media(max-width:500px){.guide-screen{padding:10px}.guide-header{flex-wrap:wrap}.guide-header button{margin-left:auto}.guide-toolbar{top:-1px}.guide-card{padding:14px}}

/* Mobile: the Realm navigation is the compact action strip; place the online roster directly after it. */
.mobile-online-panel{display:none}
@media(max-width:620px){.leftside>.online-panel{display:none}.mobile-online-panel{display:block;order:1}.mobile-online-panel .online-list{max-height:110px}.action-pane{display:flex;flex-direction:column;gap:8px}.action-pane>.panel:not(.mobile-online-panel){order:2}}


/* v0.2.9: seamless, repeatable text color and per-grapheme traveling wave.
   Two identical halves of a 200%-wide gradient tile give equal first/last frames. */
:root{--bb-rainbow-loop:repeating-linear-gradient(90deg,#ff657e 0%,#ffcf77 8.333%,#fbffac 16.667%,#7ffac3 25%,#86bffe 33.333%,#c6a0ff 41.667%,#ff657e 50%)}
@keyframes bb-color-loop{from{background-position:0% 50%}to{background-position:100% 50%}}
.bb-rainbow,.name-ink.bb-rainbow{
 background-image:var(--bb-rainbow-loop);background-size:200% 100%;
 background-clip:text;-webkit-background-clip:text;color:transparent!important;
 -webkit-text-fill-color:transparent;animation:bb-color-loop 4s linear infinite;
}
.name-ink.bb-rainbow.bb-glow::before{
 background-image:var(--bb-rainbow-loop);background-size:200% 100%;
 animation:bb-color-loop 4s linear infinite;
}
.name-ink.bb-custom-gradient,.name-ink.bb-custom-gradient.bb-rainbow,.name-ink.bb-custom-gradient.bb-shimmer,
.name-ink.bb-custom-gradient.bb-glow::before{
 background-image:var(--bb-palette)!important;background-size:200% 100%!important;
 animation:bb-color-loop 4s linear infinite;
}
/* Wave now travels character to character. The outer wrapper never rotates. */
.bb-wave,.bb-wave.name-motion{display:inline-block;animation:none!important;transform:none!important}
.bb-wave-letter{display:inline-block;white-space:pre;vertical-align:baseline;
 animation:bb-wave-letter-rise 1.8s ease-in-out infinite;will-change:transform}
@keyframes bb-wave-letter-rise{0%,100%{transform:translateY(0)}35%{transform:translateY(-5px)}70%{transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){
 .bb-wave-letter{animation:none!important;transform:none!important;will-change:auto}
 .bb-rainbow,.name-ink.bb-rainbow,.name-ink.bb-glow::before,
 .name-ink.bb-custom-gradient,.name-ink.bb-custom-gradient.bb-glow::before{animation:none!important}
}

/* v0.3.0 · truly branching skill tree */
.skill-forest{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:16px;margin-top:14px}
.skill-branch{min-width:0;background:rgba(15,17,26,.38);border:1px solid #3c3a49;border-radius:12px;padding:13px}
.skill-tree{display:flex;flex-direction:column;gap:9px}
.skill-node{margin-left:calc(var(--tree-indent)*14px);border-left:2px solid #8e744e;background:rgba(38,42,58,.75);border-radius:0 8px 8px 0;padding:10px;min-width:0}
.skill-heading{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.skill-node-marker{color:#d3b077;font-weight:bold}.skill-node p{font-size:12px;line-height:1.55;margin:7px 0;color:var(--ink)}.skill-prereqs{display:block;color:var(--muted);margin:5px 0 8px}
.skill-node .between{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:9px}.skill-node .between small{font-size:11px;max-width:240px}

.staff-live-cooldowns{margin:16px 0;background:#1c1e2b;border:1px solid #4f4a57;padding:14px;border-radius:10px}.staff-cooldown-list{max-height:300px;overflow-y:auto}.staff-cooldown-list .entry{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin:5px 0}

/* v0.3.2 – Desktop Realm pages, preserving the original left sidebar and all mobile breakpoints. */
@media (min-width:901px){
 .layout.realm-page,.layout.realm-chat{grid-template-columns:235px minmax(0,1fr);max-width:1720px}
 .layout.realm-page>.chat{display:none}
 .layout.realm-chat>.action-pane{display:none}
 .layout.realm-page>.action-pane{max-height:none;overflow:visible;position:static;top:auto}
 .layout.realm-page>.action-pane>.panel:not(.mobile-online-panel){min-height:calc(100vh - 97px)}
 .layout.realm-page .content{padding:clamp(20px,2.8vw,34px);gap:18px}
 .layout.realm-chat>.chat{height:calc(100vh - 97px);min-height:calc(100vh - 97px)}
}
.store-hero{display:flex;align-items:center;gap:20px;padding:22px;background:linear-gradient(115deg,#493627,#262538 70%);border:1px solid #735637;border-radius:12px}
.store-sigil{font-family:Georgia,serif;font-size:45px;color:var(--gold)}
.store-hero h2{color:var(--gold);margin-bottom:8px}.store-hero p{color:var(--muted);line-height:1.5;font-size:12px}
.store-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px}
.store-item{display:grid;gap:9px;padding:15px;border:1px solid #39394c;background:#242636;border-radius:10px}
.store-item-name{display:flex;align-items:center;gap:11px;font-size:13px}.store-item-name span{font-size:23px}
.store-item>small{font-size:11px;min-height:32px;line-height:1.45}
.store-item-action{display:flex;align-items:center;gap:7px;justify-content:space-between}
.store-item-action>b{white-space:nowrap;color:var(--gold);font-size:12px}
.store-item-action>.control{width:65px;padding:8px}
.raid-roster{margin:10px 0;padding:12px;border-radius:8px;background:#141723;border:1px solid #474054;display:grid;gap:7px}
.raid-roster>b{color:var(--gold);font-size:12px}
.raid-member,.raid-reward{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid #393748;font-size:12px}
.raid-member:last-child,.raid-reward:last-child{border-bottom:0}
.raid-log{border:1px solid #66573e;border-radius:11px;padding:16px;background:linear-gradient(145deg,#2c2b34,#1b202a);display:grid;gap:8px}
.raid-log.victory{border-color:#44735c;background:linear-gradient(145deg,#213d30,#202631)}
.raid-log.defeat{border-color:#74414b;background:linear-gradient(145deg,#40262f,#21232c)}
.raid-log h4{font-size:14px}.raid-rewards{display:grid;gap:2px}
.raid-reward{flex-wrap:wrap}.raid-reward>span:last-child{color:#ddc49a;text-align:right}

/* v0.3.3 – Desktop-only Realm workspace design. Mobile and shoutbox untouched. */
@media (min-width:901px){
 .layout.realm-page>.action-pane>.panel:not(.mobile-online-panel){background:none;border:0;box-shadow:none;min-height:0}
 .layout.realm-page>.action-pane>.panel>.panel-header{display:none}
 .layout.realm-page .action-pane>.panel>.content{padding:0;display:block;overflow:visible}
 .realm-workspace{max-width:1500px;margin:0 auto;padding:6px 4px 45px;min-width:0}
 .realm-workspace-header{position:relative;overflow:hidden;border:1px solid #574c60;border-radius:16px;background:linear-gradient(118deg,#302b41 0%,#222538 58%,#1b2130 100%);padding:clamp(22px,3vw,38px);display:flex;align-items:flex-end;justify-content:space-between;gap:22px;box-shadow:0 18px 55px #060a1240}
 .realm-workspace-header::after{content:'♛';font:132px/1 Georgia,serif;position:absolute;right:24px;top:-10px;color:#d5b47d0b;pointer-events:none}
 .realm-workspace-identity{position:relative;z-index:1;min-width:0}
 .realm-workspace-eyebrow{font-size:10px;font-weight:700;letter-spacing:.19em;color:#d8b782}
 .realm-workspace-header h2{margin:9px 0 11px;color:#f4e5cf;font:600 clamp(21px,2.2vw,30px)/1.25 Cinzel,Georgia,serif;letter-spacing:.015em}
 .realm-workspace-header p{font-size:13px;color:#c9c5d0;line-height:1.65;max-width:680px}
 .realm-workspace-facts{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;position:relative;z-index:1;flex:0 0 auto}
 .realm-context-pill{font-size:11px;color:#efddbd;background:#1e1e2b;border:1px solid #746044;border-radius:100px;padding:7px 11px;white-space:nowrap}
 .realm-section-jumps{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:14px 3px 5px}
 .realm-section-jumps button{background:#222636;border:1px solid #444355;color:#c5bfca;border-radius:100px;font-size:11px;padding:8px 12px;transition:background .15s,border-color .15s,color .15s}
 .realm-section-jumps button:hover,.realm-section-jumps button:focus-visible{background:#373247;border-color:#a88d62;color:#f5dbb0}
 .realm-workspace-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:17px;margin-top:17px;align-items:start}
 .realm-lead,.realm-section{min-width:0;grid-column:span 6;background:linear-gradient(170deg,#202536,#1a1f2c);border:1px solid #393d50;border-radius:13px;padding:clamp(16px,1.6vw,24px);box-shadow:0 10px 27px #080c1530;scroll-margin-top:90px}
 .realm-lead{grid-column:1/-1;border-color:#5a5062;background:linear-gradient(140deg,#282738,#202536)}
 .realm-lead:empty{display:none}
 .realm-workspace--notifications .realm-lead{display:grid;gap:9px}
 .realm-section--wide{grid-column:1/-1}
 .realm-section-heading{font-family:Cinzel,Georgia,serif;display:flex;align-items:center;gap:10px;min-width:0;color:#ead1a8;font-size:clamp(14px,1.3vw,18px);line-height:1.5;padding-bottom:14px;margin:0 0 14px;border-bottom:1px solid #454452;overflow-wrap:anywhere}
 .realm-section-heading::before{content:'';width:3px;height:19px;background:linear-gradient(#e1bf87,#8e6542);border-radius:3px;flex-shrink:0}
 .realm-section-body{display:flex;flex-direction:column;align-items:stretch;gap:11px;min-width:0}
 .realm-section-body>*{min-width:0}
 .realm-lead>.info:first-child,.realm-section-body>.info:first-child{margin-top:0}
 .realm-lead .info,.realm-section .info{line-height:1.6;background:#252a3a;color:#ded9db;border-color:#4b4b5d}
 .realm-lead>.info{background:transparent;border:0;padding:0;box-shadow:none}
 .realm-lead>.info h3{font-size:21px;color:#f0dbbc;margin-bottom:9px}
 .realm-lead>.info p{line-height:1.65;margin-top:7px;max-width:950px}
 .realm-lead .metrics{max-width:700px;display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
 .realm-lead .metric{min-width:120px;border:1px solid #514959;background:#191f2c;border-radius:8px;padding:12px}
 .realm-section-body>.item,.realm-section-body>.entry,.realm-section-body>.grave{background:#232838;border:1px solid #383e51;border-radius:9px;padding:14px 15px;margin:0;min-width:0}
 .realm-section-body>.item{gap:12px}
 .realm-section-body>.item h4{font-size:14px;color:#f0dbc1}
 .realm-section-body>.item p,.realm-section-body>.entry p{line-height:1.5;margin-top:6px}
 .realm-section-body>.entry+.entry{margin-top:0}
 .realm-section-body>.hint,.realm-section-body>p.hint{line-height:1.6;margin:0}
 .realm-section-body>.form-card,.realm-lead>.form-card{max-width:none;background:#232838;border:1px solid #434456;border-radius:10px;margin:0;min-width:0;padding:16px}
 .realm-section-body>.form-card+.form-card{margin-top:0}
 .realm-section-body>.form-card label{color:#ded0b9}
 .realm-section-body .control{min-width:0;max-width:100%}
 .realm-section-body .btn{max-width:100%;white-space:normal}
 .realm-section-body .row{flex-wrap:wrap}
 .realm-workspace--journey .realm-section--routes .realm-section-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .realm-workspace--journey .realm-section--routes .item{min-width:0;display:flex;flex-direction:column;gap:12px;height:100%;justify-content:space-between;background:#222b3b;border-color:#455064}
 .realm-workspace--journey .realm-section--routes .item .actions{align-items:stretch}
 .realm-workspace--journey .realm-section--routes .item .actions>.btn{width:100%}
 .realm-workspace--journey .realm-section--mounts{grid-column:span 6}
 .realm-workspace--journey .realm-section--stables{grid-column:span 6}
 .realm-workspace--journey .realm-section--stables .item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}
 .realm-workspace--journey .realm-section--husbandry .form-card{border:0;background:transparent;padding:0}
 .realm-workspace--journey .realm-section--rentals select{width:100%}
 .realm-workspace--construction .realm-section--projects .realm-section-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
 .realm-workspace--construction .realm-section--projects .construction-card{margin:0;background:#242b3a;border:1px solid #515063;border-radius:11px;padding:18px;min-width:0;box-shadow:none}
 .realm-workspace--construction .construction-card .construction-actions{display:flex;flex-wrap:wrap;gap:7px}
 .realm-workspace--construction .construction-card .form-card{min-width:0;max-width:100%}
 .realm-workspace--city .realm-section--ledger .entry{font-size:12px}
 .realm-workspace--city .realm-section--graves .grave h4{font-size:14px}
 .realm-workspace--city .realm-section--church .form-card,.realm-workspace--city .realm-section--policy .form-card{width:100%}
 .realm-workspace--guild .realm-section--roster .realm-section-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .realm-workspace--guild .realm-section--roster .realm-section-body>.hint{grid-column:1/-1}
 .realm-workspace--guild .realm-section--roster .entry{display:flex;flex-direction:column;justify-content:space-between;gap:9px}
 .realm-workspace--guild .realm-section--roster .entry .actions{display:flex;flex-wrap:wrap;gap:6px}
 .realm-workspace--guild .realm-section--roster .guild-rank-form{display:flex;gap:6px;flex-wrap:wrap}
 .realm-workspace--guild .realm-section--roster .guild-rank-form .control{max-width:180px}
 .realm-workspace--commerce .realm-section--market .realm-section-body,.realm-workspace--commerce .realm-section--mount-market .realm-section-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .realm-workspace--commerce .realm-section--market .item,.realm-workspace--commerce .realm-section--mount-market .item{display:flex;flex-direction:column;justify-content:space-between;align-items:stretch;gap:12px}
 .realm-workspace--commerce .realm-section--market .item .actions{align-self:flex-end}
 .realm-workspace--commerce .realm-section--listing .form-card{width:100%;margin-top:8px}
 .realm-workspace--social .realm-section--friends .entry{margin:0}
 .realm-workspace--social .realm-section--conversations .realm-section-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .realm-workspace--social .realm-section--conversations .realm-section-body>.section-title,.realm-workspace--social .realm-section--conversations .realm-section-body>#dm-thread-form{grid-column:1/-1}
 .realm-workspace--notifications .realm-lead>.item{margin:0;background:#242938;border:1px solid #424659;border-radius:10px;padding:16px}
 .realm-workspace .bb-toolbar{gap:5px}
}
@media (min-width:901px) and (max-width:1180px){
 .realm-workspace-header{align-items:flex-start;flex-direction:column}
 .realm-workspace-facts{justify-content:flex-start}
 .realm-workspace--journey .realm-section--routes .realm-section-body,.realm-workspace--construction .realm-section--projects .realm-section-body,.realm-workspace--guild .realm-section--roster .realm-section-body,.realm-workspace--commerce .realm-section--market .realm-section-body,.realm-workspace--commerce .realm-section--mount-market .realm-section-body,.realm-workspace--social .realm-section--conversations .realm-section-body{grid-template-columns:1fr}
}
@media (min-width:901px) and (max-width:1180px){
 .realm-workspace-grid>.realm-section,.realm-workspace-grid>.realm-lead{grid-column:1/-1}
 .realm-workspace--journey .realm-section--mounts,.realm-workspace--journey .realm-section--stables{grid-column:1/-1}
}
