/* Independent ACP: light workspace, navy navigation, blue actions. */
.acp-site{--bg:#f2f4f8;--surface:#fff;--surface2:#f5f7fb;--text:#1e2a42;--muted:#65738b;--border:#dce2ed;--accent:#315cdf;--danger:#b32d45;--shadow:0 8px 26px #1424430a;background:var(--bg);color:var(--text)}
.acp-site .sidebar{background:#17243f;color:#e7edff;width:250px;border:0;padding:28px 15px 0}.acp-site .brand{padding:0 12px;color:#fff;gap:12px}.acp-site .brand-mark{background:#507afa;clip-path:none;border-radius:9px;width:35px;height:35px;display:grid;place-items:center}.acp-site .brand-mark:empty:before{content:'V';font-size:24px;font-weight:900;color:white}.acp-site .brand small{color:#9aaed2;font-size:8px;letter-spacing:2px}.acp-site .workspace{border:0;border-top:1px solid #ffffff1a;background:none;border-radius:0;margin:25px 10px 12px;padding:20px 0 5px;display:flex;flex-direction:column;align-items:flex-start;gap:7px}.acp-site .workspace>small{font-size:8px;letter-spacing:1.6px;color:#91a6ce}.acp-site .workspace>strong{font-size:14px;color:#fff}.acp-site .nav-label{color:#8ea4cc;font-size:9px;letter-spacing:1px;padding:22px 12px 10px}.acp-site .nav-link{color:#c3cfe6;border-radius:6px;margin:3px 0;font-size:12px;padding:11px 13px;gap:13px}.acp-site .nav-link:hover{background:#253658;color:white}.acp-site .nav-link.active{background:#315cdf;color:#fff;border:0;box-shadow:none}.acp-site .nav-link svg{color:inherit;width:16px}.acp-site .side-footer{background:#101c32;border-top:1px solid #ffffff12;margin:20px -15px 0;padding:18px;color:white}.acp-site .side-footer small,.acp-site .personal-settings{color:#a7bce1}.acp-site .user-avatar{background:#314a76;color:#fff;border-radius:50%}.acp-site .side-footer button{background:#253658;color:#fff;border-color:#3a5075}.acp-site .main{margin-left:250px}.acp-site .topbar{height:76px;background:#fff;border-bottom:1px solid #dce2ed;padding:0 38px}.acp-site .breadcrumbs{color:#65738b}.acp-site .breadcrumbs b{color:#1e2a42}.acp-site .top-actions a{color:#315cdf}.acp-site .environment{background:#edf2ff;border:0;color:#315cdf;font-size:11px;padding:10px 15px;border-radius:5px}.acp-site .content{padding:36px 38px;max-width:1800px}.acp-site h1,.acp-site h2,.acp-site h3{color:#1e2a42}.acp-site .page-heading{margin-bottom:30px;border-bottom:1px solid #dce2ed;padding-bottom:24px}.acp-site .page-heading h1{font-size:29px;letter-spacing:-.8px}.acp-site .panel,.acp-site .metric,.acp-site .server-card{background:#fff;border:1px solid #dce2ed;border-radius:8px;box-shadow:0 3px 15px #14244304}.acp-site .panel-head{background:#fff;border-bottom:1px solid #e6eaf2;border-radius:8px 8px 0 0;padding-top:22px;padding-bottom:19px}.acp-site .panel-head h2{font-size:15px}.acp-site .metric{border-top:3px solid #315cdf;padding:23px}.acp-site .metric-label,.acp-site .meta,.acp-site .subtitle{color:#65738b}.acp-site .metric-value{color:#1e2a42;font-size:32px}.acp-site input,.acp-site select,.acp-site textarea{background:#fff;color:#1e2a42;border:1px solid #cbd4e4;border-radius:5px}.acp-site input:focus,.acp-site textarea:focus,.acp-site select:focus{outline:2px solid #315cdf45;border-color:#315cdf}.acp-site button{background:#f4f6fb;border:1px solid #cbd4e4;color:#33466b;border-radius:5px}.acp-site button:hover{background:#e8eefb}.acp-site .primary{background:#315cdf;border-color:#315cdf;color:white;box-shadow:none}.acp-site .primary:hover{background:#234cce}.acp-site .ghost{background:transparent}.acp-site th{background:#f5f7fb;color:#5b6a84;border-color:#dce2ed;font-size:10px;letter-spacing:.5px}.acp-site td{border-color:#e7ebf3;color:#25334b}.acp-site tbody tr:hover{background:#f5f8ff}.acp-site .tabs{border-color:#dce2ed;gap:25px}.acp-site .tab{color:#65738b}.acp-site .tab.active{color:#315cdf;border-color:#315cdf}.acp-site .profile-hero{background:#e9effc;border:1px solid #cddaf3;border-radius:8px;color:#1e2a42}.acp-site .profile-id{color:#65738b}.acp-site .calendar-day{background:#fff;border-color:#e0e6ef;color:#27354e}.acp-site .calendar-day.today{background:#eef3ff;box-shadow:inset 0 0 0 1px #315cdf}.acp-site .calendar-day.muted{background:#f5f7fb;color:#91a0b7}.acp-site .calendar-weekdays{color:#65738b}.acp-site .todo-row,.acp-site .content-row{border-color:#dce2ed}.acp-site .pill{border:0}.acp-site .pill.green{background:#e3f4ec;color:#236349}.acp-site .pill.red{background:#fbe9ee;color:#a32442}.acp-site .pill.purple{background:#eee9fc;color:#6845a7}.acp-site .pill.yellow{background:#fff2d8;color:#845815}.acp-site .toolbar{background:#f5f7fb;border-radius:6px;padding:14px}.acp-site dialog{background:#fff;border-color:#cbd4e4;color:#1e2a42;box-shadow:0 25px 100px #17243f40}.acp-site dialog::backdrop{background:#17243f88}.acp-site .error{color:#b32d45}.acp-site .login-wrap{background:#edf1f7;position:relative;isolation:isolate}.acp-site .login-wrap:before{content:'VIPECITY / TEAM';position:absolute;left:0;top:0;bottom:0;width:38%;background:#17243f;color:#91a8d2;padding:55px 35px;font:11px monospace;letter-spacing:3px;z-index:-1}.acp-site .login-card{background:#fff;border:1px solid #dce2ed;border-radius:10px;box-shadow:0 25px 70px #17243f18;padding:38px;width:min(450px,calc(100% - 32px))}.acp-site .login-card .brand{color:#1e2a42;padding:0;margin-bottom:35px}.acp-site .login-card .brand small{color:#65738b}.acp-site .login-card .eyebrow{color:#315cdf}.acp-site .login-card h1{font-size:27px}.acp-site .login-card .fine-print{color:#65738b}.acp-site :focus-visible{outline:3px solid #7598ff;outline-offset:3px}.acp-site .rank-card{background:#fff;border-color:#dce2ed}.acp-site .empty-state{color:#65738b}.acp-site .note{background:#f5f7fb;border-color:#dce2ed}.acp-site .nav-count{background:#d94058;color:#fff}.acp-site .danger,.acp-site .missing-evidence{color:#a32442}.acp-site .rich-toolbar{background:#edf1f8;border-color:#cbd4e4}.acp-site #toast{background:#17243f;color:#fff;border-color:#315cdf}
@media(max-width:1100px){.acp-site .sidebar{width:225px}.acp-site .main{margin-left:225px}.acp-site .content{padding:25px}.acp-site .topbar{padding:0 25px}}
@media(max-width:760px){.acp-site .sidebar{width:250px;z-index:40}.acp-site .main{margin-left:0}.acp-site .content{padding:22px 15px}.acp-site .topbar{height:62px;padding:0 15px}.acp-site .top-actions .environment{display:none}.acp-site .login-wrap:before{width:100%;height:35%;bottom:auto;padding:25px}.acp-site .page-heading h1{font-size:24px}.acp-site .login-card{padding:28px}.acp-site .panel{overflow:auto}}
.acp-site .settings-group{border:0;border-top:1px solid #dce2ed;margin:0 0 35px;padding:25px 0 0;min-width:0}.acp-site .settings-group legend{font-size:17px;font-weight:700;padding-right:20px;color:#315cdf}

.acp-site .player-cell strong{color:#24334a}.acp-site .pill.green{color:#126c40;background:#e2f5e8}.acp-site .pill.red{color:#b62d37;background:#ffe7e9}.acp-site tr[data-row-link]{cursor:pointer}.acp-site tr[data-row-link]:hover{background:#edf2f9}.log-ban{color:#c62c3b;font-weight:700}.log-mute{color:#967000;font-weight:700}.log-warn{color:#c36714;font-weight:700}.log-join{color:#17814b;font-weight:700}.log-quit{color:#c62c3b;font-weight:700}.evidence-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.evidence-card{background:#f1f4f9;border-radius:10px;padding:16px;margin:12px 0}.evidence-card img{max-width:320px;max-height:220px;object-fit:contain}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px}.media-grid img{width:100%;height:160px;object-fit:cover}.rich-editable{min-height:200px;background:#fff;border:1px solid #b7c1d0;border-radius:8px;padding:16px;color:#1d293b;white-space:pre-wrap}

/* Continuous two-week calendar */
.calendar-scroll{overflow-x:auto;padding:0 0 14px}.calendar-timeline{display:grid;grid-template-columns:repeat(14,minmax(76px,1fr));gap:6px 0;min-width:1064px;padding:12px;align-items:start}.calendar-date{grid-row:1;display:grid;gap:8px;padding:12px 8px;border-bottom:1px solid var(--border,#dce2e9);text-align:center}.calendar-date.today{background:#e5edff;border-radius:8px;color:#244b9c}.calendar-span{margin:0 3px;padding:9px 10px;border-radius:6px;background:#edf2fb;color:#24334a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px;min-width:0}.calendar-empty{padding:0 24px;color:#64748b}

/* Two stacked calendar weeks with continuous event bars */
.calendar-weeks{min-width:630px;border:1px solid #dce2e9;border-radius:10px;overflow:hidden;margin:12px}.calendar-week{position:relative;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:min-content;gap:4px 0;min-height:136px;padding-bottom:22px;align-content:start;background:repeating-linear-gradient(to right,transparent 0,transparent calc(100% / 7 - 1px),#e5e9f0 calc(100% / 7 - 1px),#e5e9f0 calc(100% / 7))}.calendar-week+.calendar-week{border-top:1px solid #dce2e9}.calendar-week .calendar-date{display:flex;justify-content:space-between;gap:5px;padding:10px 8px;font-size:12px}.calendar-week .calendar-date.today{border-radius:0}.calendar-week .calendar-span{padding:3px 7px;border-radius:4px;font-size:11px;line-height:18px;margin:0 1px}.calendar-span.continues-before{border-top-left-radius:0;border-bottom-left-radius:0}.calendar-span.continues-after{border-top-right-radius:0;border-bottom-right-radius:0}

.mail-preview{display:block;width:100%;height:60vh;border:1px solid #dde2e9;border-radius:8px;margin:16px 0}#mail-templates textarea[name$="Html"]{font:12px/1.6 Consolas,monospace}
/* Case workspace: clear application/response split and visible decisions. */
.acp-site .case-sheet{background:#fff;border:1px solid var(--border);border-radius:10px;margin-top:20px;padding:26px}.case-header{display:flex;align-items:center;gap:20px;padding-bottom:25px;border-bottom:1px solid var(--border)}.case-skin{width:52px;height:92px;object-fit:contain}.case-header h2{margin:0 0 6px}.case-header p{color:var(--muted);margin:0 0 10px}.case-links{margin-left:auto;display:flex;align-items:center;gap:16px}.case-links button{display:flex;align-items:center;gap:8px}.case-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:28px 0;border-bottom:1px solid var(--border)}.case-facts small{display:block;text-transform:uppercase;letter-spacing:.6px;font-size:10px;color:var(--muted);margin-bottom:9px}.case-facts strong{font-size:13px;overflow-wrap:anywhere}.case-contact{padding:15px 0;margin:0;border-bottom:1px solid var(--border)}.case-columns{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding-top:28px}.case-columns section{min-width:0}.acp-site .case-columns h3{text-transform:uppercase;font-size:11px;letter-spacing:.8px;color:var(--muted);margin:0 0 15px}.case-text{white-space:pre-wrap;overflow-wrap:anywhere;background:#f4f6fa;border:1px solid #e3e8f1;border-radius:7px;padding:20px;line-height:1.8;min-height:280px}.acp-site #case-response textarea{width:100%;min-height:280px;line-height:1.8;padding:20px;resize:vertical}.decision{font-size:11px;letter-spacing:.4px}.decision.pending{color:#b9650a}.decision.accepted{color:#17804b}.decision.rejected{color:#b02c3e}.case-buttons{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.acp-site .case-accept{color:#116d40;background:#e3f4eb;border-color:#b8dac9}.acp-site .case-reject{color:#a32d40;background:#fcebef;border-color:#e6c4cb}.case-hint{font-size:12px;line-height:1.7;color:var(--muted)}.case-history{padding:25px;min-width:min(420px,75vw)}.case-history article{border-left:2px solid #cbd5eb;padding:0 0 12px 18px;margin:24px 0}.case-history small{display:block;color:var(--muted);margin-top:5px}.case-history p{margin:9px 0}.case-history button{float:right}@media(max-width:950px){.case-columns{grid-template-columns:1fr}.case-facts{grid-template-columns:1fr 1fr}.case-header{flex-wrap:wrap}.case-links{margin-left:0}.acp-site .case-sheet{padding:18px}}
.admin-workspaces{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:28px}.admin-workspaces>a{display:flex;align-items:center;gap:16px;padding:22px;background:#fff;border:1px solid #dce2ed;border-radius:10px}.admin-workspaces span{display:grid;gap:6px;flex:1}.admin-workspaces small{color:#65738b}.convention-tabs{display:flex;gap:22px;overflow-x:auto;border-bottom:1px solid #dce2ed;margin-bottom:22px}.convention-tabs a{white-space:nowrap;padding:14px 4px;color:#63738b;font-size:12px;border-bottom:2px solid transparent}.convention-tabs a.active{border-color:#315cdf;color:#263e6b;font-weight:700}.convention-tabs small{margin-left:4px;color:#8795ab}.convention-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:26px}.convention-card{border:1px solid #dce2ed;border-radius:12px;overflow:hidden;background:#fff;transition:transform .15s,border-color .15s}.convention-card:hover{transform:translateY(-2px);border-color:#8da7e3}.convention-card>a{display:block;color:inherit}.convention-card img,.convention-placeholder{width:100%;aspect-ratio:16/9;object-fit:cover}.convention-placeholder{display:grid;place-items:center;background:#e9edf5;color:#8c9fbb}.convention-placeholder svg{width:44px;height:44px;stroke-width:1}.convention-card a>div:not(.convention-placeholder){padding:20px}.acp-site .convention-card h2{font-size:15px;margin:0 0 9px}.convention-card p{font-size:12px;color:#65738b;line-height:1.7;margin:0}.convention-card footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e7ebf3;padding:12px 20px}.convention-article{max-width:960px;margin:32px auto}.convention-article header{margin-bottom:28px}.convention-hero{width:100%;max-height:380px;object-fit:cover;border-radius:12px;margin-bottom:32px}.convention-body{font-size:15px;line-height:1.9;overflow-wrap:anywhere}.acp-site .convention-body h2{font-size:23px;color:#315cdf;margin-top:32px}.convention-body table,.rich-editable table{border-collapse:collapse;width:100%;margin:24px 0;font-size:13px;table-layout:fixed}.convention-body td,.convention-body th,.rich-editable td,.rich-editable th{border:1px solid #d8dfe9;padding:12px;overflow-wrap:anywhere}.convention-body details,.rich-editable details{background:#fff;border:1px solid #dce2ed;border-radius:8px;padding:18px;margin:20px 0}.convention-body summary{cursor:pointer;font-weight:700}.convention-body blockquote,.rich-editable blockquote{border-left:3px solid #d69b29;background:#fff3d8;padding:20px;margin:24px 0;border-radius:5px}.team-title{display:block;margin:8px 0;font-size:13px}.team-badge{display:inline-block;border:1px solid #ded9b0;border-radius:12px;padding:3px 9px}.team-tasks{font-size:13px;line-height:1.7;color:#6b6d67;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:1150px){.convention-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.convention-grid,.admin-workspaces{grid-template-columns:1fr}.convention-article{margin-top:24px}}

#at-preview-form label,#at-execute-form label{color:#41516b}
#at-preview{margin-top:28px}
#at-preview hr{border:0;border-top:1px solid #dce3ee;margin:24px 0}
#at-preview .case-columns{background:#f5f7fb;border:1px solid #dce3ee;border-radius:12px;padding:20px;margin:20px 0;gap:24px}
#at-preview .case-columns h3{font-size:20px;text-transform:none;letter-spacing:0;color:#172942;margin:8px 0}
#at-preview .mono{overflow-wrap:anywhere}
#at-execute-form{margin-top:24px;padding-top:20px;border-top:1px solid #dce3ee}
#at-execute-form input[type=checkbox]{width:auto;display:inline-block;margin-right:8px}

/* User-selected dark workspace */
.command-group summary{padding:20px;cursor:pointer;font-weight:700}.command-group summary small{margin-left:12px;font-weight:400;color:var(--muted)}
html[data-theme="dark"] .acp-site{color-scheme:dark;--bg:#101318;--surface:#191e26;--surface2:#222936;--text:#e5ebf5;--muted:#a2aec3;--border:#323c4c;--accent:#8daeff;background:var(--bg);color:var(--text)}
html[data-theme="dark"] .acp-site :is(.topbar,.panel,.panel-head,.metric,.server-card,.rank-card,.case-sheet,.login-card,dialog,.rich-editable,input,textarea,select){background:var(--surface);color:var(--text);border-color:var(--border);box-shadow:none}
html[data-theme="dark"] .acp-site :is(h1,h2,h3,h4,td,.metric-value,.player-cell strong,.breadcrumbs b,.profile-hero,.case-text,.evidence-card,.stat-card){color:var(--text)}
html[data-theme="dark"] .acp-site :is(th,.toolbar,.note,.case-text,.evidence-card,.profile-hero,.calendar-day,.calendar-span,.rich-toolbar,.stat-card,.content-row,.ticket-summary,.ticket-message,.onboarding-card){background:var(--surface2);border-color:var(--border)}
html[data-theme="dark"] .acp-site :is(td,th,.tabs,.page-heading,.settings-group,.case-header,.case-facts,.case-contact,.todo-row){border-color:var(--border)}
html[data-theme="dark"] .acp-site :is(.muted,.subtitle,.meta,.metric-label,.breadcrumbs,.tab,th,.empty-state,.profile-id){color:var(--muted)}
html[data-theme="dark"] .acp-site :is(a,.tab.active,.top-actions a,.settings-group legend){color:var(--accent)}
html[data-theme="dark"] .acp-site button{background:#293347;color:#e5ebf5;border-color:#44516a}html[data-theme="dark"] .acp-site .primary{background:#315cdf;color:white}
html[data-theme="dark"] .acp-site tbody tr:hover{background:#273349}html[data-theme="dark"] .acp-site .calendar-day.today{background:#283653}html[data-theme="dark"] .acp-site .calendar-day.muted{background:#171c25}
html[data-theme="dark"] .acp-site .decision.pending{color:#ffb860}html[data-theme="dark"] .acp-site .decision.accepted{color:#51d99c}html[data-theme="dark"] .acp-site .decision.rejected{color:#ff8297}

html[data-theme="dark"] .acp-site .environment{background:#293347}html[data-theme="dark"] .acp-site :is(.training-card,.training-review,.training-reading fieldset,.training-empty){background:var(--surface);border-color:var(--border)}html[data-theme="dark"] .acp-site :is(.training-feedback,.training-review blockquote,.training-option:has(input:checked)){background:var(--surface2);color:var(--text)}html[data-theme="dark"] .acp-site :is(.training-card p,.training-reading p,.training-tabs a){color:var(--muted)}html[data-theme="dark"] .acp-site .training-option{border-color:var(--border)}
