.header-action{flex:0 0 auto;border:1px solid #405846;border-radius:7px;padding:9px 15px;background:#2b4033;color:var(--text);font-size:12px;font-weight:600}
.header-action:hover,.secondary:hover{background:#354d3d}
.account-card{min-width:0}
.realm-summary{padding:0 0 22px;margin:0 0 24px;border-bottom:1px solid var(--line)}
.realm-status-line{display:flex;align-items:center;flex-wrap:wrap;gap:9px}
.realm-status-line .eyebrow{margin:0}
.server-status{display:flex;align-items:center;gap:8px;font-size:13px;color:#ee8379}
.server-status:before{content:none!important}
.server-status.online{color:var(--jade)}
.server-status.checking{color:var(--muted)}
.server-dot{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:#df665d;box-shadow:0 0 9px #df665d80}
.server-status.online .server-dot{background:#75d387;box-shadow:0 0 9px #75d38780}
.server-status.checking .server-dot{background:#d0b36c;box-shadow:0 0 9px #d0b36c70}
.online-count{margin:5px 0 0;color:var(--muted);font-size:12px}
.account-card h2{margin-bottom:9px}
.account-card .hint{margin-bottom:0}
.guest-auth-button{margin-top:18px}
.account-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
.account-heading .eyebrow{margin-bottom:8px}
.account-heading h2{overflow-wrap:anywhere}
.logout-button{width:auto;flex:0 0 auto;padding:8px 14px}
.characters-title{margin:24px 0 10px;color:#dce7dc}
.characters-table-wrap{max-width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:8px}
.characters-table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}
.characters-table th,.characters-table td{padding:11px 10px;white-space:nowrap}
.characters-table th{color:var(--jade);background:#15211a;font-size:10px;font-weight:600;letter-spacing:.04em}
.characters-table td{border-top:1px solid #2a392f;color:#e5ece3}
.characters-table tbody tr:hover{background:#ffffff08}
.characters-table td:last-child,.characters-table th:last-child{text-align:right}
.auth-dialog{max-height:min(90vh,900px);overflow:auto;padding:28px;background:#192621;color:var(--text);border:1px solid #405246;border-radius:16px;box-shadow:0 24px 90px #0009}
.auth-dialog{width:min(100% - 32px,440px);max-width:440px}
.auth-dialog::backdrop{background:#050907c9;backdrop-filter:blur(5px)}
.account-screen{display:block;max-width:920px;margin:44px auto 56px;padding:32px;background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:0 16px 64px #0002}
.account-screen-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.account-screen-heading .eyebrow{margin:0 0 6px}
.account-screen-heading h1{font-family:Georgia,"Times New Roman",serif;font-size:32px;line-height:1.2;margin:0}
.account-screen .characters-title{margin-top:22px}
.account-screen .hint{margin-bottom:18px}
.admin-link-row{margin:14px 0 0}
.admin-link{display:inline-flex;width:auto;padding:9px 13px;text-decoration:none;font-size:12px}
.admin-screen{display:block;max-width:1000px;margin:44px auto 56px;padding:32px;background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:0 16px 64px #0002}
.admin-screen-heading{padding-bottom:20px;border-bottom:1px solid var(--line)}
.admin-screen-heading .eyebrow{margin:0 0 6px}
.admin-screen-heading h1{font-family:Georgia,"Times New Roman",serif;font-size:32px;line-height:1.2;margin:0}
.admin-intro{color:var(--muted);font-size:13px;margin:18px 0 28px}
.admin-section+.admin-section{margin-top:30px;padding-top:24px;border-top:1px solid var(--line)}
.admin-section h2{font-size:17px;margin:0 0 12px}
.admin-search-form label{margin-top:0}
.admin-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}
.admin-search-row .primary{width:auto;min-width:92px}
.admin-screen .message{min-height:0}
.admin-results,.admin-catalog-list{display:grid;gap:10px}
.admin-search-item,.admin-catalog-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border:1px solid var(--line);border-radius:9px;background:#142019}
.admin-item-details{display:grid;gap:5px;min-width:0}
.admin-item-details strong{font-size:12px;overflow-wrap:anywhere}
.admin-item-details span{font-size:10px;line-height:1.5;color:var(--muted)}
.admin-item-controls{display:grid;grid-template-columns:100px minmax(110px,150px) auto;gap:8px;align-items:center;flex:0 0 auto}
.admin-item-controls input{min-height:38px;padding:7px 9px;font-size:11px}
.admin-add,.admin-toggle,.admin-refresh{width:auto;padding:9px 12px;font-size:11px;white-space:nowrap}
.admin-catalog-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}
.admin-catalog-heading h2{margin:0}
.admin-catalog-heading+.message{margin-top:8px}
.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}
.dialog-heading .eyebrow{margin:0 0 5px}
.dialog-heading h2{font-family:Georgia,"Times New Roman",serif;font-size:25px;font-weight:400}
.dialog-close{display:grid;place-items:center;width:34px;height:34px;flex:0 0 auto;margin:-5px -5px 0 0;border:1px solid var(--line);border-radius:50%;background:#101a17;color:var(--muted);font-size:22px;line-height:1}
.dialog-close:hover{color:var(--text);border-color:#708274}
.auth-dialog .tabs{margin-bottom:22px}
.auth-dialog form h2{margin-bottom:5px}
.auth-dialog .hint{margin-bottom:18px}
.auth-dialog .message{min-height:0}
.auth-dialog .primary{margin-top:5px}
.auth-dialog :focus-visible{outline:2px solid var(--jade);outline-offset:3px}
.store-panel{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
.store-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}
.store-heading .eyebrow{margin:0 0 5px}
.store-heading h3{font-size:21px;margin:0}
.store-balance{margin:1px 0 0;color:var(--muted);font-size:12px;white-space:nowrap}
.store-balance strong{color:var(--jade);font-size:15px}
.store-panel label{margin:14px 0 7px}
.store-panel select{width:100%;min-height:44px;padding:10px 12px;border:1px solid #3b4c40;border-radius:7px;background:#121e18;color:var(--text);font:inherit;font-size:13px}
.store-panel select:focus-visible{outline:2px solid var(--jade);outline-offset:2px}
.store-panel select:disabled{opacity:.65}
.store-message{margin:12px 0}
.store-category{margin-top:18px}
.store-category h4,.store-orders h4{margin:0 0 9px;font-size:12px;font-weight:600;color:var(--jade);letter-spacing:.04em}
.store-item-list{display:grid;gap:8px}
.store-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);border-radius:9px;background:#142019}
.store-item-info{display:grid;gap:3px;min-width:0}
.store-item-info strong{font-size:12px;font-weight:600;overflow-wrap:anywhere}
.store-item-info span{font-size:10px;color:var(--muted);line-height:1.5}
.store-buy{width:auto;flex:0 0 auto;padding:8px 10px;font-size:10px;white-space:nowrap}
.store-buy:disabled{opacity:.45}
.store-orders{margin-top:22px;padding-top:16px;border-top:1px solid var(--line)}
.store-orders ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.store-orders li{display:grid;gap:3px;font-size:11px}
.store-orders li strong{font-weight:500;overflow-wrap:anywhere}
.store-orders li span{color:var(--muted);font-size:10px}
@media(max-width:780px){.account-card{max-width:none}.auth-dialog{padding:23px}.account-screen{margin:30px auto 42px;padding:23px}.realm-summary{padding-bottom:18px;margin-bottom:20px}}
@media(max-width:420px){.shell{padding:0 18px}header{padding:22px 0}.account-card{padding:21px}.realm-status-line{flex-wrap:nowrap;gap:5px}.realm-status-line .eyebrow{font-size:9px;letter-spacing:.08em;white-space:nowrap}.server-status{gap:5px;font-size:10px;white-space:nowrap}.account-heading{align-items:flex-start}.logout-button{padding:7px 10px;font-size:11px}.account-screen{padding:19px}.account-screen-heading h1{font-size:27px}.characters-table{font-size:11px}.characters-table th,.characters-table td{padding:10px 8px}}
@media(max-width:780px){.admin-screen{margin:30px auto 42px;padding:23px}}
@media(max-width:600px){.admin-search-item,.admin-catalog-item{align-items:stretch;flex-direction:column}.admin-item-controls{grid-template-columns:1fr 1fr}.admin-item-controls button{grid-column:1/-1}.admin-catalog-item .admin-toggle{width:100%}}
@media(max-width:420px){.admin-screen{padding:19px}.admin-screen-heading h1{font-size:27px}.admin-search-row{grid-template-columns:1fr}.admin-search-row .primary{width:100%}}
@media(max-width:460px){.store-heading{display:block}.store-balance{margin-top:8px}.store-item{align-items:flex-start;flex-direction:column}.store-buy{width:100%}}
