@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap";*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}body,input,textarea,button{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji"}:root{--font: Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";--barcode-page-width: 210mm;--barcode-page-height: 297mm;--barcode-page-margin-x: 0mm;--barcode-page-margin-y: 0mm;--barcode-grid-width: calc(var(--barcode-page-width) - (var(--barcode-page-margin-x) * 2));--barcode-grid-height: calc(var(--barcode-page-height) - (var(--barcode-page-margin-y) * 2));--barcode-grid-gap: 5px;--barcode-label-width: calc((var(--barcode-grid-width) - (var(--barcode-grid-gap) * 2)) / 3);--barcode-label-height: calc((var(--barcode-grid-height) - (var(--barcode-grid-gap) * 14)) / 15);--barcode-preview-scale: .54;--bg0: #eef1f6;--bg1: #f5f7fa;--bg2: #e6ecf3;--surface: #ffffff;--surface-2: #f7f9fc;--surface-3: #eef2f7;--surface-soft: rgba(23,42,69,.035);--surface-soft-2: rgba(23,42,69,.055);--surface-soft-3: rgba(23,42,69,.075);--field: #f1f4f9;--field-focus: #ffffff;--border: rgba(23,42,69,.14);--border-2: rgba(23,42,69,.2);--ink: rgba(19,32,50,.94);--ink-2: rgba(19,32,50,.66);--ink-3: rgba(19,32,50,.46);--accent: #7fb0dd;--accent-2: #a8ccea;--accent-strong: #3d73aa;--accent-ink: #275685;--accent-soft: rgba(61,115,170,.1);--accent-soft-2: rgba(61,115,170,.16);--accent-line: rgba(61,115,170,.3);--prime: #3d73aa;--prime-2: #2f5c8a;--focus: rgba(61, 115, 170, .26);--danger: #b0423e;--danger-ink: #8c302c;--danger-soft: rgba(176,66,62,.12);--danger-line: rgba(176,66,62,.34);--warn: #c98a2e;--warn-ink: #855510;--warn-soft: rgba(201,138,46,.14);--warn-line: rgba(201,138,46,.36);--ok: #1f8a63;--ok-ink: #146246;--ok-soft: rgba(31,138,99,.14);--ok-line: rgba(31,138,99,.36);--shadow-card: 0 10px 30px rgba(23,42,69,.1);--shadow-soft: 0 6px 18px rgba(23,42,69,.07);--radius: 18px;--radius-sm: 14px;--pad: 20px;--pad-lg: 22px;--t-fast: .12s;--t-med: .17s;--ease: cubic-bezier(.2,.8,.2,1)}html{height:100%;margin:0;font-family:var(--font);color:var(--ink);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg0)}body{min-height:100vh;margin:0;display:flex;justify-content:center;align-items:flex-start;color:var(--ink);background:var(--bg0)}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.035;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg xmlns='https://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)' opacity='.45'/%3E%3C/svg%3E")}#root{width:100%;display:flex;justify-content:center;padding-top:28px;position:relative;z-index:1}.wrap{width:min(1220px,100%);padding:0 22px 100px}.appThemeBackdrop{position:fixed;inset:0;z-index:-1;background:var(--bg0)}.stack{display:flex;flex-direction:column;gap:16px}.row{display:flex;align-items:center;gap:10px}.grow{flex:1;min-width:0}.small{font-size:12px}.muted{color:var(--ink-2)}h1,h2,h3{color:var(--ink);letter-spacing:-.03em;margin:0}h1{font-size:28px;font-weight:950}h2{font-size:22px;font-weight:900}h3{font-size:16px;font-weight:900}p{color:var(--ink-2);line-height:1.6;margin:10px 0 0}.logoDot{width:12px;height:12px;border-radius:999px;background:var(--prime)}.card{background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);padding:var(--pad);box-shadow:var(--shadow-card);transition:border-color var(--t-med) var(--ease),background var(--t-med) var(--ease)}.card:hover{border-color:var(--border-2)}.subCard{background:var(--surface-2);border:1px solid var(--border);box-shadow:var(--shadow-soft)}.authCard{max-width:560px;margin:84px auto 0}.sitebar{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);margin-bottom:18px}.pageHeader{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:14px 16px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-soft)}.callout{border-radius:var(--radius-sm);border:1px solid rgba(61,115,170,.26);background:#3d73aa1a;padding:10px 12px;color:var(--ink-2)}button{border:1px solid rgba(23,42,69,.14);background:var(--surface-soft-2);color:var(--ink);min-height:38px;padding:9px 13px;border-radius:12px;cursor:pointer;transition:background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease);box-shadow:none;font-weight:800;letter-spacing:-.01em;display:inline-flex;align-items:center;justify-content:center;gap:8px}button:hover{background:var(--surface-soft-3);border-color:#172a4533}button:active{background:var(--surface-soft)}button:disabled{opacity:.55;cursor:not-allowed}button.primary{border:1px solid rgba(61,115,170,.74);background:#3d73aaf7;color:#fff;font-weight:900}button.primary:hover{background:#3d73aa;border-color:#3d73aaeb}button.warn{border:1px solid rgba(201,138,46,.55);background:#c98a2eeb;color:#1a130c;font-weight:900}button.danger{border:1px solid var(--danger);background:var(--danger);color:#fff;font-weight:900}button.ghost{background:transparent;border:1px solid rgba(23,42,69,.16)}button.ghost:hover{background:#172a450d}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,a:focus-visible{outline:none;box-shadow:0 0 0 4px var(--focus)}input,textarea,select{width:100%;background:var(--field);border:1px solid var(--border);color:var(--ink);padding:11px 12px;border-radius:12px;outline:none;transition:border-color var(--t-fast) var(--ease),background var(--t-fast) var(--ease)}textarea{resize:vertical}input:focus,textarea:focus,select:focus{border-color:#3d73aa9e;background:var(--field-focus);box-shadow:0 0 0 4px var(--focus)}.adminSelectRow{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.adminSelect{min-width:180px;width:auto;padding-right:38px;border-color:#172a4529;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23f3ecec' d='M1.4 1.2 6 5.8l4.6-4.6L12 2.6 6 8 0 2.6z'/%3E%3C/svg%3E") no-repeat right 12px center/12px 8px,var(--field);appearance:none;-webkit-appearance:none;-moz-appearance:none}.adminSelect:disabled{opacity:.55}.title{font-size:20px;font-weight:950;letter-spacing:-.03em}.list{list-style:none;padding:0;margin:0;display:grid;gap:10px}.listItem{display:flex;align-items:center;gap:14px;background:var(--surface-3);padding:14px 15px;border-radius:18px;border:1px solid var(--border);transition:border-color var(--t-med) var(--ease),background var(--t-med) var(--ease)}.listItem:hover{border-color:var(--border-2);background:var(--surface-3)}.check{width:6px;height:6px}input[type=checkbox],input[type=radio]{appearance:none;-webkit-appearance:none;width:18px;height:18px;min-width:18px;min-height:18px;flex:0 0 auto;padding:0;margin:0;border:1px solid rgba(23,42,69,.26);background:var(--surface);box-shadow:inset 0 1px #172a450a;cursor:pointer;transition:border-color var(--t-fast) var(--ease),background-color var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}input[type=checkbox]{border-radius:5px}input[type=radio]{border-radius:999px}input[type=checkbox]:hover,input[type=radio]:hover{border-color:#3d73aa8c}input[type=checkbox]:checked,input[type=radio]:checked{background-color:#3d73aafa;border-color:#3d73aae0;box-shadow:none}input[type=checkbox]:checked{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23ffffff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round' d='M3.5 8.4l3 3 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:13px 13px}input[type=radio]:checked{box-shadow:inset 0 0 0 3px var(--surface)}.pill{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:999px;background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent-ink);font-size:12px;font-weight:900;letter-spacing:.01em}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.cardHead{display:flex;justify-content:space-between;align-items:center;gap:12px}.bulkBar{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;padding:12px;border-radius:18px;background:var(--surface-soft);border:1px dashed rgba(23,42,69,.16)}.tabs{display:flex;gap:6px}.tab{border-radius:999px;padding:8px 12px}.tab.active{background:#3d73aaf7;border:1px solid rgba(61,115,170,.74);color:#fff}.builderShell{--ribbon-h: 108px;position:fixed;inset:0;z-index:40;display:grid;grid-template-rows:auto var(--ribbon-h) minmax(0,1fr);background:var(--bg0)}.builderTopBar{display:flex;align-items:center;gap:14px;padding:10px 16px;background:var(--surface);border-bottom:1px solid var(--border)}.builderTitleInput{flex:1;min-width:0;max-width:520px;background:transparent;border:1px solid transparent;font-size:17px;font-weight:900;letter-spacing:-.02em;padding:8px 10px}.builderTitleInput:hover{border-color:var(--border)}.builderTitleInput:focus{background:var(--field-focus);border-color:var(--accent-line)}.builderTopActions{margin-left:auto;flex-wrap:nowrap;justify-content:flex-end}.builderSaveState{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.builderShell .canvasToolbar{margin:0;height:var(--ribbon-h);overflow:hidden;border-radius:0;border-left:0;border-right:0;border-top:0;background:var(--surface)}.builderBody{display:grid;grid-template-columns:196px minmax(0,1fr) auto;min-height:0}.builderRail{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--border);background:var(--surface)}.builderRailHead{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px;border-bottom:1px solid var(--border)}.builderSlideList{list-style:none;margin:0;padding:10px;display:flex;flex-direction:column;gap:10px;overflow-y:auto;min-height:0}.builderSlideCard{border-radius:12px;border:1px solid var(--border);background:var(--surface-2);overflow:hidden;transition:border-color var(--t-fast) var(--ease)}.builderSlideCard:hover{border-color:var(--border-2)}.builderSlideCard.active{border-color:var(--accent-strong);box-shadow:0 0 0 2px var(--accent-soft-2)}.builderSlideCardMain{justify-content:flex-start;width:100%;display:flex;align-items:flex-start;gap:8px;background:transparent;border:0;border-radius:0;padding:8px;min-height:0}.builderSlideCardMain:hover{background:transparent;transform:none}.builderSlideNumber{flex:0 0 auto;min-width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;background:var(--surface-soft-3);color:var(--ink-2);font-size:11px;font-weight:900}.builderSlideCard.active .builderSlideNumber{background:var(--accent-strong);color:#fff}.slideThumb{position:relative;overflow:hidden;border-radius:6px;border:1px solid var(--border);background:#fff;flex:1;min-width:0}.slideThumbStack{display:flex;align-items:center;justify-content:center;height:64px;text-align:center;padding:4px}.builderSlideCardFoot{display:flex;flex-direction:column;gap:4px;padding:0 8px 8px}.builderSlideCardTitle{font-size:12px;font-weight:800;color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.builderSlideCardTools{display:flex;gap:2px}.builderStageArea{min-width:0;min-height:0;display:flex;flex-direction:column;padding:18px;overflow:hidden}.builderStackScroll{overflow-y:auto;min-height:0;padding-right:4px}.builderSidePanel{position:relative;display:flex;min-height:0;width:320px;border-left:1px solid var(--border);background:var(--surface);transition:width var(--t-med) var(--ease)}.builderSidePanel.collapsed{width:22px}.builderPanelToggle{position:absolute;top:10px;left:-13px;width:26px;height:26px;min-height:0;padding:0;border-radius:999px;background:var(--surface);border:1px solid var(--border);z-index:2;font-weight:900}.builderPanelScroll{flex:1;min-width:0;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:16px}.builderPanelSection{display:flex;flex-direction:column;gap:10px}.builderPanelWide{width:100%}.builderPreviewOverlay{position:fixed;inset:0;z-index:60;background:#172a456b;display:flex;align-items:center;justify-content:center;padding:24px}.builderPreviewFrame{width:min(1000px,100%);max-height:100%;display:flex;flex-direction:column;border-radius:var(--radius);background:var(--bg0);border:1px solid var(--border);box-shadow:var(--shadow-card);overflow:hidden}.builderPreviewHead{padding:12px 16px;border-bottom:1px solid var(--border);background:var(--surface)}.builderPreviewBody{overflow-y:auto;padding:16px;min-height:0}@media(max-width:1000px){.builderBody{grid-template-columns:150px minmax(0,1fr)}.builderSidePanel{display:none}}.builderBlockList{display:flex;flex-direction:column;gap:10px;margin-top:12px}.builderBlock{border-radius:14px;border:1px solid var(--border);background:var(--surface-2);overflow:hidden;transition:border-color var(--t-fast) var(--ease)}.builderBlock.open{border-color:var(--accent-line)}.builderBlockHead{display:flex;align-items:center;gap:6px;padding:6px 8px 6px 0}.builderBlockToggle{justify-content:flex-start;flex:1;min-width:0;display:flex;align-items:center;gap:10px;text-align:left;background:transparent;border:0;border-radius:0;padding:8px 10px;min-height:0}.builderBlockToggle:hover{background:transparent;transform:none}.builderBlockBadge{flex:0 0 auto;padding:3px 9px;border-radius:999px;background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent-ink);font-size:11px;font-weight:900}.builderBlockSummary{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-2);font-weight:600;font-size:13px}.builderBlockChevron{flex:0 0 auto;color:var(--ink-3);font-size:12px}.builderBlockTools{display:flex;gap:2px;flex:0 0 auto}.builderBlockBody{padding:4px 14px 16px;border-top:1px solid var(--border)}.iconBtn{width:28px;height:28px;min-height:0;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:transparent;border:1px solid transparent;color:var(--ink-3);font-size:13px;font-weight:700}.iconBtn:hover:not(:disabled){background:var(--surface-soft-3);border-color:var(--border);color:var(--ink);transform:none}.iconBtn:disabled{opacity:.3}.iconBtn.danger{background:transparent;color:var(--ink-3);border-color:transparent}.iconBtn.danger:hover:not(:disabled){background:var(--danger-soft);border-color:var(--danger-line);color:var(--danger-ink)}.builderFieldLabel{display:block;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);margin-bottom:8px}.builderTextareaLarge{width:100%;min-height:200px;line-height:1.5}.builderTextareaMedium{width:100%;min-height:88px;line-height:1.5}.builderUploadRow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px}.builderFileButton{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:9px 13px;border-radius:12px;border:1px solid var(--border);background:var(--surface-soft-2);color:var(--ink);font-weight:800;font-size:13px;cursor:pointer;white-space:nowrap}.builderFileButton:hover{border-color:var(--border-2)}.builderFileButton input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.builderEditorMediaPreview{margin-top:14px;max-height:280px}.builderOptionList{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.builderOptionRow{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;border:1px solid var(--border);background:var(--surface);transition:border-color var(--t-fast) var(--ease),background var(--t-fast) var(--ease)}.builderOptionRow.correct{border-color:var(--ok-line);background:var(--ok-soft)}.builderOptionMark{display:inline-flex;align-items:center;flex:0 0 auto;cursor:pointer}.builderOptionLetter{flex:0 0 auto;min-width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;background:var(--surface-soft-3);color:var(--ink-2);font-size:11px;font-weight:900}.builderOptionRow.correct .builderOptionLetter{background:var(--ok);color:#fff}.builderEmptyState{padding:22px;border-radius:16px;border:1px dashed var(--border);background:var(--surface-soft);margin-top:12px}.canvasFit{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.canvasStageWrap{position:relative;overflow:hidden;border-radius:10px;background:#fff;box-shadow:var(--shadow-card);border:1px solid var(--border)}.canvasStageWrap .canvasStage{position:absolute;top:0;left:0}.canvasFit .canvasItem{cursor:move;outline:1px solid transparent;transition:outline-color var(--t-fast) var(--ease)}.canvasFit .canvasItem:hover{outline-color:var(--accent-line)}.canvasFit .canvasItem.selected{outline:2px solid var(--accent-strong)}.canvasViewport{position:relative;width:100%;overflow:hidden;margin-top:12px;border-radius:14px;border:1px solid var(--border);background:linear-gradient(45deg,rgba(23,42,69,.03) 25%,transparent 25%,transparent 75%,rgba(23,42,69,.03) 75%) 0 0 / 20px 20px,#fff}.canvasViewport.readOnly{border-color:var(--border);background:#fff}.canvasStage{position:absolute;top:0;left:0;transform-origin:top left}.canvasHint{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:var(--ink-3);pointer-events:none;text-align:center}.canvasHint strong{font-size:20px;color:var(--ink-2)}.canvasHint span{font-size:15px}.canvasItem{box-sizing:border-box;overflow:hidden}.canvasViewport:not(.readOnly) .canvasItem{cursor:move;outline:1px solid transparent;transition:outline-color var(--t-fast) var(--ease)}.canvasViewport:not(.readOnly) .canvasItem:hover{outline-color:var(--accent-line)}.canvasViewport:not(.readOnly) .canvasItem.selected{outline:2px solid var(--accent-strong)}.canvasItem.editing{cursor:text}.canvasText{width:100%;height:100%;padding:4px;overflow:hidden}.canvasPlaceholder{color:#9aa8b8}.canvasTextInput{width:100%;height:100%;padding:4px;margin:0;border:0;border-radius:0;background:#3d73aa0f;resize:none;overflow:auto;font-family:inherit}.canvasTextInput:focus-visible{box-shadow:none;outline:none}.canvasMedia{width:100%;height:100%;object-fit:contain;display:block;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.canvasMediaEmpty{width:100%;height:100%;display:flex;align-items:center;justify-content:center;border:1px dashed var(--border-2);border-radius:6px;background:var(--surface-soft);color:var(--ink-3);font-size:15px;text-align:center;padding:8px}.canvasHandle{position:absolute;width:12px;height:12px;border-radius:3px;background:#fff;border:2px solid var(--accent-strong)}.canvasHandle.nw{top:-6px;left:-6px;transform-origin:top left}.canvasHandle.ne{top:-6px;right:-6px;transform-origin:top right}.canvasHandle.sw{bottom:-6px;left:-6px;transform-origin:bottom left}.canvasHandle.se{bottom:-6px;right:-6px;transform-origin:bottom right}.canvasToolbar{display:flex;flex-direction:column;gap:8px;margin-top:12px;padding:10px;border-radius:14px;border:1px solid var(--border);background:var(--surface-2)}.canvasToolRow{display:flex;align-items:center;gap:6px;min-height:40px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.canvasToolRow::-webkit-scrollbar{display:none}.canvasToolRow.isInert{opacity:.45}.canvasToolLabel{flex:0 0 auto;white-space:nowrap;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);margin-right:2px}.canvasToolDivider{flex:0 0 auto;width:1px;height:22px;background:var(--border);margin:0 4px}.canvasSelect{width:auto;min-width:84px;padding:7px 9px}.canvasCaptionInput{width:auto;min-width:150px;flex:0 1 200px}.iconBtn.active{background:var(--accent-soft-2);border-color:var(--accent-line);color:var(--accent-ink)}.canvasSwatches{flex:0 0 auto;display:flex;gap:4px;flex-wrap:wrap}.canvasSwatch{width:22px;height:22px;min-height:0;padding:0;border-radius:6px;border:2px solid var(--border)}.canvasSwatch.active{border-color:var(--accent-strong);box-shadow:0 0 0 2px var(--accent-soft-2)}.isHidden{display:none}.adminTabBar{display:flex;gap:8px;flex-wrap:wrap;padding:8px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-soft);position:sticky;top:12px;z-index:4}.adminSearch{margin-top:12px}.adminSection{width:100%}.adminSectionHead{display:flex;align-items:center;gap:10px;width:100%}.adminSectionToggle{justify-content:flex-start;flex:1;min-width:0;display:flex;align-items:center;gap:10px;text-align:left;background:transparent;border:0;border-radius:0;padding:6px 0;min-height:0}.adminSectionToggle:hover{background:transparent;transform:none}.adminSectionToggle strong{font-size:16px;font-weight:900}.adminSectionChevron{flex:0 0 auto;width:18px;color:var(--ink-3);font-size:12px}.adminSectionBody{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.scrollList{max-height:360px;overflow-y:auto;overscroll-behavior:contain;padding-right:6px}.modulePickerList{max-height:300px;overflow-y:auto;overscroll-behavior:contain;padding:2px 10px 2px 4px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.dragHandle{opacity:.55}.optionList{display:flex;flex-direction:column;gap:10px}.optionRow{display:grid;grid-template-columns:22px 1fr;align-items:start;column-gap:12px;width:100%}.optionRadio{margin:3px 0 0;justify-self:start}.optionText{color:var(--ink);line-height:1.45;text-align:left;white-space:normal;word-break:break-word}.previewImg{width:100%;max-height:360px;object-fit:contain;border-radius:18px;margin-top:10px;border:1px solid rgba(23,42,69,.1)}.video{width:100%;border-radius:18px;margin-top:10px;border:1px solid rgba(23,42,69,.1)}.appShell{display:grid;grid-template-columns:220px 1fr;gap:16px}.nav{background:var(--surface);border-radius:var(--radius);padding:16px;border:1px solid var(--border)}.navTitle{font-weight:950;letter-spacing:-.03em;margin-bottom:10px;color:var(--ink)}.navBtn{width:100%;text-align:left;margin-bottom:8px;border-radius:12px}.navBtn.active{background:#3d73aaf7;border:1px solid rgba(61,115,170,.74);color:#fff}.navSubGroup{margin:-2px 0 10px;padding-left:12px;border-left:1px solid rgba(23,42,69,.08)}.navSubBtn{width:100%;text-align:left;margin:0;padding:10px 12px;border-radius:10px;background:var(--surface-soft);border:1px solid rgba(23,42,69,.06);color:var(--ink-2);font-size:13px;font-weight:800}.navSubBtn.active{background:var(--accent-soft-2);border-color:var(--accent-line);color:var(--accent-ink)}.navHint{margin-top:10px}.content{min-width:0}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.callListHeroStats{flex-wrap:wrap;justify-content:flex-end}.callListFormGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;align-items:start}.callListField{gap:6px}.callListToolbar{gap:14px;flex-wrap:wrap;align-items:flex-end}.callListFilters{display:flex;align-items:flex-end;justify-content:flex-end;flex-direction:column;gap:10px;flex-wrap:wrap}.callListSearch{width:100%;min-width:280px;max-width:360px}.callListFilterButtons{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.callListFilterButton{display:flex;align-items:center;gap:8px;width:auto;padding:10px 12px;border-radius:999px;border:1px solid rgba(23,42,69,.08);background:#172a450a;color:var(--ink-2);font-size:12px;font-weight:800}.callListFilterButton:hover{background:#172a4512}.callListFilterButtonActive{background:var(--accent-soft-2);border-color:var(--accent-line);color:var(--accent-ink)}.callListFilterCount{min-width:22px;padding:2px 7px;border-radius:999px;background:#172a4514;color:inherit;text-align:center}.callListEntry{display:block;padding:0;gap:0;overflow:hidden}.callListEntryToggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border:none;border-radius:0;background:transparent;text-align:left}.callListEntryToggle:hover{background:#172a450a}.callListEntryToggleOpen{border-bottom:1px solid rgba(23,42,69,.08)}.callListSummaryName{display:block;font-size:16px;font-weight:900;color:var(--ink)}.callListSummaryMeta{flex-wrap:nowrap;justify-content:flex-end;flex-shrink:0}.callListEntryDetails{display:flex;flex-direction:column;gap:12px;padding:16px 18px 18px}.callListSectionLabel{color:var(--ink-3);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.callListSectionStack{gap:18px}.callListSectionHead{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.callListGroupedList{margin-top:0}.callListMeta{display:flex;flex-wrap:wrap;gap:8px 14px;color:var(--ink-3);font-size:12px}.callListNotes{white-space:pre-wrap;line-height:1.6;color:var(--ink-2);padding:12px 14px;border-radius:14px;border:1px solid rgba(23,42,69,.08);background:#172a450a}.callListUpdateList{display:flex;flex-direction:column;gap:10px}.callListUpdateItem{display:flex;flex-direction:column;gap:8px}.callListUpdateHeader{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.callListUpdateHeaderMain{min-width:0}.callListUpdateBody{background:var(--surface-soft)}.callListUpdateDelete{width:auto;padding:8px 10px;border-radius:10px;border:1px solid rgba(23,42,69,.08);background:transparent;color:var(--ink-3);font-size:12px;font-weight:800}.callListUpdateDelete:hover{color:var(--danger-ink);border-color:var(--danger-line);background:var(--danger-soft)}.callListFollowUpPanel{display:flex;flex-direction:column;gap:12px;margin-top:12px;padding:14px;border-radius:14px;border:1px solid rgba(23,42,69,.08);background:var(--surface-soft)}.callListCheckbox{display:flex;align-items:center;gap:10px;color:var(--ink);font-weight:800}.callListCheckbox input{width:16px;height:16px;margin:0}.callListFollowUpNote{border-color:#c98a2e47;background:#c98a2e14}.callListActions{display:flex;flex-wrap:wrap;gap:10px;min-width:0}.callListActions button{width:auto}.callListEditor{margin-top:2px}.callListPillWaiting{background:var(--warn-soft);border-color:var(--warn-line);color:var(--warn-ink)}.callListPillContacted{background:var(--ok-soft);border-color:var(--ok-line);color:var(--ok-ink)}.callListPillSold{background:var(--accent-soft-2);border-color:var(--accent-line);color:var(--accent-ink)}.callListPillFollowUp{background:var(--warn-soft);border-color:var(--warn-line);color:var(--warn-ink)}.callListLink{color:var(--ink);font-weight:800;text-decoration:none}.callListLink:hover{text-decoration:underline}.callListEmpty{margin-top:14px;padding:18px 4px 4px}@media(max-width:900px){.callListFilters{align-items:stretch}.callListFilterButtons{justify-content:flex-start}.callListSearch{max-width:none}}.completionOverviewCard{grid-column:1 / -1}.completionOverviewList{display:flex;flex-direction:column;gap:10px;margin-top:14px}.completionOverviewDistrict{border:1px solid rgba(23,42,69,.08);border-radius:16px;background:var(--surface-soft);overflow:hidden}.completionOverviewDistrictToggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;padding:14px 16px;background:transparent;border:none;color:var(--ink)}.completionOverviewPrimary{min-width:0;display:flex;flex-direction:column;gap:4px}.completionOverviewMeta{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0}.completionOverviewStoreList{display:flex;flex-direction:column;gap:8px;padding:0 16px 14px;border-top:1px solid rgba(23,42,69,.08)}.completionOverviewStoreRow{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:10px}.assignmentGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.toolsPage{gap:18px}.toolsHero{position:relative;overflow:hidden}.toolsHero:after{content:none}.toolsHeroMeta{display:flex;flex-direction:column;gap:6px;margin-top:18px;padding-top:16px;border-top:1px solid rgba(23,42,69,.08)}.toolsHeroSection{color:var(--ink-3);font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.toolsWorkspace{display:grid;grid-template-columns:minmax(320px,380px) minmax(0,1fr);gap:18px;align-items:start}.toolsInputCard,.toolsPreviewCard{display:flex;flex-direction:column;gap:16px;overflow:hidden}.toolsStatRow{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.toolsTextarea{width:100%;min-height:240px;resize:vertical;font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;line-height:1.5}.toolsIssueList{border-top:1px solid rgba(23,42,69,.08);padding-top:14px}.toolsIssueItem{align-items:flex-start}.toolsNoteCard{gap:10px}.toolsPreviewHeader{align-items:flex-start}.toolsPrintSurface{min-height:640px}.barcodeSheetViewport{overflow:auto;width:100%;display:flex;justify-content:flex-start}.barcodeSheetPreviewScale{width:calc(var(--barcode-page-width) * var(--barcode-preview-scale));min-width:calc(var(--barcode-page-width) * var(--barcode-preview-scale));height:calc(var(--barcode-page-height) * var(--barcode-preview-scale))}.barcodeSheetPreviewScale .barcodeSheetPaper{transform:scale(var(--barcode-preview-scale));transform-origin:top left}.barcodeSheetPaper{background:#fdfdfd;color:#101421;border-radius:22px;border:1px solid rgba(10,14,22,.1);box-shadow:inset 0 0 0 1px #ffffffb3;width:var(--barcode-page-width);min-width:var(--barcode-page-width);min-height:var(--barcode-page-height);padding:var(--barcode-page-margin-y) var(--barcode-page-margin-x);box-sizing:border-box}.barcodeSheetGrid{display:grid;grid-template-columns:repeat(3,var(--barcode-label-width));grid-auto-rows:var(--barcode-label-height);justify-content:start;align-content:start;gap:var(--barcode-grid-gap)}.barcodeLabelCard{background:#fff;color:#121824;border:1px solid #e6e9ef;border-radius:0;padding:0;display:flex;flex-direction:column;justify-content:flex-start;gap:0;break-inside:avoid;box-shadow:none;width:var(--barcode-label-width);height:var(--barcode-label-height);box-sizing:border-box;cursor:default}.barcodeQuietCard{background:#fff;border:none;border-radius:0;padding:5px;box-sizing:border-box;width:100%;height:calc(100% - 16px);display:flex;align-items:center;justify-content:center}.barcodeSvg{display:block;width:100%;height:100%}.barcodeLabelValue{height:16px;display:flex;align-items:flex-start;justify-content:center;padding:0 4px 2px;box-sizing:border-box;font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;font-size:10pt;font-weight:700;letter-spacing:.02em;line-height:1;color:#111;white-space:nowrap;overflow:hidden;text-overflow:clip}.toolsEmptyState{min-height:320px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center}.learnerManageCard{display:flex;flex-direction:column;gap:18px}.assignmentSection{display:flex;flex-direction:column;gap:12px}.choiceList{display:grid;gap:8px}.choiceRow{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:26px;padding:6px 2px}.choiceRow input{margin-top:0;justify-self:center}.choiceLabel{min-width:0;color:var(--ink);font-size:13px;line-height:1.4;padding-left:2px;padding-right:18px}.choiceContent{min-width:0;display:flex;align-items:center}.moduleChoiceRow{grid-template-columns:10px minmax(0,1fr) minmax(170px,auto)}.moduleChoiceActions{align-items:center;gap:8px}.assignmentSummaryItem{align-items:flex-start;justify-content:space-between;gap:16px}.assignmentFooterCard{grid-column:1 / -1}.assignmentFooter{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:6px;border-top:1px solid rgba(23,42,69,.08)}.assignmentSummaryHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.assignmentMetaRow{display:grid;grid-template-columns:108px minmax(0,1fr);gap:10px;align-items:flex-start}.assignmentMetaLabel{color:var(--ink-3);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.assignmentMetaValue{color:var(--ink-2);font-size:13px;line-height:1.45}.assignmentActions{display:flex;flex-direction:column;align-items:flex-end;gap:8px;min-width:190px}.assignmentHint{text-align:right;max-width:190px;line-height:1.4}.pendingPill{background:#172a4514;border-color:#172a4529}.statusLine{font-size:12px}.dangerText{color:var(--danger-ink)}.okText{color:var(--ok-ink)}.kpiLabel{color:var(--ink-3);font-size:12px;text-transform:uppercase;letter-spacing:.1em;font-weight:950}.kpiValue{font-size:32px;font-weight:1000;letter-spacing:-.04em;margin-top:6px;color:var(--ink)}.slideAnim{animation:slideIn var(--t-med) var(--ease)}@keyframes slideIn{0%{transform:translateY(3px);opacity:0}to{transform:translateY(0);opacity:1}}a{color:var(--accent-ink);font-weight:850;text-decoration:none}a:hover{text-decoration:underline}.RedBookTocDropdown{margin-top:18px}.redbookTocToggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left}.redbookTocToggleLabel{font-weight:900;letter-spacing:-.02em}.redbookTocToggleMeta{white-space:nowrap}.redbookTocPanel{margin-top:14px;border-radius:18px;border:1px solid rgba(23,42,69,.1);background:var(--surface);box-shadow:var(--shadow-soft);overflow:hidden}.redbookTocPanelInner{padding:20px 20px 14px;max-height:460px;overflow:auto}.redbookTocSection{margin-bottom:26px}.redbookTocSection:last-child{margin-bottom:0}.redbookTocSectionTitle{font-size:18px;font-weight:950;letter-spacing:-.03em;color:var(--ink);margin-bottom:14px;padding-bottom:8px;border-bottom:1px solid rgba(23,42,69,.08)}.redbookTocItems{display:flex;flex-wrap:wrap;gap:10px}.redbookTocItem{width:auto;max-width:100%;padding:10px 14px;border-radius:14px;background:var(--surface-soft);border:1px solid rgba(23,42,69,.12);color:var(--ink);text-align:left;line-height:1.35}.redbookTocItem:hover{background:var(--surface-soft-3);border-color:#172a4529}.redbookTocItem.active{background:#3d73aa29;border-color:#3d73aa47}.redbookTocFooter{display:flex;justify-content:center;padding:14px 18px 18px;border-top:1px solid rgba(23,42,69,.08);background:var(--surface-soft)}.redbookSearchResults{margin-top:12px;max-height:220px;overflow:auto;padding-right:4px}.redbookState{padding:18px;border-radius:14px;background:var(--surface-soft);border:1px solid rgba(23,42,69,.08);color:var(--ink-2)}.redbookErrorState{padding:14px 16px;border-radius:14px;background:#3d73aa1a;border:1px solid rgba(61,115,170,.24);color:var(--ink)}.redbookFullscreenOverlay{position:fixed;inset:0;z-index:9999;background:#eef1f6fa;padding:16px;overflow:auto}.pdfViewerShell{overflow:hidden;padding:14px 12px 8px;background:var(--surface-soft);border:1px solid rgba(23,42,69,.08);border-radius:12px;scrollbar-width:thin;scrollbar-color:rgba(61,115,170,.72) rgba(23,42,69,.05)}.pdfViewerInner{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start}.pdfViewerShell::-webkit-scrollbar{width:12px;height:12px}.pdfViewerShell::-webkit-scrollbar-track{background:var(--surface-soft);border-radius:999px}.pdfViewerShell::-webkit-scrollbar-thumb{background:#3d73aad1;border-radius:999px;border:2px solid var(--surface-3)}.pdfViewerShell::-webkit-scrollbar-thumb:hover{background:#3d73aaf5}.pdfViewerShell::-webkit-scrollbar-corner{background:transparent}.benkyoLogo{display:block}.sitebarDivider{width:1px;height:20px;background:var(--border);flex:0 0 auto}.benkyoLogo.isDrawing>path,.benkyoLogo.isDrawing>circle{stroke-dasharray:1;stroke-dashoffset:1;animation:benkyoDraw 1.05s cubic-bezier(.62,0,.3,1) forwards}@keyframes benkyoDraw{to{stroke-dashoffset:0}}.benkyoShimmerBar{opacity:0}.benkyoLogo.isShimmerOnce .benkyoShimmerBar{animation:benkyoShimmer 1.5s cubic-bezier(.4,0,.2,1) both}.benkyoLogo.isShimmerLoop .benkyoShimmerBar{animation:benkyoShimmer 3.2s cubic-bezier(.4,0,.2,1) infinite}@keyframes benkyoShimmer{0%{transform:translate(0);opacity:0}8%{opacity:1}78%{transform:translate(1720px);opacity:1}92%{transform:translate(1720px);opacity:0}to{transform:translate(1720px);opacity:0}}@media(prefers-reduced-motion:reduce){.benkyoLogo.isDrawing>path,.benkyoLogo.isDrawing>circle{animation:none;stroke-dashoffset:0}.benkyoShimmerBar{animation:none;opacity:0}}.bootScreen{--bp-line: #7ec8ff;--bp-ink: #eaf6ff;--bp-accent: #7ec8ff;position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;background:#0b2033;animation:bootScreenIn .24s var(--ease) both}@keyframes bootScreenIn{0%{opacity:0}to{opacity:1}}.bootBlueprint{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.bpPanel{transition:opacity 90ms steps(2,end)}.bpNote{transition:opacity .12s steps(2,end)}.bpGridFill{transition:opacity .42s ease}.bootScreen.isDocking{background:transparent;pointer-events:none;transition:background .62s cubic-bezier(.4,0,.2,1)}.bootScreen.isDocking .bootBlueprint{animation:bpResolve .64s cubic-bezier(.4,0,.2,1) forwards}@keyframes bpResolve{0%{opacity:1;transform:scale(1);filter:brightness(1)}22%{opacity:1;filter:brightness(1.8)}to{opacity:0;transform:scale(1.06);filter:brightness(1)}}.bootScreen.isDocking .bootMark{--bp-ink: var(--ink);--bp-accent: var(--accent-strong);--bp-line: var(--accent-strong);transition:none}.bootScreen.isDocking .bootRule,.bootScreen.isDocking .bootStatus{animation:none!important;opacity:0;transition:opacity .26s ease}.bootMarkWrap{display:block;will-change:transform;transition:transform .9s cubic-bezier(.55,0,.18,1)}.bootMark{display:block;width:min(1024px,94vw);height:auto}.bootWires,.bootGuides{transition:opacity .42s cubic-bezier(.4,0,.2,1)}.bootLockup{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:20px;padding:0 24px}.bootRule{width:min(320px,70vw);height:2px;border-radius:999px;background:#7ec8ff29;overflow:hidden}.bootRule span{display:block;height:100%;width:100%;border-radius:999px;background:linear-gradient(90deg,transparent,var(--bp-line),transparent);transform-origin:center;transform:scaleX(0);transition:transform .14s linear}.bootRule.isWorking span{width:34%;transform:none;transition:none;animation:bootRuleTravel 1.5s cubic-bezier(.45,0,.55,1) infinite}@keyframes bootRuleTravel{0%{transform:translate(-105%)}to{transform:translate(300%)}}.bootStatus{font-size:11px;font-weight:800;letter-spacing:.32em;text-transform:uppercase;color:#b4dafad9;animation:bootStatusIn .5s var(--ease) .3s both}@keyframes bootStatusIn{0%{opacity:0;transform:translateY(4px)}to{opacity:.95;transform:none}}@media(prefers-reduced-motion:reduce){.bootScreen,.bootRule span,.bootStatus,.bpPanel,.bpNote{animation-duration:1ms;animation-delay:0ms;transition-duration:1ms}.bootRule.isWorking span{animation-duration:3s}}.appPreReveal{opacity:0}.srOnly{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.appRevealShell{animation:appReveal .62s var(--ease) both}@keyframes appReveal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media(max-width:960px){.appShell{grid-template-columns:1fr}.pageHeader{grid-template-columns:1fr;gap:10px}.grid2{grid-template-columns:1fr}.callListHeroStats{justify-content:flex-start}.callListActions{width:100%}.callListActions button{flex:1 1 180px}.callListFilters{width:100%}.callListSearch{min-width:0;max-width:none;flex:1 1 240px}.callListFilters .adminSelect{width:100%}.callListEntryToggle{align-items:flex-start}.callListSummaryMeta{flex-wrap:wrap}.completionOverviewDistrictToggle,.completionOverviewStoreRow{flex-direction:column;align-items:flex-start}.completionOverviewMeta{align-items:flex-start}.assignmentGrid,.toolsWorkspace{grid-template-columns:1fr}.toolsPreviewHeader{flex-direction:column;gap:12px}.barcodeSheetPreviewScale{width:calc(var(--barcode-page-width) * .42);min-width:calc(var(--barcode-page-width) * .42);height:calc(var(--barcode-page-height) * .42)}.assignmentSummaryItem{flex-direction:column}.assignmentActions{align-items:flex-start;min-width:0;width:100%}.assignmentHint{text-align:left;max-width:none}.assignmentMetaRow{grid-template-columns:1fr;gap:4px}.assignmentFooter{flex-direction:column;align-items:flex-start}.redbookTocToggle{flex-wrap:wrap;align-items:flex-start}.redbookTocToggleMeta{white-space:normal}.redbookTocPanelInner{max-height:380px}.redbookTocItems{flex-direction:column}.redbookTocItem,.redbookTocFooter button{width:100%}}@media print{@page{size:A4 portrait;margin:0}html,body{background:#fff!important;color:#111!important}body{display:block}#root{padding-top:0}.appThemeBackdrop,.sitebar,.nav,.toolsHero,.toolsCatalog,.toolsInputCard,.toolsNoteCard,.toolsPreviewHeader{display:none!important}.wrap,.appShell,.content,.toolsPage,.toolsWorkspace,.toolsPreviewCard,.toolsPrintSurface{width:100%!important;max-width:none!important;padding:0!important;margin:0!important;display:block!important;background:transparent!important;border:none!important;box-shadow:none!important}.barcodeSheetPaper{padding:0!important;border:none!important;box-shadow:none!important;border-radius:0!important;background:#fff!important;width:var(--barcode-page-width)!important;min-width:var(--barcode-page-width)!important;min-height:var(--barcode-page-height)!important}.barcodeSheetViewport{overflow:visible!important}.barcodeSheetPreviewScale{width:auto!important;min-width:auto!important;height:auto!important}.barcodeSheetPreviewScale .barcodeSheetPaper{transform:none!important}.barcodeSheetGrid{grid-template-columns:repeat(3,var(--barcode-label-width))!important;grid-auto-rows:var(--barcode-label-height)!important;gap:var(--barcode-grid-gap)!important;justify-content:start!important}.barcodeLabelCard{appearance:none!important;box-shadow:none!important;page-break-inside:avoid}}
