:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#e9edf4;background:#10141c;color-scheme:dark;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input{font:inherit}button{padding:.65rem 1rem;border:1px solid #3c485e;border-radius:8px;background:#222d40;color:#f3f6fc;cursor:pointer}button:hover:not(:disabled){background:#2d3c54}button:disabled{opacity:.6;cursor:wait}button:focus-visible,input:focus-visible{outline:2px solid #93baff;outline-offset:3px}input{width:100%;padding:.75rem;border:1px solid #3c485e;border-radius:8px;background:#101722;color:#f3f6fc}h1,h2,p{margin:0}h1{font-size:1.5rem;line-height:1.3}h2{font-size:1.2rem}.muted{color:#a2aec1}.error{color:#ffb0b0;overflow-wrap:anywhere}#root{min-height:100vh}.page-status{padding:3rem 1.5rem;text-align:center;color:#a2aec1}.login-page{display:grid;place-items:center;min-height:100vh;min-height:100dvh;padding:1.25rem}.login-card{width:100%;max-width:430px;padding:2rem;border:1px solid #303b4d;border-radius:14px;background:#192130;box-shadow:0 16px 48px #0003}.brand{margin-bottom:1.25rem;color:#93baff;font-weight:750;letter-spacing:.16em}.login-card>.muted{margin-top:.75rem}.login-card form{display:flex;flex-direction:column;margin-top:1.75rem}.login-card label{margin-bottom:.5rem;font-weight:500}.login-card input{margin-bottom:1.25rem}.login-card .error{margin-bottom:1rem}.primary-button{background:#436ed0;border-color:#638bed;font-weight:600}.primary-button:hover:not(:disabled){background:#517de0}.dashboard{max-width:1280px;margin:0 auto}.dashboard-header{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.75rem 2rem;border-bottom:1px solid #303b4d}.user-menu{display:flex;align-items:center;gap:1rem;min-width:0}.user-email{color:#a2aec1;overflow-wrap:anywhere}.user-menu button{flex-shrink:0}.dashboard-content{padding:2rem}.dashboard-content>.error{margin-bottom:1.5rem}.dashboard-content h2{margin-bottom:1.25rem}.overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:0}.stat-card{padding:1.5rem;background:#192130;border:1px solid #303b4d;border-radius:12px}.stat-card dt{color:#a2aec1;margin-bottom:.75rem}.stat-card dd{margin:0;font-size:1.5rem;font-weight:600;overflow-wrap:anywhere}.stat-card .muted{margin-top:.75rem;font-size:.85rem}.error-panel{display:grid;justify-items:start;gap:1rem}.admin-nav{display:flex;gap:.5rem;padding:1rem 2rem;border-bottom:1px solid #303b4d}.admin-nav a{padding:.5rem 1rem;border-radius:8px;color:#a2aec1;text-decoration:none}.admin-nav a:hover{background:#222d40;color:#f3f6fc}.admin-nav a.active{background:#2d3c54;color:#c2d8ff}.admin-nav a:focus-visible,.players-table-scroll:focus-visible{outline:2px solid #93baff;outline-offset:3px}.players-page{min-width:0}.search-label{display:block;margin-bottom:.5rem}.player-search{max-width:480px}.players-results{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;margin-top:1.5rem}.players-table-scroll{max-width:100%;overflow-x:auto;border:1px solid #303b4d;border-radius:12px}.players-table{width:100%;border-collapse:collapse;background:#192130;text-align:left;font-size:.9rem}.players-table th,.players-table td{padding:1rem;border-bottom:1px solid #303b4d;vertical-align:top}.players-table th{color:#a2aec1;font-weight:500}.players-table tbody tr:last-child td{border-bottom:0}.players-table time{display:block;min-width:10rem}.provider-user-id{min-width:12rem;max-width:24rem;overflow-wrap:anywhere}.player-id{display:block;white-space:nowrap;font-family:ui-monospace,Consolas,monospace}.copy-button{margin-top:.5rem;padding:.25rem .5rem;font-size:.8rem}.character-count{min-width:2.5rem;color:#c2d8ff}.characters-row{background:#141c29}.character-list{display:grid;gap:.75rem;list-style:none;margin:0;padding:0}.character-list li{display:flex;align-items:baseline;flex-wrap:wrap;gap:.5rem 1.5rem}.character-list time{display:inline;min-width:0}.character-deletion{color:#e9bc84}.danger-button{background:#4d252e;border-color:#95505d;color:#ffd1d8}.danger-button:hover:not(:disabled){background:#65313c}.pagination{display:flex;align-items:center;flex-wrap:wrap;gap:1rem}.pagination span{color:#a2aec1}.empty-state{padding:2rem 0;color:#a2aec1}.success-notice{margin-top:1rem;padding:.75rem 1rem;border:1px solid #3d6a58;border-radius:8px;color:#a9e7c7;background:#1a332b}.delete-dialog{width:calc(100% - 2.5rem);max-width:520px;max-height:calc(100dvh - 2.5rem);overflow-y:auto;padding:1.5rem;border:1px solid #3c485e;border-radius:12px;background:#192130;color:#e9edf4;box-shadow:0 16px 48px #0006}.delete-dialog::backdrop{background:#0009}.delete-dialog p{margin-top:1rem;overflow-wrap:anywhere}.dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.management-page,.management-stack{display:grid;grid-template-columns:minmax(0,1fr);gap:1.25rem;min-width:0}.management-page>h2{margin-bottom:0}.management-card{min-width:0;padding:1.25rem;border:1px solid #303b4d;border-radius:12px;background:#192130}.dungeon-card{margin-left:1.25rem;border-left:3px solid #638bed}.management-card>*+*{margin-top:1rem}.management-card h3,.management-card h4{margin:0}.management-card h3,.delete-dialog h2{overflow-wrap:anywhere}.section-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;min-width:0}.section-heading h2{margin-bottom:0}.section-heading>div{min-width:0}.row-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.row-actions button,.small-button{padding:.35rem .6rem;font-size:.85rem}.management-table th{white-space:nowrap}.management-table td{min-width:5rem;max-width:24rem;overflow-wrap:anywhere}.management-table td:last-child{min-width:15rem}.management-table .row-actions{min-width:13rem}.no-wrap{white-space:nowrap}.map-path{overflow-wrap:anywhere}.location-color{display:inline-block;width:.85rem;height:.85rem;margin-right:.5rem;border:1px solid #8491a5;border-radius:3px}.admin-form{display:grid;gap:1rem;margin-top:1.25rem}.admin-form>button{justify-self:start}.admin-form fieldset{display:grid;gap:1rem;padding:0;margin:0;min-width:0;border:0}.admin-form .dialog-actions{margin-top:.5rem}.form-field{display:grid;gap:.4rem;min-width:0}.form-field input{min-width:0}.form-field label{font-weight:500}.form-field .error{margin-top:.25rem;font-size:.85rem}.form-field input[aria-invalid=true]{border-color:#ffb0b0}.toggle-field label{display:flex;align-items:center;gap:.65rem;cursor:pointer}.toggle-field input{width:1.1rem;height:1.1rem;flex-shrink:0;margin:0;accent-color:#638bed}.toggle-field p{margin-top:.4rem;font-size:.9rem}.danger-zone{padding-top:1rem;border-top:1px solid #95505d}.danger-zone h4{color:#ffd1d8;margin-bottom:.75rem}.status-badge{display:inline-block;padding:.15rem .5rem;border-radius:5px;font-size:.8rem;white-space:nowrap;background:#303b4d;color:#d2d9e5}.status-ready{background:#1a3b2e;color:#a9e7c7}.status-starting,.status-stopping{background:#493a24;color:#f1cc91}.status-requested{background:#263b5b;color:#b9d3ff}.status-failed{background:#4d252e;color:#ffb0b0}.status-stopped{background:#303743;color:#c3cad5}.character-gear-action{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.5rem}.admin-nav{flex-wrap:wrap}.item-key{display:block;color:#a2aec1;font-size:.8rem;margin-top:.3rem;overflow-wrap:anywhere}.item-table td{overflow-wrap:anywhere}.item-table th{white-space:nowrap}.item-table td:first-child{min-width:12rem}.identifier-link{color:#b9d3ff;overflow-wrap:anywhere}.identifier-link:hover{color:#e9f1ff}.identifier-link:focus-visible{outline:2px solid #93baff;outline-offset:3px}.import-details{margin-top:.5rem;overflow-wrap:anywhere}.import-details summary,.event-details summary{cursor:pointer}.item-tabs{display:flex;flex-wrap:wrap;gap:.5rem}.item-tabs a{padding:.5rem 1rem;border:1px solid #3c485e;border-radius:8px;color:#a2aec1;text-decoration:none}.item-tabs a.active{background:#2d3c54;color:#c2d8ff}.item-event-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:1rem}.item-event-filters label{display:grid;gap:.4rem;min-width:0}.item-event-filters select{width:100%;min-width:0;padding:.75rem;border:1px solid #3c485e;border-radius:8px;background:#101722;color:#f3f6fc;font:inherit}.item-event-filters select:focus-visible,.item-tabs a:focus-visible{outline:2px solid #93baff;outline-offset:3px}.item-event-table td:nth-child(2),.item-event-table td:nth-child(3){min-width:13rem;max-width:20rem}.item-event-table td:last-child{min-width:16rem;max-width:26rem}.event-reason{color:#f1cc91;margin-top:.5rem;font-size:.8rem}.event-details{margin-top:.5rem}.event-details dl{margin:.75rem 0 0}.event-details dt{color:#a2aec1;margin-top:.5rem}.event-details dd{margin-left:0}.inventory-dialog,.give-item-dialog{max-width:1120px}.item-picker{width:100%;min-width:0;padding:.5rem;border:1px solid #3c485e;border-radius:8px;background:#101722;color:#f3f6fc;font:inherit}.item-picker option{padding:.35rem}.item-picker:focus-visible{outline:2px solid #93baff;outline-offset:3px}.item-picker[aria-invalid=true]{border-color:#ffb0b0}.grant-history{margin-top:1.5rem}.grant-history h3{margin:0}.inventory-content{margin-top:1rem}.inventory-content h3{margin:0}.inventory-content p{margin-top:0}.quick-slot-list{display:flex;flex-wrap:wrap;gap:1rem 3rem;margin-bottom:0}@media(max-width:800px){.dashboard-header{align-items:flex-start;flex-direction:column}.overview-grid{grid-template-columns:1fr}.item-event-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.login-card{padding:1.5rem}.dashboard-header,.dashboard-content{padding:1.25rem}.admin-nav{padding:.75rem 1.25rem;flex-wrap:wrap;gap:.25rem}.admin-nav a{padding:.5rem .65rem}.management-card{padding:1rem}.user-menu{width:100%;justify-content:space-between}.item-event-filters{grid-template-columns:minmax(0,1fr)}}
