:root{--color-page:#18181c;--color-surface:#212129;--color-surface-deep:#101014;--color-border:#343244;--color-border-strong:#3a404b;--color-text:#d9dce5;--color-text-soft:#bcc2cf;--color-text-muted:#9298a6;--color-primary:#675086;--color-primary-hover:#765da0;--color-primary-border:#8065a3;--color-primary-border-hover:#9678c2;--color-sql-action:#f8b803;--color-sql-action-hover:#ffd34d;--color-on-sql-action:#1c1c1a;--color-success:#8fbf9a;--color-result-failed:#d59a9a}body{background:var(--color-page);color:var(--color-text);margin:0;font-family:sans-serif}h1,h2,h3{color:var(--color-text)}p,span,label,li,td{color:var(--color-text-soft)}p,li,td{line-height:1.65}.text-block{color:var(--color-text-soft);white-space:pre-line;line-height:1.75}.text-block+.text-block{margin-top:14px}.text-block--theory{color:var(--color-text)}.sql-task>h2{margin-top:0;margin-bottom:18px}.task-content-block{background:#10101457;border:1px solid #3a404bc7;border-left-width:4px;border-radius:8px;margin-top:16px;padding:16px 18px 16px 20px;position:relative}.task-content-block:first-of-type{margin-top:0}.task-content-block--story{border-left-color:#8f9ab9b8}.task-content-block--theory{background:#67508621;border-color:#8065a361 #8065a361 #8065a361 #9678c2c7}.task-content-block--assignment{background:#f8b80314;border-color:#d5b85a47 #d5b85a47 #d5b85a47 #d5b85a}.task-content-block__label{color:var(--color-text-muted);letter-spacing:0;text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:800;line-height:1;display:inline-flex}.task-content-block--assignment .task-content-block__label{color:#d5b85a}.task-content-block .text-block{margin:0}.task-content-block--assignment .text-block{color:var(--color-text);font-weight:600}th{color:var(--color-text)}small,.case-number,.text-muted{color:var(--color-text-muted)}main{max-width:1000px;margin:0 auto;padding:24px 16px}header{border-bottom:2px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}section{background:var(--color-surface);border-radius:15px;margin-top:10px;padding:25px}.case-intro{padding:32px}.case-intro h2{margin-top:0;margin-bottom:18px;font-size:30px;line-height:1.2}.case-intro__text{max-width:760px;margin:0 0 22px;font-size:18px}textarea{box-sizing:border-box;background:var(--color-surface-deep);width:100%;min-height:180px;color:var(--color-text);border:1px solid var(--color-border-strong);resize:vertical;border-radius:8px;margin-top:12px;padding:16px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:16px;line-height:1.5;display:block}button{background:var(--color-primary);color:#f7f1ff;border:1px solid var(--color-primary-border);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;min-height:44px;margin-top:12px;padding:12px 20px;font-weight:700;line-height:1;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:inline-flex}button+button{margin-left:10px}button:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-border-hover)}button:focus-visible{outline-offset:2px;outline:3px solid #9d7acc6b}button:disabled{color:#837b91;cursor:not-allowed;opacity:.75;background:#302d39;border-color:#464050}button:disabled:hover{background:#302d39;border-color:#464050}.task-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.task-actions button{margin-top:0}.button-primary{background:var(--color-sql-action);color:var(--color-on-sql-action);border-color:var(--color-sql-action)}.button-primary:hover:not(:disabled){background:var(--color-sql-action-hover);border-color:var(--color-sql-action-hover)}.button-primary:focus-visible{outline-color:#f8b80359}.error-message{color:#f3b8bf;background:#3a1f22;border:1px solid #7a343d;border-radius:8px;margin-top:12px;padding:10px 12px}.success-message{color:#bfe8c8;background:#3458416b;border:1px solid #669c74ad;border-radius:8px;margin-top:12px;padding:10px 12px}.sql-result{border:1px solid var(--color-border-strong);border-radius:8px;margin-top:16px;padding:0;overflow-x:auto}.sql-result table{border-collapse:collapse;width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:14px}.sql-result th,.sql-result td{text-align:left;white-space:nowrap;border-bottom:1px solid #343a44;padding:10px 12px}.sql-result th{background:var(--color-surface-deep);color:#d5b85a;font-weight:700}.sql-result tr:last-child td{border-bottom:0}.empty-result{border:1px solid var(--color-border-strong);color:var(--color-text-muted);border-radius:8px;margin-top:16px;padding:12px 14px}.success-label{color:var(--color-success);letter-spacing:.02em;font-weight:700}.task-result-failed{color:var(--color-result-failed)}.admin-shell__header{padding:10px}.admin-shell__account{align-items:center;gap:16px;display:flex}.admin-shell__logout{margin-top:0}.admin-page{max-width:1000px}.admin-page__header{padding:12px 0 10px}.admin-page__eyebrow{color:var(--color-primary-border-hover);text-transform:uppercase;margin:0 0 8px;font-size:13px;font-weight:700}.admin-page__header h1{margin:0;font-size:34px;line-height:1.15}.admin-page__description{max-width:620px;color:var(--color-text-soft);margin:12px 0 0}.case-form{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;margin-top:24px;padding:28px}.form-section{border-top:1px solid var(--color-border);padding:22px 0}.form-section:first-child{border-top:0;padding-top:0}.form-section__header{margin-bottom:18px}.form-section__header h2{margin:0;font-size:20px;line-height:1.25}.form-section__header p{max-width:620px;color:var(--color-text-muted);margin:6px 0 0;font-size:14px}.case-form .form-section+.form-section{margin-top:4px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.form-field{gap:8px;display:grid}.form-field--wide{margin-top:18px}.form-field span{color:var(--color-text);font-size:14px;font-weight:700}input,select,textarea{box-sizing:border-box;background:var(--color-surface-deep);width:100%;color:var(--color-text);border:1px solid var(--color-border-strong);font:inherit;border-radius:8px}input,select{min-height:44px;padding:10px 12px}select{cursor:pointer}.game-data-section{gap:16px;display:grid}.game-data-section__header{margin-bottom:0}.game-table-builder{border:1px solid var(--color-border);background:#10101457;border-radius:8px;gap:14px;padding:16px;display:grid}.game-table-builder h3,.game-table-builder h4{margin:0}.game-table-builder__name{max-width:360px}.game-table-column-row{grid-template-columns:minmax(160px,1fr) minmax(140px,180px) auto;align-items:center;gap:10px;display:grid}.game-table-column-row label{min-height:44px;color:var(--color-text-soft);white-space:nowrap;align-items:center;gap:8px;margin:0;display:inline-flex}.game-table-column-row input[type=checkbox]{width:auto;min-height:0;margin:0}.game-table-wrap{border:1px solid var(--color-border);background:var(--color-surface-deep);border-radius:8px;width:100%;overflow-x:hidden}.game-table-list,.game-data-table{border-collapse:collapse;table-layout:fixed;width:100%}.game-table-list th,.game-table-list td,.game-data-table th,.game-data-table td{border-bottom:1px solid var(--color-border);text-align:left;vertical-align:middle;overflow-wrap:anywhere;padding:11px 12px}.game-table-list tr:last-child td,.game-data-table tr:last-child td{border-bottom:0}.game-table-list th,.game-data-table th{color:#d5b85a;text-transform:uppercase;background:#ffffff08;font-size:12px;font-weight:800}.game-data-table th>span{display:block}.icon-button{width:34px;height:34px;min-height:0;color:var(--color-text-soft);border:1px solid var(--color-border);background:#ffffff0a;border-radius:6px;justify-content:center;align-items:center;margin-top:0;padding:0;display:inline-flex}.icon-button--stacked{width:28px;height:28px;margin-top:8px}.game-table-list th:nth-child(2),.game-table-list td:nth-child(2){text-align:right;width:110px}.game-table-list th:nth-child(3),.game-table-list td:nth-child(3){text-align:right;width:190px}.game-table-list code{color:var(--color-text);font-size:14px}.game-table-list__button{margin-top:0}button.game-table-list__button:not(.icon-button){min-height:34px;padding:8px 12px;font-size:13px}.game-table-list__button+.game-table-list__button{margin-left:8px}.game-data-table .game-table-list__button+.game-table-list__button{margin-top:0;margin-left:8px}.game-data-table th:first-child,.game-data-table td:first-child{width:64px}.game-data-table--editable th:last-child,.game-data-table--editable td:last-child:not([colspan]){text-align:right;width:92px}.game-data-table--editable td:last-child:not([colspan]){white-space:nowrap;font-family:inherit}.game-table-view{gap:10px;display:grid}.game-table-view h3{margin:4px 0 0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:18px}.game-table-view__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.game-table-view__actions{flex-wrap:wrap;gap:10px;display:flex}.game-table-view__actions button{margin-top:0}.game-table-view__add-row{justify-self:start;margin-top:0}.game-row-form{border:1px solid var(--color-border);background:#10101457;border-radius:8px;gap:12px;padding:16px;display:grid}.game-row-form h4{margin:0}.game-bulk-form p{color:var(--color-text-muted);margin:0}.game-bulk-form__textarea{white-space:pre;min-height:220px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px;line-height:1.55}.game-bulk-form__preview{gap:12px;display:grid}.game-row-form--inline{font-family:sans-serif}.game-row-form__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}@media (width<=720px){.game-row-form__grid{grid-template-columns:1fr}}.game-data-table td{color:var(--color-text-soft);white-space:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:14px}.game-data-table td[colspan]{color:var(--color-text-muted);text-align:center;white-space:normal;font-family:inherit}.game-table-state{color:var(--color-text-muted);margin:0}@media (width<=720px){.game-table-column-row{grid-template-columns:1fr}.game-table-list__button{width:100%;padding-left:8px;padding-right:8px}.game-table-list__button+.game-table-list__button{margin-top:8px;margin-left:0}}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}input:focus,select:focus,textarea:focus{border-color:var(--color-primary-border-hover);outline:3px solid #9d7acc47}.checkbox-group{flex-wrap:wrap;gap:18px;margin-top:18px;display:flex}.checkbox-field{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;display:inline-flex}.checkbox-field:hover span{color:var(--color-text)}.checkbox-field span{color:var(--color-text-soft);font-size:14px;font-weight:700}.checkbox-field input[type=checkbox]{width:18px;height:18px;min-height:0;accent-color:var(--color-primary-hover);cursor:pointer;margin:0;padding:0}.checkbox-field input[type=checkbox]:focus-visible{outline-offset:2px;outline:3px solid #9d7acc52}.form-actions{justify-content:flex-end;margin-top:22px;display:flex}.form-actions--split{justify-content:flex-end;align-items:center;gap:12px}.form-actions--split button{margin-top:0}.button-danger{color:#f0b8c0;background:#7e364257;border-color:#bf5c6d8c}.button-danger:hover:not(:disabled){background:#973f4f7a;border-color:#da7384b8}@media (width<=720px){.form-section{border-top:1px solid var(--color-border);padding:22px 0}.form-section:first-child{border-top:0;padding-top:0}.form-section__header{margin-bottom:18px}.form-section__header h2{margin:0;font-size:20px;line-height:1.25}.form-section__header p{max-width:620px;color:var(--color-text-muted);margin:6px 0 0;font-size:14px}.case-form .form-section+.form-section{margin-top:4px}.form-grid{grid-template-columns:1fr}.case-form{padding:22px}}.admin-page__header--row{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.admin-link-button{color:#f7f1ff;background:var(--color-primary);border:1px solid var(--color-primary-border);border-radius:8px;justify-content:center;align-items:center;min-height:44px;margin-top:4px;padding:12px 18px;font-weight:700;text-decoration:none;display:inline-flex}.admin-link-button:hover{background:var(--color-primary-hover);border-color:var(--color-primary-border-hover)}.admin-link-button--muted{min-height:40px;color:var(--color-text-soft);background:#6750862e;border-color:#8065a385;margin-top:0;padding:10px 14px;font-size:14px}.admin-link-button--muted:hover{border-color:var(--color-primary-border-hover);color:var(--color-text);background:#765da04d}.admin-state,.admin-empty-state{margin-top:24px}.admin-empty-state{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;padding:28px}.admin-empty-state h2{margin:0 0 8px;font-size:22px}.admin-empty-state p{margin:0}.case-list{gap:14px;margin-top:24px;display:grid}.case-list-item{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;gap:16px;padding:22px;display:grid}.case-list-item__main h2{margin:0 0 8px;font-size:22px;line-height:1.25}.case-list-item__main p{max-width:680px;margin:0}.case-list-item__meta{border-top:1px solid var(--color-border);grid-template-columns:minmax(220px,1fr) minmax(120px,.5fr) minmax(140px,.5fr);align-items:center;gap:16px;padding-top:14px;display:grid}.case-list-item__actions{border-top:1px solid var(--color-border);flex-wrap:wrap;gap:10px;padding-top:14px;display:flex}.case-meta-item{text-align:center;justify-items:center;gap:7px;min-width:0;display:grid}.case-meta-item__label{color:var(--color-text-muted);text-transform:uppercase;font-size:12px;font-weight:700;line-height:1.3;display:block}.case-meta-item__value{color:var(--color-text-soft);overflow-wrap:anywhere;font-size:14px;line-height:1.4;display:block}.case-meta-item__value--active{color:var(--color-success);font-weight:700}.case-meta-item__value--inactive{color:var(--color-result-failed);font-weight:700}.case-tasks{border-top:1px solid var(--color-border);padding-top:16px}.case-tasks__header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.case-tasks__header h3{margin:0;font-size:16px;line-height:1.3}.case-tasks__header span{color:var(--color-text-muted);font-size:13px;font-weight:700}.case-tasks__list{gap:8px;display:grid}.case-task-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.case-task-link{min-height:44px;color:var(--color-text-soft);background:#67508624;border:1px solid #0000;border-radius:8px;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;padding:9px 12px;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:grid}.case-task-link:hover{border-color:var(--color-primary-border);color:var(--color-text);background:#765da03d}.case-task-row__actions{align-items:center;gap:6px;display:inline-flex}.icon-button{width:34px;min-width:34px;height:34px;min-height:34px;color:var(--color-text-soft);background:#6750862e;border-color:#8065a385;border-radius:8px;margin-top:0;padding:0;font-size:18px;font-weight:800}.icon-button:hover:not(:disabled){color:var(--color-text);border-color:var(--color-primary-border-hover);background:#765da057}.icon-button:disabled{color:#625b6e;background:#302d398c;border-color:#464050b3}.case-task-link__position{width:30px;height:30px;color:var(--color-primary-border-hover);background:#10101473;border-radius:8px;justify-content:center;align-items:center;font-size:13px;font-weight:800;display:inline-flex}.case-task-link__title{color:inherit;overflow-wrap:anywhere;font-size:14px;font-weight:700;line-height:1.35}@media (width<=780px){.admin-page__header--row{display:grid}.case-list-item__meta,.case-task-row{grid-template-columns:1fr}.case-task-row__actions{justify-content:flex-end}}.schema-panel{margin:18px 0 14px}.schema-panel__toggle{color:var(--color-text);background:#6750862e;border-color:#9781b66b;margin-top:0}.schema-panel__toggle:hover:not(:disabled){background:#8065a647;border-color:#b196d89e}.database-schema{border:1px solid var(--color-border);background:#101218b8;border-radius:8px;margin-top:12px;padding:16px}.database-schema h3{color:var(--color-heading);margin:0 0 14px;font-size:18px}.database-schema__tables{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.database-schema__table{background:#ffffff08;border:1px solid #9781b63d;border-radius:8px;padding:12px}.database-schema__table h4{color:var(--color-heading);margin:0 0 8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:15px}.database-schema__table ul{margin:0;padding-left:18px}.database-schema__table li{color:var(--color-text-muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:14px;line-height:1.65}.task-helper-actions{flex-wrap:wrap;align-items:center;gap:10px;margin:18px 0 14px;display:flex}.task-helper-actions .schema-panel{margin:0}.hint-button{color:var(--color-text);background:#58706038;border-color:#81a48d6b;margin-top:0}.hint-button:hover:not(:disabled){background:#68887352;border-color:#97bea499}.hints-panel{background:#121f18ad;border:1px solid #81a48d57;border-radius:8px;margin:0 0 14px;padding:14px 16px}.hints-panel h3{color:var(--color-heading);margin:0 0 10px;font-size:17px}.hints-panel ol{margin:0;padding-left:22px}.hints-panel li{color:var(--color-text-soft);padding-left:4px;line-height:1.65}.hints-panel li+li{margin-top:8px}.story-step{background:linear-gradient(#67508629,#212129eb);border:1px solid #8f9ab93d}.story-step__eyebrow{color:#d5b85a;letter-spacing:0;text-transform:uppercase;margin:0 0 10px;font-size:12px;font-weight:800}.story-step h2{margin-top:0;margin-bottom:18px}.story-step__text{max-width:780px}.case-story-steps{border-top:1px solid var(--color-border);padding-top:16px}.case-story-steps__empty{color:var(--color-text-muted);margin:0;font-size:14px}.case-story-step-link{min-height:44px;color:var(--color-text-soft);background:#58706021;border:1px solid #81a48d42;border-radius:8px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 12px;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:grid}.case-story-step-link:hover{color:var(--color-text);background:#68887338;border-color:#97bea480}.case-story-step-link__status{color:var(--color-text-muted);text-transform:uppercase;font-size:12px;font-weight:800}.case-story-step-link__status--active{color:var(--color-success)}.case-story-step-link__status--inactive{color:var(--color-result-failed)}.story-step-form__checkbox{margin-top:18px}@media (width<=780px){.case-story-step-link{grid-template-columns:42px minmax(0,1fr)}.case-story-step-link__status{grid-column:2}}.button-secondary{color:var(--color-text);background:#6750863d;border-color:#9a84ba6b}.button-secondary:hover:not(:disabled){background:#7e60a657;border-color:#b29ad494}.case-closed-mark{color:#d7c58e;letter-spacing:0;text-align:center;background:#c3b2871f;border:1px solid #c3b28761;border-radius:8px;margin-top:22px;padding:14px 16px;font-weight:700}.case-final{padding:32px}.case-final h2{margin-top:0;margin-bottom:18px}.case-final__text{max-width:780px}.case-final__next-button{margin-top:16px}.case-final__next-button:disabled{color:#b9afca;opacity:1;background:#6750862e;border-color:#9a84ba52}.landing-page{max-width:1120px;padding:32px 18px 56px}.landing-hero{background:linear-gradient(135deg,#212129f5,#141419fa);border:1px solid #8065a347;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(320px,430px);align-items:stretch;gap:28px;min-height:520px;padding:42px;display:grid}.landing-hero__content{flex-direction:column;justify-content:center;max-width:620px;display:flex}.landing-hero__eyebrow,.landing-section__eyebrow{color:#d5b85a;text-transform:uppercase;margin:0 0 12px;font-size:13px;font-weight:800}.landing-hero h1{margin:0;font-size:64px;line-height:1}.landing-hero__lead{max-width:560px;color:var(--color-text-soft);margin:22px 0 0;font-size:20px;line-height:1.65}.landing-hero__button{background:var(--color-primary);color:#f7f1ff;border:1px solid var(--color-primary-border);border-radius:8px;justify-content:center;align-items:center;width:fit-content;min-height:46px;margin-top:28px;padding:13px 22px;font-weight:800;line-height:1;text-decoration:none;display:inline-flex}.landing-hero__button:hover{background:var(--color-primary-hover);border-color:var(--color-primary-border-hover)}.case-file-preview{border:1px solid var(--color-border-strong);background:#101014c7;border-radius:8px;align-self:center;padding:22px;box-shadow:0 18px 45px #00000047}.case-file-preview__topline{color:var(--color-text-muted);text-transform:uppercase;justify-content:space-between;gap:16px;font-size:12px;font-weight:800;display:flex}.case-file-preview h2{margin:16px 0;font-size:24px}.case-file-preview pre{color:#e0d5af;background:#0e0e12;border:1px solid #d5b85a3d;border-radius:8px;margin:0;padding:16px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:14px;line-height:1.6;overflow-x:auto}.case-file-preview__table{border:1px solid var(--color-border-strong);background:var(--color-border-strong);border-radius:8px;grid-template-columns:minmax(0,1fr) 88px;gap:1px;margin-top:16px;display:grid;overflow:hidden}.case-file-preview__table span{color:var(--color-text-soft);background:#212129f5;padding:9px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px}.case-file-preview__table span:nth-child(-n+2){color:#d5b85a;font-weight:800}.landing-section{border-radius:8px;margin-top:18px;padding:30px}.landing-section h2{margin-top:0}.landing-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.landing-steps article{background:#10101452;border:1px solid #3a404bc7;border-radius:8px;padding:18px}.landing-steps span{color:#d5b85a;font-weight:900}.landing-steps h3{margin:12px 0 8px}.landing-steps p{margin:0}.landing-case{grid-template-columns:minmax(0,1fr) minmax(260px,360px);align-items:center;gap:24px;display:grid}.landing-case p:last-child{max-width:650px;margin-bottom:0}.landing-tags{flex-wrap:wrap;gap:8px;display:flex}.landing-tags span{color:var(--color-text-soft);background:#6750862e;border:1px solid #9a84ba4d;border-radius:8px;padding:8px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px}.landing-final-cta{text-align:center}.landing-final-cta .landing-hero__button{margin-left:auto;margin-right:auto}@media (width<=820px){.landing-hero,.landing-case,.landing-steps{grid-template-columns:1fr}.landing-hero{min-height:auto;padding:28px}.landing-hero h1{font-size:44px}.landing-hero__lead{font-size:18px}}.public-layout{flex-direction:column;min-height:100vh;display:flex}.public-layout>main{box-sizing:border-box;flex:1;width:100%}.public-footer{box-sizing:border-box;border-top:1px solid var(--color-border);width:min(100% - 36px,1120px);color:var(--color-text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 24px;margin:24px auto 0;padding:20px 0 28px;font-size:13px;display:flex}.public-footer__seller{text-align:center;flex-basis:100%}.public-footer a,.seller-page>a{color:var(--color-text-soft)}.public-footer a{text-decoration:none}.public-footer a:hover{color:var(--color-text)}.seller-page{max-width:680px}.seller-page h1{margin:32px 0}.seller-page__back{box-sizing:border-box;border:1px solid #9a84ba6b;border-radius:8px;justify-content:center;align-items:center;min-height:44px;padding:12px 20px;font-weight:700;line-height:1;text-decoration:none;transition:background .15s,border-color .15s;display:inline-flex}.seller-page__back:hover{background:#7e60a657;border-color:#b29ad494}.seller-page__back:focus-visible{outline-offset:2px;outline:3px solid #9d7acc6b}.seller-page dl{grid-template-columns:90px minmax(0,1fr);gap:12px 20px;display:grid}.seller-page dt{color:var(--color-text-muted)}.seller-page dd{margin:0}.legal-page{max-width:760px;padding-bottom:48px}.legal-page h1{margin:32px 0 24px;font-size:30px;line-height:1.2}.legal-page h2{margin:32px 0 10px;font-size:20px}.legal-page p{margin:0 0 14px;line-height:1.75}.legal-page a:not(.legal-page__back){color:var(--color-text)}.legal-page code{overflow-wrap:anywhere}.legal-page__back{box-sizing:border-box;min-height:44px;color:var(--color-text);border:1px solid #9a84ba6b;border-radius:8px;justify-content:center;align-items:center;padding:12px 20px;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.legal-page__back:hover{background:#7e60a657;border-color:#b29ad494}.legal-page__back:focus-visible{outline-offset:2px;outline:3px solid #9d7acc6b}.cookie-notice{z-index:100;box-sizing:border-box;border-top:1px solid var(--color-border-strong);background:var(--color-surface-deep);justify-content:center;align-items:center;gap:24px;padding:16px max(18px,50vw - 560px);display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 28px #00000038}.cookie-notice p{flex:1;max-width:900px;margin:0;font-size:14px;line-height:1.5}.cookie-notice a{color:var(--color-text)}.cookie-notice button{flex:none;margin:0}@media (width<=640px){.cookie-notice{flex-direction:column;align-items:stretch;gap:12px;padding:14px 18px}.cookie-notice button{align-self:flex-start}}.analytics-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.analytics-card{background:#10101457;border:1px solid #3a404bc7;border-radius:8px;padding:16px}.analytics-card span,.analytics-card small{color:var(--color-text-muted);text-transform:uppercase;font-size:12px;font-weight:800;display:block}.analytics-card strong{color:var(--color-text);margin-top:10px;font-size:30px;line-height:1;display:block}.analytics-card small{text-transform:none;margin-top:8px;font-weight:700}.analytics-card--accent{background:#6750862e;border-color:#9a84ba5c}.analytics-table-section h2{margin-top:0}.analytics-table-wrap{overflow-x:auto}.analytics-table{border-collapse:collapse;width:100%}.analytics-table th,.analytics-table td{border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top;padding:10px 12px}.analytics-table th{color:#d5b85a;text-transform:uppercase;font-size:12px}@media (width<=900px){.analytics-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}.icon-button{width:34px;min-width:34px;height:34px;min-height:34px;color:var(--color-text-soft);border:1px solid var(--color-border);background:#ffffff0a;border-radius:6px;justify-content:center;align-items:center;margin-top:0;padding:0;font-size:18px;font-weight:800;display:inline-flex}.icon-button svg{width:16px;height:16px}.icon-button:hover:not(:disabled){color:var(--color-text);background:#ffffff14;border-color:#d5b85a6b}.icon-button--danger{color:#f27f8d;background:#7e364238;border-color:#bf5c6d7a}.icon-button--danger:hover:not(:disabled){color:#ffd3d8;background:#973f4f6b;border-color:#da7384b8}.icon-button--stacked{width:28px;min-width:28px;height:28px;min-height:28px;margin-top:8px}.icon-button--stacked svg{width:15px;height:15px}.case-summary{max-width:960px;padding:24px 24px 72px}.case-summary__topbar{min-height:44px;color:var(--color-text-muted);padding-bottom:12px;font-size:13px}.case-summary__brand{color:var(--color-text);font-weight:800;text-decoration:none}.case-summary__intro{background:0 0;border-radius:0;margin:0;padding:58px 0 42px}.case-summary__eyebrow{color:#b9c891;text-transform:uppercase;margin:0 0 12px;font-size:12px;font-weight:800}.case-summary__intro h1{margin:0 0 14px;font-size:48px;line-height:1.1}.case-summary__intro>p:last-child{max-width:680px;color:var(--color-text-soft);margin:0;font-size:17px;line-height:1.6}.case-summary__section{border-top:1px solid var(--color-border);background:0 0;border-radius:0;margin:0;padding:32px 0 38px}.case-summary__section h2,.case-summary__next h2{margin:0 0 22px;font-size:24px}.case-summary__stats{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.case-summary__stats>div{border-left:1px solid var(--color-border);min-width:0;padding:4px 22px}.case-summary__stats>div:first-child{border-left:0;padding-left:0}.case-summary__stats strong{color:#e5c577;font-size:38px;line-height:1.15;display:block}.case-summary__stats strong span{color:var(--color-text-muted);font-size:19px}.case-summary__stats p{color:var(--color-text-soft);margin:8px 0 0}.case-summary__note{color:var(--color-text-muted);margin:22px 0 0;font-size:13px}.case-summary__skills{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;display:grid}.case-summary__skills>div{border-bottom:1px solid var(--color-border);gap:14px;min-width:0;padding:16px 0;display:flex}.case-summary__skills>div>span{color:#8fbf9a;flex:none;font-size:13px;font-weight:800}.case-summary__skills h3{margin:0 0 4px;font-size:16px}.case-summary__skills p{margin:0;font-size:14px}.case-summary__next{border-top:1px solid var(--color-border);background:0 0;border-radius:0;margin:0;padding:34px 0 38px}.case-summary__next>p:not(.case-summary__eyebrow){max-width:680px;margin:0 0 24px;font-size:16px}.case-summary__purchase{flex-wrap:wrap;align-items:center;gap:12px 20px;display:flex}.case-summary__purchase>span{color:#e5c577;font-weight:700}.case-summary__purchase button{margin:0}.case-summary__purchase small{flex-basis:100%}.case-summary__cta{background:var(--color-primary);min-height:44px;color:var(--color-text);border-radius:8px;align-items:center;padding:0 20px;font-weight:700;text-decoration:none;display:inline-flex}.case-summary__back{color:var(--color-text-soft);margin-top:14px;display:inline-block}@media (width<=640px){.case-summary{padding:16px 18px 48px}.case-summary__intro{padding:42px 0 32px}.case-summary__intro h1{font-size:36px}.case-summary__stats,.case-summary__skills{grid-template-columns:1fr}.case-summary__stats>div,.case-summary__stats>div:first-child{border-left:0;border-bottom:1px solid var(--color-border);padding:16px 0}}.case-invitations>button{margin-top:0}.case-invitations__new{flex-wrap:wrap;align-items:end;gap:12px;margin-top:16px;display:flex}.case-invitations__new .form-field{flex:320px;min-width:0}.case-invitations__new input{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.case-invitations__new button{margin-top:0}.case-invitations__new small{flex-basis:100%}.case-invitations .game-table-wrap{margin-top:18px}.paid-case-gate{max-width:960px;padding:24px 24px 72px}.paid-case-gate__header{min-height:44px;padding-bottom:12px;font-size:13px}.paid-case-gate__header a{color:var(--color-text);font-weight:800;text-decoration:none}.paid-case-gate__intro{padding:58px 0 36px}.paid-case-gate__intro>p:first-child{color:#b9c891;text-transform:uppercase;margin:0 0 12px;font-size:12px;font-weight:800}.paid-case-gate__intro h1{margin:0 0 14px;font-size:48px;line-height:1.1}.paid-case-gate__intro>p:not(:first-child){max-width:680px;margin:0 0 20px;font-size:17px}.paid-case-gate__intro strong{color:#e5c577}.paid-case-gate__access{border-top:1px solid var(--color-border);background:0 0;border-radius:0;margin:0;padding:32px 0}.paid-case-gate__access h2{margin:0 0 18px;font-size:24px}.paid-case-gate__access form{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.paid-case-gate__access .form-field{flex:320px;min-width:0}.paid-case-gate__access input{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.paid-case-gate__access form button{margin-top:0}.paid-case-gate__note{color:var(--color-text-muted);margin:24px 0 10px;font-size:14px}.paid-case-gate__legal{margin:10px 0 18px;font-size:13px;line-height:1.6}.paid-case-gate__legal a{color:var(--color-text)}.paid-case-gate__access>a{color:var(--color-text-soft)}@media (width<=640px){.paid-case-gate{padding:16px 18px 48px}.paid-case-gate__intro{padding:42px 0 30px}.paid-case-gate__intro h1{font-size:36px}}.admin-game-tools{border:1px solid var(--color-border);background:var(--color-surface);border-radius:4px;width:min(100% - 32px,1120px);margin:18px auto 22px;padding:14px 16px}.admin-game-tools__title{color:var(--color-text-muted);margin-bottom:10px;font-size:12px;font-weight:700}.admin-game-tools__controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-game-tools__controls button,.admin-game-tools__controls select{min-height:36px;margin:0}.admin-game-tools__controls select{flex:240px;min-width:0;max-width:520px}.admin-game-tools__controls button[aria-label]{width:36px;padding:0}.admin-game-tools .error-message{margin:10px 0 0}.case-summary__intro h1{overflow-wrap:anywhere}.case-summary__learned{color:var(--color-text);margin:24px 0 0;line-height:1.7}.case-summary__learned span{color:#a9c86f;text-transform:uppercase;margin-right:12px;font-size:12px;font-weight:800}.case-summary__rank{color:var(--color-text-soft);margin:14px 0 0}.case-summary__rank strong{color:var(--color-text)}.case-summary__share{border-top:1px solid var(--color-border);background:0 0;border-radius:0;grid-template-columns:minmax(0,1.4fr) minmax(220px,.6fr);align-items:center;gap:28px;margin:0;padding:36px 0;display:grid}.case-summary__share-card{background-color:#131b1d;background-image:linear-gradient(#263639 1px,#0000 1px),linear-gradient(90deg,#263639 1px,#0000 1px);background-size:24px 24px;border:1px solid #435956;border-left:5px solid #b4d56c;border-radius:4px;min-width:0;padding:30px}.case-summary__share-brand{color:#d8e5df;font-size:15px;font-weight:800}.case-summary__share-card>p{color:#b4d56c;margin:22px 0 16px;font-size:12px;font-weight:800}.case-summary__share-numbers{color:#aabdb8;flex-wrap:wrap;gap:14px 28px;font-size:12px;display:flex}.case-summary__share-numbers span{color:#aabdb8;gap:3px;display:grid}.case-summary__share-numbers strong{color:#f2f4ee;font-size:23px;line-height:1.1}.case-summary__share-footer{border-top:1px solid #435956;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;margin-top:24px;padding-top:16px;font-size:13px;display:flex}.case-summary__share-footer strong{color:#d8e5df}.case-summary__share-footer span{color:#b4d56c;font-weight:700}.case-summary__share-actions h2{margin:0 0 16px;font-size:20px}.case-summary__share-actions button{margin:0}.case-summary__share-actions p{color:var(--color-text-muted);margin:12px 0 0;font-size:13px}.case-summary__story{border-top:1px solid var(--color-border);background:0 0;border-radius:0;margin:0;padding:36px 0 42px}.case-summary__story h2{margin:0 0 22px;font-size:26px}.case-summary__story-text{max-width:720px;color:var(--color-text-soft);white-space:pre-line;font-size:16px;line-height:1.8}.case-summary__next h2{overflow-wrap:anywhere;max-width:760px;font-size:30px;line-height:1.25}.case-summary__teaser{max-width:680px;margin-bottom:22px}.case-summary__teaser p{margin:0 0 9px;line-height:1.6}.case-summary__next-skills{color:#b4d56c;font-weight:700}.case-summary__price{color:#e5c577;font-size:26px}@media (width<=760px){.case-summary__share{grid-template-columns:1fr}}@media (width<=480px){.case-summary__share-card{padding:20px}.case-summary__share-numbers{gap:12px 20px}.case-summary__next h2{font-size:24px}}.public-layout :is(main,aside) a:not(.case-summary__brand):not(.paid-case-gate__header a){text-decoration:none}.public-layout :is(main,aside) a:not(.case-summary__brand):not(.paid-case-gate__header a):not(.button-secondary):not(.landing-hero__button):not(.case-summary__cta){color:#c3a4ee}.public-layout :is(main,aside) a:not(.case-summary__brand):not(.paid-case-gate__header a):not(.button-secondary):not(.landing-hero__button):not(.case-summary__cta):hover{color:#e1cefa}.public-layout :is(main,aside) a:not(.case-summary__brand):not(.paid-case-gate__header a):not(.button-secondary):not(.landing-hero__button):not(.case-summary__cta):after{content:"";vertical-align:-.08em;background-color:#c3a4ee;width:.9em;height:.9em;margin-left:.35em;display:inline-block;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71'/%3E%3Cpath d='M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71'/%3E%3Cpath d='M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71'/%3E%3C/svg%3E") 50%/contain no-repeat}.public-layout :is(main,aside) a:not(.case-summary__brand):not(.paid-case-gate__header a):not(.button-secondary):not(.landing-hero__button):not(.case-summary__cta):hover:after{background-color:#e1cefa}.public-layout :is(main,aside) a:focus-visible{outline-offset:3px;outline:2px solid #c3a4ee}
