:root{--background: #faf9f5;--foreground: #141413;--surface: #ffffff;--surface-soft: #f5f0e8;--surface-muted: #efe9de;--border: #e6dfd8;--border-strong: #d8cec1;--muted: #6c6a64;--muted-soft: #8e8b82;--primary: #cc785c;--primary-hover: #a9583e;--primary-soft: #f4ded5;--success: #4f9f65;--success-soft: #e4f3e8;--warning: #d4a017;--warning-soft: #fbf0cc;--danger: #c64545;--danger-soft: #f7dddd;--info: #4f83a8;--info-soft: #e3eef5;--dark-surface: #181715;--dark-surface-elevated: #252320;--on-dark: #faf9f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--foreground);background:var(--background)}*{box-sizing:border-box}html{min-height:100%;background:var(--background)}body{min-width:320px;min-height:100vh;margin:0;background:var(--background);color:var(--foreground);font-family:inherit;font-size:14px;line-height:1.5}button,a,input,select{font:inherit}button{color:inherit}button:disabled{cursor:not-allowed;opacity:.56}input,select{min-width:0}::-moz-selection{background:var(--primary-soft);color:var(--foreground)}::selection{background:var(--primary-soft);color:var(--foreground)}.auth-shell{display:grid;min-height:100vh;place-items:center;background:var(--background);padding:24px}.auth-panel{display:grid;gap:20px;width:min(100%,420px);border:1px solid var(--border);border-radius:10px;background:var(--surface);padding:24px;box-shadow:0 18px 42px #1817150f}.auth-brand,.brand{display:flex;min-width:0;align-items:center;gap:12px}.auth-brand strong,.auth-brand span,.brand strong,.brand span{display:block;min-width:0}.auth-brand strong,.brand strong{overflow-wrap:anywhere;font-size:15px;font-weight:700}.auth-brand span:not(.brand-mark),.brand span:not(.brand-mark){color:var(--muted);font-size:12px}.auth-copy{display:grid;gap:4px}.auth-copy h1,.auth-copy p{margin:0}.auth-copy h1{font-size:24px;font-weight:650;line-height:1.25}.auth-copy p{color:var(--muted);font-size:13px}.segmented-control{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft);padding:4px}.segmented-control .ui-button{width:100%;min-height:34px}.form-stack{display:grid;gap:12px}.app-shell{display:grid;grid-template-columns:264px minmax(0,1fr);min-height:100vh;background:var(--background)}.sidebar{display:flex;flex-direction:column;gap:20px;min-width:0;min-height:100vh;border-right:1px solid var(--border);background:var(--surface);padding:20px}.brand-mark{display:inline-grid;flex:0 0 auto;width:40px;height:40px;place-items:center;border:1px solid rgba(204,120,92,.28);border-radius:8px;background:var(--primary-soft);color:var(--primary-hover);font-size:14px;font-weight:750;line-height:1}.nav-list{display:grid;gap:6px}.nav-item{display:grid;grid-template-columns:20px minmax(0,1fr);gap:2px 10px;align-items:center;width:100%;min-height:52px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);padding:10px;text-align:left;cursor:pointer}.nav-item svg{grid-row:span 2}.nav-item span,.nav-item small{min-width:0;overflow-wrap:anywhere}.nav-item span{color:var(--foreground);font-weight:650}.nav-item small{color:var(--muted);font-size:12px;line-height:1.35}.nav-item:hover{border-color:var(--border);background:var(--surface-soft)}.nav-item.active{border-color:#cc785c52;background:var(--primary-soft);color:var(--primary-hover)}.nav-item.active span,.nav-item.active small{color:var(--primary-hover)}.sidebar-footer{display:grid;gap:4px;min-width:0;margin-top:auto;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft);padding:12px}.sidebar-footer span,.sidebar-footer small{color:var(--muted);font-size:12px;overflow-wrap:anywhere}.sidebar-footer strong{overflow-wrap:anywhere;font-size:14px;font-weight:650}.content{min-width:0;padding:24px}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.topbar>div{min-width:0}.topbar p,.topbar h1,.topbar span{margin:0}.topbar p{color:var(--muted);font-size:13px;font-weight:650}.topbar h1{margin-top:3px;overflow-wrap:anywhere;font-size:24px;font-weight:650;line-height:1.25}.topbar span{display:block;margin-top:5px;color:var(--muted);font-size:13px;overflow-wrap:anywhere}.topbar-actions{display:flex;flex:0 1 auto;flex-wrap:wrap;justify-content:flex-end;gap:8px;min-width:0}.view-stack{display:grid;gap:16px}.operations-shell{display:grid;grid-template-columns:220px minmax(0,1fr);align-items:start;gap:16px}.operations-feature-rail{position:sticky;top:16px;min-width:0;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:10px}.operations-feature-nav{display:grid;gap:6px}.operations-feature-nav-item{display:grid;gap:3px;width:100%;min-height:38px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--muted);padding:9px 10px;font-size:13px;font-weight:650;line-height:1.2;text-align:left;overflow-wrap:anywhere;cursor:pointer}.operations-feature-nav-label,.operations-feature-nav-description{min-width:0;overflow-wrap:anywhere}.operations-feature-nav-label{color:var(--foreground)}.operations-feature-nav-description{color:var(--muted);font-size:12px;font-weight:500;line-height:1.25}.operations-feature-nav-item:hover{border-color:var(--border-strong);background:var(--surface-soft);color:var(--foreground)}.operations-feature-nav-item[aria-current=page]{border-color:#cc785c52;background:var(--primary-soft);color:var(--primary-hover)}.operations-feature-nav-item[aria-current=page] .operations-feature-nav-label,.operations-feature-nav-item[aria-current=page] .operations-feature-nav-description{color:var(--primary-hover)}.operations-workspace-body{display:grid;min-width:0;gap:16px}.operations-pane{display:none}.operations-pane.operations-pane-active{display:grid;gap:16px}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.metric-grid-four{grid-template-columns:repeat(4,minmax(0,1fr))}.split-grid,.tool-grid,.query-form,.readout-grid{display:grid;gap:12px}.split-grid{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr)}.tool-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.query-form{grid-template-columns:minmax(0,1fr) auto;align-items:end}.readout-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.overview-block{display:grid;gap:10px;min-width:0}.overview-heading{margin:0;font-size:14px;font-weight:650;line-height:1.35}.overview-empty{margin:0;color:var(--muted);font-size:13px}.overview-exception-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.overview-exception-item{display:grid;gap:4px;min-width:0;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft);padding:10px}.overview-exception-item strong{font-size:13px;font-weight:650;overflow-wrap:anywhere}.overview-exception-item span{color:var(--muted);font-size:12px;overflow-wrap:anywhere}.super-admin-guide{display:grid;gap:12px}.workflow-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.workflow-card{display:grid;gap:10px;min-width:0;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft);padding:12px}.workflow-card h3,.workflow-card p{margin:0}.workflow-card h3{font-size:14px;font-weight:650;line-height:1.35}.workflow-card p{color:var(--muted);font-size:13px}.workflow-meta{display:grid;gap:3px;min-width:0}.workflow-meta dt{color:var(--muted);font-size:12px;font-weight:650}.workflow-meta dd{margin:0;color:var(--foreground);font-size:13px}.inline-code{display:inline-block;max-width:100%;overflow-wrap:anywhere;border-radius:6px;background:var(--surface-subtle);padding:3px 6px;color:var(--foreground);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px}.field-help{margin:-3px 0 0;color:var(--muted);font-size:12px}.tool-grid .readout-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.button-row{display:flex;flex-wrap:wrap;gap:8px;min-width:0}.button-row .ui-button{flex:1 1 132px}.inline-actions{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}.table-count{display:inline-flex;align-items:center;min-height:26px;border:1px solid var(--border);border-radius:999px;background:var(--surface-soft);color:var(--muted);padding:4px 9px;font-size:12px;font-weight:650;line-height:1;white-space:nowrap}.field{display:grid;gap:6px;min-width:0}.field-label{color:var(--muted);font-size:12px;font-weight:650;overflow-wrap:anywhere}.field input,.field select{width:100%;min-height:38px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--foreground);padding:8px 10px}.field input:focus,.field select:focus{border-color:var(--primary);outline:3px solid rgba(204,120,92,.18)}.ui-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:0;min-height:38px;border:1px solid transparent;border-radius:8px;padding:9px 14px;font-size:14px;font-weight:650;line-height:1;text-align:center;text-decoration:none;overflow-wrap:anywhere;white-space:normal;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.ui-button-primary{border-color:var(--primary);background:var(--primary);color:var(--on-dark)}.ui-button-primary:hover:not(:disabled){border-color:var(--primary-hover);background:var(--primary-hover)}.ui-button-secondary{border-color:var(--border-strong);background:var(--surface);color:var(--foreground)}.ui-button-secondary:hover:not(:disabled){border-color:var(--primary);color:var(--primary-hover);background:var(--surface-soft)}.ui-button-ghost{border-color:transparent;background:transparent;color:var(--muted)}.ui-button-ghost:hover:not(:disabled){background:var(--surface-soft);color:var(--foreground)}.ui-button-danger{border-color:var(--danger);background:var(--danger);color:var(--on-dark)}.ui-button-danger:hover:not(:disabled){border-color:#9f3535;background:#9f3535}.ui-button-compact{min-height:32px;padding:7px 10px;font-size:13px}.ui-button-icon{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;line-height:0}.ui-input-field{display:grid;gap:6px;min-width:0}.ui-input-label{color:var(--muted);font-size:12px;font-weight:650;overflow-wrap:anywhere}.ui-input-control{position:relative;display:flex;min-width:0;align-items:center}.ui-input-control input,.ui-input-control select{width:100%;min-height:38px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--foreground);padding:8px 10px}.ui-input-control input::-moz-placeholder{color:var(--muted-soft)}.ui-input-control input::placeholder{color:var(--muted-soft)}.ui-input-control input:focus,.ui-input-control select:focus{border-color:var(--primary);outline:3px solid rgba(204,120,92,.18)}.ui-input-control input[aria-invalid=true]{border-color:var(--danger);outline-color:#c6454529}.ui-input-trailing{position:absolute;right:10px;color:var(--muted);font-size:12px;pointer-events:none}.ui-input-control:has(.ui-input-trailing) input{padding-right:48px}.ui-input-message{color:var(--muted);font-size:12px;overflow-wrap:anywhere}.ui-input-error{color:var(--danger)}.ui-panel,.ui-metric-card{min-width:0;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.ui-panel{overflow:hidden}.ui-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border);padding:16px}.ui-panel-header>div{min-width:0}.ui-panel-title,.ui-panel-description{margin:0}.ui-panel-title{overflow-wrap:anywhere;font-size:18px;font-weight:600;line-height:1.35}.ui-panel-description{margin-top:4px;color:var(--muted);font-size:13px;overflow-wrap:anywhere}.ui-panel-actions{display:flex;flex:0 1 auto;flex-wrap:wrap;justify-content:flex-end;gap:8px;min-width:0}.ui-panel-body{display:grid;gap:14px;min-width:0;padding:16px}.ui-panel-body:has(>.ui-data-table){overflow-x:auto}.ui-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;background:#1414136b;padding:18px}.ui-dialog{width:min(760px,100%);max-height:calc(100vh - 36px);overflow:auto;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:0 24px 60px #1414133d}.ui-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border);padding:16px}.ui-dialog-header>div{min-width:0}.ui-dialog-title,.ui-dialog-description{margin:0}.ui-dialog-title{overflow-wrap:anywhere;font-size:18px;font-weight:600;line-height:1.35}.ui-dialog-description{margin-top:4px;color:var(--muted);font-size:13px;overflow-wrap:anywhere}.ui-dialog-body{display:grid;gap:12px;min-width:0;padding:16px}.ui-dialog-footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;border-top:1px solid var(--border);padding:16px}.ui-metric-card{display:grid;gap:6px;padding:16px}.ui-metric-label{color:var(--muted);font-size:12px;font-weight:650;overflow-wrap:anywhere}.ui-metric-value{min-width:0;overflow-wrap:anywhere;font-size:24px;font-weight:650;line-height:1.18}.ui-metric-detail{color:var(--muted);font-size:13px;overflow-wrap:anywhere}.ui-status-badge{display:inline-flex;align-items:center;width:-moz-fit-content;width:fit-content;max-width:100%;min-height:26px;border:1px solid transparent;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:650;line-height:1.1;overflow-wrap:anywhere}.ui-status-badge-warning{border-color:#d4a0173d;background:var(--warning-soft);color:#8b640f}.ui-status-badge-success{border-color:#4f9f653d;background:var(--success-soft);color:#357948}.ui-status-badge-danger{border-color:#c645453d;background:var(--danger-soft);color:var(--danger)}.ui-status-badge-muted{border-color:var(--border);background:var(--surface-muted);color:var(--muted)}.ui-status-badge-info{border-color:#4f83a83d;background:var(--info-soft);color:#386d91}.ui-alert{border:1px solid transparent;border-radius:8px;padding:10px 12px;font-size:13px;font-weight:500;overflow-wrap:anywhere}.ui-alert-danger{border-color:#c6454538;background:var(--danger-soft);color:var(--danger)}.ui-alert-success{border-color:#4f9f6538;background:var(--success-soft);color:#357948}.operation-feedback{display:grid;gap:8px}.operation-feedback__current{display:grid;gap:4px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:10px 12px;color:var(--text);overflow-wrap:anywhere}.operation-feedback__current--running{border-color:#4f83a847;background:var(--info-soft)}.operation-feedback__current--success{border-color:#4f9f6542;background:var(--success-soft)}.operation-feedback__current--failed{border-color:#c6454542;background:var(--danger-soft);color:var(--danger)}.operation-feedback__current-header{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:10px}.operation-feedback__current-header strong{font-size:13px;font-weight:750}.operation-feedback__status{flex:0 0 auto;border:1px solid rgba(41,50,63,.12);border-radius:999px;background:#ffffff94;padding:2px 8px;color:var(--muted);font-size:12px;font-weight:700}.operation-feedback__current p{margin:0;font-size:13px;font-weight:650}.operation-feedback__history{border:1px solid var(--border);border-radius:8px;background:var(--surface-soft)}.operation-feedback__history summary{cursor:pointer;padding:8px 12px;color:var(--muted);font-size:12px;font-weight:700}.operation-feedback__history ol{display:grid;gap:0;margin:0;padding:0 12px 10px;list-style:none}.operation-feedback__history li{display:grid;grid-template-columns:8px minmax(0,1fr);gap:8px;align-items:start;border-top:1px solid var(--border);padding:8px 0;font-size:12px}.operation-feedback__history li:first-child{border-top:0}.operation-feedback__dot{width:8px;height:8px;margin-top:5px;border-radius:999px;background:var(--muted)}.operation-feedback__dot--running{background:#4f83a8}.operation-feedback__dot--success{background:#4f9f65}.operation-feedback__dot--failed{background:var(--danger)}.operation-feedback__entry-main{display:grid;min-width:0;gap:2px}.operation-feedback__entry-main span{overflow-wrap:anywhere;color:var(--text);font-weight:650}.operation-feedback__entry-main time{color:var(--muted);font-size:11px}.operation-feedback__clear{justify-self:start;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:6px 10px;color:var(--muted);font:inherit;font-size:12px;font-weight:700}.readout{display:grid;gap:5px;min-width:0;min-height:72px;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft);padding:10px}.readout span{color:var(--muted);font-size:12px;font-weight:650;overflow-wrap:anywhere}.readout strong{min-width:0;overflow-wrap:break-word;font-size:14px;font-weight:650;word-break:normal}.data-table-wrap{width:100%;min-width:0;overflow-x:auto;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.ui-data-table,.data-table{width:100%;min-width:720px;border-collapse:collapse;background:var(--surface);color:var(--foreground);font-size:13px}.ui-data-table th,.ui-data-table td,.data-table th,.data-table td{border-bottom:1px solid var(--border);padding:10px 12px;text-align:left;vertical-align:top;overflow-wrap:anywhere}.ui-data-table thead th,.data-table thead th{background:var(--surface-soft);color:var(--muted);font-size:12px;font-weight:650;line-height:1.35}.ui-data-table tbody tr:hover,.data-table tbody tr:hover{background:var(--surface-soft)}.ui-data-table tbody tr:last-child td,.data-table tbody tr:last-child td{border-bottom:0}.game-config-shell{display:grid;grid-template-columns:184px minmax(0,1fr);gap:16px;min-width:0}.game-config-nav{display:grid;align-content:start;gap:6px;min-width:0;border-right:1px solid var(--border);padding-right:12px}.game-config-nav-item{width:100%;min-height:38px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);padding:8px 10px;font-size:13px;font-weight:650;text-align:left;cursor:pointer}.game-config-nav-item:hover:not(:disabled),.game-config-nav-item[aria-current=page]{border-color:var(--border-strong);background:var(--surface-soft);color:var(--foreground)}.game-config-nav-item[aria-current=page]{border-color:#cc785c52;color:var(--primary-hover)}.game-config-content,.game-config-section,.section-copy{display:grid;gap:12px;min-width:0}.section-copy h3,.section-copy p{margin:0}.section-copy h3{font-size:16px;font-weight:650;line-height:1.35}.section-copy p{color:var(--muted);font-size:13px;overflow-wrap:anywhere}.setting-toggle{display:inline-flex;align-items:center;gap:8px;width:-moz-fit-content;width:fit-content;max-width:100%;min-height:38px;color:var(--foreground);font-size:13px;font-weight:650}.setting-toggle input{width:16px;height:16px;accent-color:var(--primary)}.ui-data-table-right{text-align:right!important;font-variant-numeric:tabular-nums}.ui-data-table-left{text-align:left!important}.ui-data-table-center{text-align:center!important}.ui-data-table-empty{color:var(--muted);text-align:center!important}@media(max-width:1120px){.split-grid,.tool-grid,.overview-grid,.workflow-grid,.operations-shell{grid-template-columns:1fr}.operations-feature-rail{position:static}.operations-feature-nav{grid-template-columns:repeat(auto-fit,minmax(132px,1fr))}.metric-grid-four{grid-template-columns:repeat(2,minmax(0,1fr))}.query-form,.game-config-shell{grid-template-columns:1fr}.game-config-nav{grid-template-columns:repeat(4,minmax(0,1fr));border-right:0;border-bottom:1px solid var(--border);padding-right:0;padding-bottom:12px}.game-config-nav-item{text-align:center}}@media(max-width:860px){.auth-shell{padding:16px}.auth-panel{padding:18px}.app-shell{grid-template-columns:1fr}.sidebar{min-height:auto;border-right:0;border-bottom:1px solid var(--border);padding:16px}.nav-list{grid-template-columns:repeat(2,minmax(0,1fr))}.content{padding:16px}.topbar{flex-direction:column;gap:12px}.topbar-actions{justify-content:flex-start}.metric-grid,.metric-grid-four,.readout-grid,.operations-shell{grid-template-columns:1fr}.operations-feature-rail{position:static}.operations-feature-nav{grid-template-columns:1fr}.operations-feature-nav-item{text-align:left}.ui-panel-header{flex-direction:column;align-items:stretch}.ui-panel-actions{justify-content:flex-start}.ui-dialog-header{flex-direction:column;align-items:stretch}.ui-dialog-footer{justify-content:stretch}.ui-dialog-footer .ui-button{width:100%}.game-config-nav{grid-template-columns:1fr}.game-config-nav-item{text-align:left}}
