:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f5f6f8;color:#22252b;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--bg: #f5f6f8;--panel: #ffffff;--border: #dfe3ea;--muted: #69707d;--text: #22252b;--nav: #24262b;--teal: #138f87;--teal-soft: #e6f5f3;--amber: #b7791f;--amber-soft: #fff4db;--indigo: #4f5fc4;--indigo-soft: #ecefff;--rose: #c2415b;--rose-soft: #fff0f3;--danger: #b42318;--shadow: 0 10px 30px rgba(38, 43, 51, .08)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}input,select,textarea{width:100%;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--text);padding:10px 12px;outline:none}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px #138f8724}table{width:100%;border-collapse:collapse}th,td{padding:14px 16px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}th{color:#565d6a;font-size:12px;text-transform:uppercase;letter-spacing:0;background:#fafbfc}td small{display:block;color:var(--muted);margin-top:3px}.shell{display:grid;grid-template-columns:264px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:26px;padding:22px 16px;background:var(--nav);color:#f7f8fa}.brand,.login-brand{display:flex;align-items:center;gap:12px}.brand-mark{display:grid;width:38px;height:38px;place-items:center;border-radius:8px;background:#f0b44b;color:#17191d;font-weight:800}.brand strong,.brand span,.login-brand span,.login-brand strong{display:block}.brand span,.login-brand span{color:#bbc0ca;font-size:13px}.nav-list{display:grid;gap:6px}.nav-item,.sidebar-action{display:flex;align-items:center;gap:10px;min-height:42px;padding:0 12px;border-radius:6px;color:#d7dae0;border:0;background:transparent;cursor:pointer;text-align:left}.nav-item.active,.nav-item:hover,.sidebar-action:hover{color:#fff;background:#ffffff1a}.sidebar-action{margin-top:auto;width:100%}.main{min-width:0;padding:28px}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.topbar h1,.page-stack h2,.panel h2{margin:0;letter-spacing:0}.topbar h1{font-size:28px}.eyebrow{margin:0 0 5px;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:0;font-weight:700}.page-stack{display:grid;gap:18px}.page-stack.narrow{max-width:920px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:14px}.stats-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.stat-card,.panel,.summary-strip,.tree,.notice,.loading-panel,.empty-state{border:1px solid var(--border);border-radius:8px;background:var(--panel);box-shadow:var(--shadow)}.stat-card{display:flex;align-items:center;gap:14px;min-height:106px;padding:18px}.stat-card span,.stat-card small{display:block;color:var(--muted)}.stat-card strong{display:block;margin:4px 0 2px;font-size:26px}.stat-icon,.tool-icon,.modal-alert{display:grid;place-items:center;width:42px;height:42px;border-radius:8px;flex:0 0 auto}.stat-card.teal .stat-icon,.tool-icon{background:var(--teal-soft);color:var(--teal)}.stat-card.amber .stat-icon{background:var(--amber-soft);color:var(--amber)}.stat-card.indigo .stat-icon{background:var(--indigo-soft);color:var(--indigo)}.stat-card.rose .stat-icon,.modal-alert{background:var(--rose-soft);color:var(--rose)}.modal-alert.audio{background:var(--teal-soft);color:var(--teal)}.grid-two{display:grid;grid-template-columns:1.3fr .7fr;gap:18px}.panel{padding:18px}.panel-header,.toolbar,.user-heading,.tool-card{display:flex;align-items:center;justify-content:space-between;gap:16px}.panel-header p,.tool-card p,.user-heading p{margin:5px 0 0;color:var(--muted)}.button,.icon-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;border-radius:6px;border:1px solid transparent;cursor:pointer;font-weight:700}.button{padding:0 14px}.button.primary{background:var(--teal);color:#fff}.button.secondary{background:#fff;border-color:var(--border);color:var(--text)}.button.danger{background:var(--danger);color:#fff}.button.compact{min-height:34px}.button.fit{justify-self:start}.button.full{width:100%}.button:disabled,.icon-button:disabled{cursor:not-allowed;opacity:.65}.icon-button{width:34px;height:34px;background:#fff;border-color:var(--border);color:var(--text)}.danger-text{color:var(--danger)}.table-wrap{overflow-x:auto}.metric-list{display:grid;gap:12px}.metric-list span,.summary-strip span{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-radius:6px;background:#f8fafb}.toolbar{flex-wrap:wrap}.search-field{position:relative;min-width:min(460px,100%);flex:1}.search-field svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted)}.search-field input{padding-left:40px}.summary-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:12px}.tree{padding:8px}.tree-node{border:1px solid transparent;border-radius:8px}.tree-node>summary{display:grid;grid-template-columns:38px minmax(0,1fr) auto auto;align-items:center;gap:10px;min-height:46px;padding:8px 10px;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.tree-node>summary::-webkit-details-marker{display:none}.tree-node[open]>summary>svg{transform:rotate(90deg)}.tree-node[open]>summary .tree-subject-leading>svg{transform:rotate(90deg)}.tree-node.subject>summary{background:#f8fafb;border-radius:6px}.tree-node summary span,.tree-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-node summary em{color:var(--muted);font-style:normal;font-size:13px}.tree-list{list-style:none;margin:0;padding:0}.tree-list.nested{padding-left:24px}.tree-branch-state{display:flex;align-items:center;gap:10px;min-height:46px;padding:8px 12px;color:var(--muted);font-size:13px}.tree-branch-state.error{justify-content:space-between;color:var(--danger)}.tree-branch-state.muted{font-style:italic}.spinner.compact{width:18px;height:18px;border-width:2px;flex:0 0 auto}.tree-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto auto;align-items:center;gap:10px;min-height:42px;padding:5px 10px}.tree-indent{width:8px;height:8px;border-radius:2px;background:var(--border);justify-self:center}.tree-thumb{width:34px;height:34px;object-fit:cover;border-radius:6px;border:1px solid var(--border);background:#fff;-webkit-user-drag:none}.tree-subject-leading{position:relative;display:grid;width:38px;height:38px;place-items:center;color:var(--muted)}.tree-subject-leading>svg{position:absolute;right:-3px;bottom:-2px;padding:2px;border:1px solid var(--border);border-radius:50%;background:#fff;box-sizing:content-box;transition:transform .15s ease}.row-actions{display:inline-flex;gap:6px}.pill,.status{display:inline-flex;align-items:center;min-height:26px;padding:0 9px;border-radius:999px;font-size:12px;font-weight:700}.pill{background:#eef1f4;color:#505865}.status.active{background:var(--teal-soft);color:var(--teal)}.status.muted{background:#eef1f4;color:var(--muted)}.builder-grid{display:grid;grid-template-columns:repeat(3,minmax(240px,1fr));gap:16px;align-items:start}.builder-grid .wide{grid-column:span 3}.content-class-list,.builder-class-list{display:grid;gap:18px}.content-class-group{overflow:hidden;border:1px solid var(--border);border-radius:10px;background:var(--panel);box-shadow:var(--shadow)}.content-class-compact-header{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border);background:#fafbfc}.content-class-compact-header>span:last-child{color:var(--muted);font-size:13px}.builder-class-group>header>div{display:flex;align-items:center;gap:12px}.builder-class-group h3,.builder-class-group p{margin:0}.builder-class-group p{margin-top:3px;color:var(--muted);font-size:13px}.content-class-group .tree{min-width:0;padding:8px;border:0;border-radius:0;box-shadow:none}.class-badge{display:inline-grid;min-width:48px;min-height:30px;place-items:center;padding:0 9px;border-radius:7px;font-size:12px;font-weight:800}.class-badge.tyt{background:var(--teal-soft);color:var(--teal)}.class-badge.ayt{background:var(--indigo-soft);color:var(--indigo)}.hierarchy-builder{max-width:1180px}.builder-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px;border:1px solid #c8ebe7;border-radius:10px;background:linear-gradient(120deg,#138f8717,#4f5fc40d),#fff;box-shadow:var(--shadow)}.builder-hero h2,.builder-hero p{margin:0}.builder-hero>div:first-child>p:last-child{max-width:680px;margin-top:6px;color:var(--muted)}.builder-hero-actions{display:flex;flex:0 0 auto;gap:10px}.builder-breadcrumb{display:flex;align-items:center;gap:8px;padding:12px;overflow-x:auto;border:1px solid var(--border);border-radius:9px;background:#fff;box-shadow:var(--shadow)}.builder-breadcrumb>svg{flex:0 0 auto;color:#a3aab5}.builder-breadcrumb button{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 10px;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;font-weight:700;white-space:nowrap}.builder-breadcrumb button span{display:grid;width:24px;height:24px;place-items:center;border-radius:50%;background:#eef1f4;font-size:12px}.builder-breadcrumb button.active{background:var(--teal-soft);color:var(--teal)}.builder-breadcrumb button.active span,.builder-breadcrumb button.complete span{background:var(--teal);color:#fff}.builder-breadcrumb button.complete{color:var(--text)}.builder-breadcrumb button:disabled{cursor:default;opacity:.45}.builder-stage{display:grid;gap:18px;padding:20px;scroll-margin-top:18px}.builder-stage:target{border-color:var(--teal);box-shadow:0 0 0 3px #138f871f,var(--shadow)}.builder-stage-header{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--border)}.builder-step-icon,.builder-card-icon{display:grid;place-items:center;border-radius:8px;background:var(--teal-soft);color:var(--teal)}.builder-step-icon{width:42px;height:42px}.builder-card-icon{width:38px;height:38px}.builder-stage-header p,.builder-stage-header h2,.builder-stage-header span{margin:0}.builder-stage-header p{color:var(--teal);font-size:11px;font-weight:800;text-transform:uppercase}.builder-stage-header h2{margin:2px 0 4px;font-size:21px}.builder-stage-header>div:nth-child(2)>span{color:var(--muted);font-size:14px}.builder-class-group{display:grid;gap:14px;padding:16px;border:1px solid var(--border);border-radius:9px;background:#fafbfc}.builder-card-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:12px}.builder-entity-card,.builder-add-card{min-height:88px;border-radius:9px;cursor:pointer;text-align:left}.builder-entity-card{display:grid;grid-template-columns:42px minmax(0,1fr) 20px;align-items:center;gap:12px;padding:12px;border:1px solid var(--border);background:#fff;color:var(--text);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.builder-entity-card:hover,.builder-add-card:hover{border-color:#8bd7c9;box-shadow:0 8px 22px #262b331a;transform:translateY(-1px)}.builder-entity-card.selected{border-color:var(--teal);box-shadow:0 0 0 3px #138f871f}.builder-entity-card>span,.builder-add-card strong,.builder-add-card span{min-width:0}.builder-entity-card strong,.builder-entity-card small,.builder-add-card strong,.builder-add-card span{display:block}.builder-entity-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.builder-entity-card small,.builder-add-card span{margin-top:5px;color:var(--muted);font-size:12px}.builder-entity-card>svg{color:#a1a8b3}.builder-subject-image{display:grid;width:42px;height:42px;place-items:center;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:#f5f7f9;color:var(--muted)}.builder-subject-image img{width:100%;height:100%;object-fit:contain}.builder-add-card{display:grid;align-content:center;justify-items:start;padding:14px;border:1px dashed #9fb0bc;background:#ffffff9e;color:var(--teal);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.builder-add-card strong{margin-top:7px;color:var(--text)}.builder-create-panel{display:grid;gap:16px;width:min(760px,100%);padding:18px;border:1px solid #8bd7c9;border-radius:9px;background:#fff;box-shadow:0 12px 34px #138f871c}.builder-create-panel>header,.builder-create-panel>header>div,.builder-content-panel>header,.builder-content-panel>header>div{display:flex;align-items:center;gap:10px}.builder-create-panel>header{justify-content:space-between}.builder-create-panel h3,.builder-content-panel h3,.builder-content-panel p{margin:0}.builder-create-panel>header>div{color:var(--teal)}.builder-create-panel h3{color:var(--text)}.builder-create-panel form>.button{justify-self:start}.builder-content-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.builder-content-panel{min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:9px;background:#fafbfc}.builder-content-panel>header{justify-content:space-between;padding:14px;border-bottom:1px solid var(--border);background:#fff}.builder-content-panel>header>div>svg{color:var(--teal)}.builder-content-panel p{margin-top:3px;color:var(--muted);font-size:12px}.builder-content-list{display:grid;max-height:380px;overflow-y:auto}.builder-content-row{display:grid;grid-template-columns:auto minmax(0,1fr) 18px;align-items:center;gap:10px;min-height:54px;padding:10px 14px;border-bottom:1px solid var(--border);background:#fff}.builder-content-row:last-child{border-bottom:0}.builder-content-row:hover{background:var(--teal-soft)}.builder-content-row>span{font-weight:800;white-space:nowrap}.builder-content-row small{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.builder-content-row svg{color:var(--muted)}.builder-empty-copy{margin:0;padding:24px;color:var(--muted);text-align:center}.session-check-page{min-height:100vh;display:grid;place-items:center;background:#f5f6f8}.session-message{margin:-10px 0 0;padding:10px 12px;border:1px solid #cfe4e2;border-radius:6px;background:#f1f9f8;color:#26625d;font-size:14px}.form-stack{display:grid;gap:14px}.form-stack label{display:grid;gap:6px;color:#3b414b;font-weight:700;font-size:14px}.form-stack label>small{color:var(--muted);font-size:12px;font-weight:500;line-height:1.45}.form-title,.notice{display:flex;align-items:center;gap:10px}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.notice{padding:12px 14px}.notice.error,.form-error{color:var(--danger);background:#fff3f2;border-color:#ffd5d1}.notice.success{color:#08756f;background:var(--teal-soft);border-color:#c8ebe7}.commerce-page{max-width:1500px}.management-table{min-width:780px;margin-top:14px}.management-table th:last-child,.management-table td:last-child{width:1%;white-space:nowrap}.management-table td>strong,.management-table td>small{display:block}.management-table td>small{max-width:420px}.table-description{max-width:420px;color:var(--muted);line-height:1.45}.table-actions{display:inline-flex;justify-content:flex-end;gap:6px}.rank-badge.compact{width:30px;height:30px}.commerce-tabs{display:flex;gap:4px;width:fit-content;max-width:100%;padding:4px;overflow-x:auto;border:1px solid var(--border);border-radius:8px;background:#fff;box-shadow:var(--shadow)}.commerce-tab{min-height:38px;padding:0 14px;border:0;border-radius:5px;background:transparent;color:var(--muted);cursor:pointer;font-weight:700;white-space:nowrap}.commerce-tab:hover,.commerce-tab.active{background:var(--teal-soft);color:var(--teal)}.commerce-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px;border:1px solid #c8ebe7;border-radius:10px;background:linear-gradient(120deg,#138f871a,#4f5fc40d),#fff;box-shadow:var(--shadow)}.commerce-hero h2,.commerce-hero p,.section-heading h2,.section-heading p,.campaign-summary h2,.campaign-summary p,.user-access-summary h2,.user-access-summary p{margin:0}.commerce-hero>div>p:last-child,.section-heading p,.campaign-summary p,.user-access-summary p{margin-top:6px;color:var(--muted)}.commerce-overview-grid{grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr)}.activity-list,.level-list,.offer-list{display:grid;gap:2px;margin-top:12px}.activity-list>div,.level-list>div,.offer-list>div{display:flex;align-items:center;gap:11px;padding:12px 4px;border-bottom:1px solid var(--border)}.activity-list>div:last-child,.level-list>div:last-child,.offer-list>div:last-child{border-bottom:0}.activity-list>div>div,.level-list>div>div,.offer-list>div>div{min-width:0;flex:1}.activity-list strong,.activity-list small,.level-list strong,.level-list small,.offer-list strong,.offer-list small{display:block}.activity-list small,.level-list small,.offer-list small,.activity-list time,.entity-card small{margin-top:3px;color:var(--muted);font-size:12px}.activity-icon,.rank-badge{display:grid;width:34px;height:34px;flex:0 0 auto;place-items:center;border-radius:7px;background:var(--teal-soft);color:var(--teal);font-weight:800}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}.catalog-layout{display:grid;grid-template-columns:minmax(260px,.34fr) minmax(0,1fr);gap:18px;align-items:start}.catalog-main{min-width:0}.plan-grid{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:12px;margin-top:16px}.entity-card{display:grid;gap:14px;padding:16px;border:1px solid var(--border);border-radius:8px;background:#fafbfc}.entity-card p{min-height:36px;margin:0;color:var(--muted);font-size:13px}.entity-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.entity-card-header strong,.entity-card-header small{display:block}.entitlement-row,.campaign-metrics,.effective-access{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.entitlement-row>span,.campaign-metrics>span,.effective-access>span{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:5px 8px;padding:10px;border-radius:6px;background:#fff;color:var(--muted);font-size:12px}.entitlement-row strong{grid-column:1 / -1;color:var(--text);font-size:13px}.entitlement-row .entitlement-toggle{grid-column:1 / -1;width:fit-content}.mini-icon{display:grid;width:15px;height:15px;place-items:center;border-radius:3px;background:var(--indigo-soft);color:var(--indigo);font-size:9px;font-weight:900}.status-button{border:0;cursor:pointer}.provider-label,.provider-badge{display:inline-flex;align-items:center;gap:6px;font-weight:700;text-transform:capitalize}.provider-badge{min-width:62px;padding:7px 9px;border-radius:6px;background:#eef1f4;font-size:12px}.campaign-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:18px;align-items:start}.campaign-list,.user-picker{position:sticky;top:24px;max-height:calc(100vh - 48px);overflow-y:auto}.campaign-list{display:grid;gap:5px;padding:8px}.campaign-list button{display:grid;gap:4px;padding:11px 12px;border:0;border-radius:6px;background:transparent;color:var(--text);cursor:pointer;text-align:left}.campaign-list button:hover,.campaign-list button.selected,.user-picker button:hover,.user-picker button.selected{background:var(--teal-soft)}.campaign-list button span{font-weight:750}.campaign-list button small{color:var(--muted)}.campaign-summary{display:grid;gap:18px}.campaign-action-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:14px;border-top:1px solid var(--border)}.campaign-summary .pill{width:fit-content;margin-bottom:10px;background:var(--teal-soft);color:var(--teal)}.campaign-summary .pill.offer{background:var(--amber-soft);color:var(--amber)}.campaign-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.campaign-metrics>span,.effective-access>span{display:block;background:#f8fafb}.campaign-metrics small,.campaign-metrics strong,.effective-access small,.effective-access strong{display:block}.campaign-metrics strong,.effective-access strong{margin-top:5px}.store-authority-note,.form-help{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border-radius:6px;background:var(--amber-soft);color:#795217!important;font-size:12px}.empty-cell,.muted-copy{color:var(--muted);text-align:center}.user-access-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:18px;align-items:start}.user-picker{display:grid;gap:12px;padding:12px}.user-picker>div{display:grid;gap:3px}.user-picker button{display:flex;align-items:center;gap:10px;padding:8px;border:0;border-radius:6px;background:transparent;cursor:pointer;text-align:left}.user-picker button>span:last-child{min-width:0}.user-picker strong,.user-picker small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-picker small{margin-top:2px;color:var(--muted);font-size:12px}.user-access-summary{display:flex;align-items:center;justify-content:space-between;gap:24px}.user-access-summary>div:first-child{display:flex;align-items:center;gap:12px}.avatar.large{width:48px;height:48px;font-size:18px}.effective-access{grid-template-columns:repeat(3,minmax(110px,1fr))}.effective-access strong{font-size:20px}.commerce-modal{width:min(680px,100%);max-height:min(88vh,900px);overflow-y:auto}.commerce-modal>div:first-of-type{padding-right:34px}.commerce-modal>div:first-of-type p{margin-top:6px}.detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.detail-list>span{padding:12px;border-radius:6px;background:#f8fafb}.detail-list small,.detail-list strong{display:block}.detail-list small{margin-bottom:5px;color:var(--muted)}.detail-list strong{text-transform:capitalize}.checkbox-label{display:flex!important;grid-template-columns:none!important;align-items:center;gap:9px!important}.checkbox-label input{width:auto}.segmented-control{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;border-radius:7px;background:#eef1f4}.segmented-control button{min-height:36px;border:0;border-radius:5px;background:transparent;color:var(--muted);cursor:pointer;font-weight:700}.segmented-control button.active{background:#fff;color:var(--teal);box-shadow:0 2px 7px #262b331a}.generated-code-box{display:grid;gap:8px;padding:12px;border:1px solid #b9e5df;border-radius:7px;background:var(--teal-soft)}.generated-code-box>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.generated-code-box pre{max-height:210px;margin:0;padding:12px;overflow:auto;border-radius:5px;background:#fff;font-size:12px}@media (max-width: 1100px){.commerce-overview-grid,.catalog-layout,.campaign-layout,.user-access-layout{grid-template-columns:1fr}.campaign-list,.user-picker{position:static;max-height:360px}.campaign-list{grid-template-columns:repeat(2,minmax(180px,1fr))}}@media (max-width: 760px){.commerce-hero,.section-heading,.user-access-summary{align-items:stretch;flex-direction:column}.plan-grid,.campaign-metrics,.effective-access,.campaign-list{grid-template-columns:1fr}.campaign-action-bar{align-items:stretch;flex-direction:column}.campaign-action-bar .table-actions,.campaign-action-bar .row-actions{flex-wrap:wrap}.detail-list{grid-template-columns:1fr}}.form-error{margin:0;padding:10px 12px;border:1px solid #ffd5d1;border-radius:6px}.loading-panel,.empty-state{display:grid;place-items:center;gap:12px;min-height:260px;padding:32px;color:var(--muted);text-align:center}.empty-state h2{color:var(--text)}.spinner{width:34px;height:34px;border-radius:50%;border:3px solid #dbe1e8;border-top-color:var(--teal);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#138f871f,#b7791f1f),#f5f6f8}.login-panel{width:min(420px,100%);display:grid;gap:28px;padding:28px;border:1px solid var(--border);border-radius:8px;background:#fff;box-shadow:var(--shadow)}.login-brand strong{color:var(--text);font-size:20px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:20px;background:#1f22276b}.modal{position:relative;width:min(460px,100%);display:grid;gap:14px;padding:22px;border-radius:8px;background:#fff;box-shadow:0 20px 70px #00000040}.audio-generate-modal{width:min(820px,100%);max-height:min(86vh,860px);grid-template-rows:auto auto auto auto auto minmax(0,1fr) auto}.modal h2,.modal p{margin:0}.modal p{color:var(--muted)}.modal-close{position:absolute;top:12px;right:12px}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.audio-preview-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px;padding:9px 12px;border:1px solid var(--border);border-radius:6px;background:#f8fafb}.audio-preview-summary strong,.audio-preview-summary span{font-size:13px}.audio-preview-summary span{color:var(--muted)}.audio-text-preview-list{display:grid;gap:10px;min-height:0;overflow-y:auto;padding-right:2px}.audio-text-preview{display:grid;gap:10px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fff}.audio-text-preview-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.audio-text-preview-header>div{min-width:0}.audio-text-preview-header strong,.audio-text-preview-header span{display:block}.audio-text-preview-header strong{overflow:hidden;color:var(--text);text-overflow:ellipsis;white-space:nowrap}.audio-text-preview-header span{color:var(--muted);font-size:12px}.audio-text-toggle{display:inline-flex;align-items:center;gap:7px;min-height:34px;flex:0 0 auto;padding:0 10px;border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--muted);cursor:pointer;font-size:13px;font-weight:800}.audio-text-toggle.active{border-color:#b8e0dc;background:var(--teal-soft);color:var(--teal)}.audio-text-toggle:disabled{cursor:not-allowed;opacity:.58}.audio-marked-text{margin:0;color:#353b45;line-height:1.55}.audio-marked-text.active .removed{color:#8d96a4;text-decoration:line-through;text-decoration-thickness:2px;text-decoration-color:#b65a6c;background:#f3f5f7}.audio-submitted-text{display:grid;gap:5px;padding:9px 10px;border-radius:6px;background:#f8fafb}.audio-submitted-text span{color:var(--muted);font-size:12px;font-weight:800}.audio-submitted-text p{color:var(--text);line-height:1.5}.progress-list,.progress-unit{display:grid;gap:12px}.progress-unit summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px;border-radius:6px;background:#f8fafb;cursor:pointer}.progress-unit summary em{color:var(--muted);font-style:normal}.chapter-grid{display:grid;grid-template-columns:repeat(3,minmax(190px,1fr));gap:12px;padding-top:12px}.chapter-progress{display:grid;gap:6px;min-height:132px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fff}.chapter-progress span{color:var(--muted);font-size:13px}.tool-card{align-items:flex-start}.edit-preview-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,340px);gap:18px;align-items:start}.edit-preview-grid>div:first-child{display:grid;gap:14px}.media-preview,.audio-preview,.nested-preview-card{border:1px solid var(--border);border-radius:8px;background:#f8fafb}.media-preview{display:grid;gap:10px;padding:10px}.media-preview>span{color:var(--muted);font-size:13px;font-weight:700}.media-preview img,.media-placeholder{width:100%;aspect-ratio:4 / 3;border-radius:6px}.media-preview img{display:block;object-fit:contain;background:#fff}.media-placeholder{display:grid;place-items:center;gap:8px;color:var(--muted);border:1px dashed #c8ced8}.audio-preview{display:grid;gap:10px;padding:10px}.audio-preview>div{display:flex;align-items:center;gap:8px;min-width:0;color:var(--muted);font-size:13px;font-weight:700}.audio-preview span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audio-preview audio{width:100%}.advanced-options{padding:0}.advanced-options summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:52px;padding:0 18px;cursor:pointer}.advanced-options summary em{color:var(--muted);font-style:normal}.advanced-options-body{display:grid;gap:12px;padding:0 18px 18px}.advanced-options-body p{margin:0;color:var(--muted)}.nested-preview-group{display:grid;gap:10px}.nested-preview-group h3{margin:0;font-size:16px}.nested-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.nested-preview-card{display:grid;gap:10px;padding:10px}.nested-preview-card .media-preview,.nested-preview-card .audio-preview{background:#fff}.nested-preview-card p{margin:0;color:var(--muted);font-size:13px}.user-cell{display:flex;align-items:center;gap:10px;min-width:0}.user-cell.large{gap:14px}.avatar{display:grid;place-items:center;width:38px;height:38px;flex:0 0 auto;border-radius:50%;object-fit:cover;background:var(--indigo-soft);color:var(--indigo);font-weight:800}.avatar.large{width:58px;height:58px;font-size:20px}.choice-editor{display:grid;gap:10px}.choice-editor-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.choice-editor-header span{color:#3b414b;font-size:14px;font-weight:700}.choice-list{display:grid;gap:8px}.choice-row{display:grid;grid-template-columns:34px minmax(0,1fr) 34px;align-items:center;gap:8px;padding:8px;border:1px solid var(--border);border-radius:8px;background:#fff}.choice-row.correct{border-color:#8bd7c9;background:linear-gradient(0deg,#138f871a,#138f871a),#fff}.choice-check{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--border);border-radius:50%;background:#fff;color:var(--teal);cursor:pointer}.choice-row.correct .choice-check{border-color:var(--teal);background:var(--teal);color:#fff}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.spin-icon{animation:spin .8s linear infinite}.button.disabled{pointer-events:none;opacity:.65}.bulk-import-page{max-width:1120px}.import-intro,.import-step-heading,.import-format-help,.import-review-header,.import-progress-heading{display:flex;align-items:center;gap:14px}.import-intro h2,.import-intro p,.import-step-heading h2,.import-step-heading p,.import-format-help h3,.import-format-help p,.import-review-header h2,.import-review-header p,.import-progress-heading h3,.import-progress-heading p{margin:0}.import-intro p,.import-step-heading p,.import-format-help p,.import-review-header p,.import-progress-heading p{margin-top:5px;color:var(--muted)}.import-source-panel{display:grid;gap:18px}.import-step-heading>span{display:grid;width:34px;height:34px;place-items:center;flex:0 0 auto;border-radius:50%;background:var(--teal);color:#fff;font-weight:800}.import-subject-field{display:grid;max-width:560px;gap:7px;color:#3b414b;font-size:14px;font-weight:700}.import-dropzone{display:grid;min-height:260px;place-items:center;align-content:center;gap:10px;padding:32px;border:2px dashed #bcc5d1;border-radius:10px;background:#fafbfc;color:var(--teal);text-align:center}.import-dropzone.busy{border-color:#8bd7c9;background:var(--teal-soft)}.import-dropzone>strong{color:var(--text);font-size:18px}.import-dropzone>p{max-width:600px;margin:0;color:var(--muted)}.import-source-actions,.import-footer-actions,.import-start-bar>div:last-child{display:flex;flex-wrap:wrap;gap:10px}.import-source-actions{margin-top:10px}.import-format-help{align-items:flex-start;background:var(--teal-soft);border-color:#c8ebe7}.import-validation-errors{align-items:flex-start}.import-validation-errors strong{display:block}.import-validation-errors ul{max-height:260px;margin:8px 0 0;padding-left:20px;overflow:auto}.import-review-header{justify-content:space-between}.import-review-badge{display:flex;align-items:center;gap:8px;flex:0 0 auto;padding:10px 12px;border-radius:8px;background:var(--teal-soft);color:var(--teal);font-weight:800}.import-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.import-summary-grid>div{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--indigo);box-shadow:var(--shadow)}.import-summary-grid span,.import-summary-grid strong{display:block}.import-summary-grid span{color:var(--muted);font-size:13px}.import-summary-grid strong{margin-top:2px;color:var(--text);font-size:22px}.import-selection-header{padding-bottom:16px;border-bottom:1px solid var(--border)}.selection-count{min-width:100px;text-align:right}.selection-count strong,.selection-count span{display:block}.selection-count strong{color:var(--teal);font-size:24px}.selection-count span{color:var(--muted);font-size:12px}.import-tree{display:grid}.import-unit-row{border-bottom:1px solid var(--border)}.import-unit-row:last-child{border-bottom:0}.import-unit-heading,.import-chapter-row{display:grid;grid-template-columns:28px 24px minmax(0,1fr) auto;align-items:center;gap:10px}.import-unit-heading{min-height:68px;padding:10px 4px}.import-unit-heading small,.import-chapter-row small{display:block;margin-top:3px;color:var(--muted);font-weight:400}.import-chapter-list{display:grid;gap:6px;padding:0 0 14px 38px}.import-chapter-row{min-height:54px;padding:8px 10px;border:1px solid var(--border);border-radius:7px;background:#fafbfc;cursor:pointer}.import-chapter-row.existing{cursor:default;opacity:.72}.import-chapter-row.recovery{border-color:#e7c779;background:#fffbef}.import-checkbox{position:relative;display:grid;width:22px;height:22px;place-items:center}.import-checkbox input{position:absolute;width:1px;height:1px;opacity:0}.import-checkbox>span{display:grid;width:20px;height:20px;place-items:center;border:1px solid #adb7c4;border-radius:5px;background:#fff}.import-checkbox input:checked+span{border-color:var(--teal);background:var(--teal)}.import-checkbox input:checked+span:after{width:8px;height:4px;border-bottom:2px solid #fff;border-left:2px solid #fff;content:"";transform:rotate(-45deg) translateY(-1px)}.import-checkbox.locked input:checked+span{border-color:#aab2bd;background:#aab2bd}.import-checkbox input:focus-visible+span{box-shadow:0 0 0 3px #138f872e}.import-start-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;position:sticky;bottom:16px;z-index:5}.import-start-bar p{margin:5px 0 0;color:var(--muted)}.import-progress-hero{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px}.import-progress-hero>strong{color:var(--teal);font-size:25px}.import-progress-hero h2,.import-progress-hero p{margin:0}.import-progress-hero p{margin-top:4px;color:var(--muted)}.progress-hero-icon,.progress-state-icon{display:grid;place-items:center;border-radius:50%}.progress-hero-icon{width:48px;height:48px;background:var(--teal-soft);color:var(--teal)}.import-progress-hero.failed .progress-hero-icon{background:var(--rose-soft);color:var(--danger)}.import-progress-track{grid-column:1 / -1;height:10px;overflow:hidden;border-radius:999px;background:#e8ecf1}.import-progress-track span,.chapter-progress-track span{display:block;height:100%;border-radius:inherit;background:var(--teal);transition:width .18s ease}.import-progress-hero>small{grid-column:1 / -1;color:var(--muted)}.import-progress-list,.import-progress-unit{display:grid;gap:14px}.import-progress-heading{display:grid;grid-template-columns:36px minmax(0,1fr) auto}.progress-state-icon{width:36px;height:36px;background:#eef1f4;color:var(--muted)}.progress-state-icon.complete,.progress-state-icon.existing{background:var(--teal-soft);color:var(--teal)}.progress-state-icon.running{background:var(--indigo-soft);color:var(--indigo)}.progress-state-icon.error{background:var(--rose-soft);color:var(--danger)}.status.running{background:var(--indigo-soft);color:var(--indigo)}.status.complete,.status.existing{background:var(--teal-soft);color:var(--teal)}.status.pending{background:#eef1f4;color:var(--muted)}.status.error{background:var(--rose-soft);color:var(--danger)}.status.warning{background:var(--amber-soft);color:var(--amber)}.import-progress-chapters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.import-progress-chapter{display:grid;gap:8px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fafbfc}.import-progress-chapter>div:first-child{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.import-progress-chapter p{margin:0;color:var(--muted);font-size:13px}.chapter-progress-track{height:6px;overflow:hidden;border-radius:999px;background:#e3e7ed}.import-footer-actions{justify-content:flex-end}@media (max-width: 1120px){.stats-grid,.stats-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-two,.builder-grid,.chapter-grid,.edit-preview-grid,.nested-preview-grid{grid-template-columns:1fr}.builder-grid .wide{grid-column:span 1}.builder-card-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}.import-summary-grid,.import-progress-chapters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 760px){.shell{grid-template-columns:1fr}.sidebar{position:static;height:auto}.nav-list{grid-template-columns:repeat(2,minmax(0,1fr))}.main{padding:18px}.topbar h1{font-size:24px}.stats-grid,.stats-grid.four,.summary-strip,.form-row{grid-template-columns:1fr}.tree-node>summary,.tree-row{grid-template-columns:38px minmax(0,1fr)}.tree-node summary em,.tree-row .pill,.tree-row .row-actions,.tree-node summary .row-actions{grid-column:2}.panel-header,.toolbar,.user-heading,.tool-card,.builder-hero{align-items:stretch;flex-direction:column}.content-class-compact-header{align-items:flex-start;flex-direction:column}.builder-hero-actions{flex-wrap:wrap}.builder-card-grid,.builder-content-columns{grid-template-columns:1fr}.builder-stage-header{grid-template-columns:42px minmax(0,1fr)}.builder-stage-header>.class-badge{grid-column:2;justify-self:start}.builder-breadcrumb{align-items:stretch;flex-direction:column}.builder-breadcrumb>svg{display:none}.builder-breadcrumb button{width:100%}.import-review-header,.import-start-bar{align-items:stretch;flex-direction:column}.import-summary-grid,.import-progress-chapters{grid-template-columns:1fr}.import-unit-heading,.import-chapter-row{grid-template-columns:28px 24px minmax(0,1fr)}.import-unit-heading>.status,.import-chapter-row>.status{grid-column:3;justify-self:start}.import-chapter-list{padding-left:12px}.import-progress-hero{grid-template-columns:48px minmax(0,1fr)}.import-progress-hero>strong{grid-column:2}}.page-header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.page-nav-group{display:inline-flex;align-items:center;gap:8px}.page-form-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:8px}.page-breadcrumb-sub{display:flex;align-items:center;gap:6px;font-size:.82rem;color:var(--muted);font-weight:500;margin-bottom:4px}.breadcrumb-separator{opacity:.5}@media (max-width: 680px){.page-form-footer{flex-direction:column;align-items:stretch}.page-nav-group{justify-content:space-between;width:100%}.page-nav-group .button{flex:1}}
