@import url("https://fonts.googleapis.com/css2?family=Baloo+2:wght@600;700&family=Figtree:wght@400;500;600;700;800&display=swap");:root{--primo-teal:#02a9b0;--primo-navy:#053d92;--primo-blue:#0245aa;--primo-pink:#e40966;--primo-red:#fb160c;--ink-900:#16233f;--ink-700:#3d4c6b;--ink-500:#5c6b8a;--ink-300:#b9c4d8;--line-200:#dde4ef;--surface-100:#edf1f8;--surface-50:#f5f7fb;--surface-0:#fff;--success-600:#0e8345;--success-100:#e2f5e9;--warning-700:#b54708;--warning-100:#fdf0e3;--error-600:#b3261e;--error-100:#fbeae9;--error-border:#f3c2be;--info-600:#0245aa;--info-100:#e7eefb;--practice-text:#02777c;--celebrate-pink-bg:#fce7f0;--celebrate-pink-text:#b00050;--fb-correct-text:#0e8345;--fb-correct-bg:#e2f5e9;--fb-correct-border:#9bd8b4;--fb-close-text:#b54708;--fb-close-bg:#fdf0e3;--fb-close-border:#edc49a;--fb-work-text:#6d3fc5;--fb-work-bg:#f0eafb;--fb-work-border:#cdb8f0;--font-ui:"Figtree","Avenir Next","Segoe UI",sans-serif;--font-display:"Baloo 2","Figtree",sans-serif;--text-xs:12px;--text-sm:14px;--text-md:16px;--text-lg:20px;--text-xl:26px;--text-2xl:34px;--text-display:56px;--r-sm:8px;--r-md:12px;--r-lg:20px;--r-pill:999px;--hit-min:44px;--ease-out:cubic-bezier(0.22,1,0.36,1);--dur-fast:120ms;--dur-med:240ms;--dur-slow:420ms;--focus-ring:0 0 0 3px rgba(2,69,170,.18);--shadow-1:0 1px 3px rgba(5,61,146,.08);--shadow-2:0 4px 14px rgba(5,61,146,.1);--shadow-3:0 10px 32px rgba(5,61,146,.14);--shadow-btn:0 4px 14px rgba(5,61,146,.18)}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:var(--surface-50);color:var(--ink-900);font-family:var(--font-ui);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--primo-blue);text-decoration:none}a:hover{color:var(--primo-navy)}button{font:inherit}:focus-visible{outline:none;box-shadow:var(--focus-ring)}input:focus,input:focus-visible,select:focus,select:focus-visible,textarea:focus,textarea:focus-visible{outline:none;box-shadow:var(--shadow-1)}.primo-page{min-height:100vh;display:flex;flex-direction:column;background:var(--surface-50)}.primo-header{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px;padding:12px 28px;background:var(--surface-0);border-bottom:1px solid var(--line-200)}.primo-header__actions{display:flex;align-items:center;gap:12px;margin-left:auto;flex-shrink:0}.primo-header__eyebrow{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-500)}.primo-header__title{font-size:16px;font-weight:700;color:var(--ink-900)}.primo-header__brand{display:flex;align-items:center;gap:16px;min-width:0}.primo-header__brand-text{display:flex;flex-direction:column;gap:2px;min-width:0}.primo-logo{display:block;height:auto;width:auto;flex-shrink:0}.primo-logo--header{height:40px;width:auto;max-width:120px}.primo-logo--hero{height:64px;width:auto;max-width:200px}.primo-main{flex:1 1;padding:24px 28px;display:flex;justify-content:center}.primo-main--center{align-items:center}.primo-content{gap:16px}.primo-content,.primo-panel{width:min(880px,100%);display:flex;flex-direction:column}.primo-panel{background:var(--surface-0);border-radius:20px;box-shadow:var(--shadow-2);padding:36px 44px;gap:28px}.grade-pill{display:flex;align-items:center;gap:10px;margin-left:auto;background:var(--surface-100);border-radius:999px;padding:6px 14px 6px 8px;flex-shrink:0}.grade-pill__value{font-family:var(--font-display);font-size:17px;font-weight:700;color:var(--primo-navy);line-height:1.05}.grade-pill__label{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-500)}.ActionButton{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--hit-min);padding:10px 22px;border-radius:var(--r-md);border:none;font-family:var(--font-ui);font-size:15px;font-weight:700;line-height:1.2;cursor:pointer;text-decoration:none;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.ActionButton--primary{min-height:48px;background:var(--primo-blue);color:#fff;box-shadow:var(--shadow-btn)}.ActionButton--primary:hover:not(:disabled){background:var(--primo-navy);color:#fff}.ActionButton--primary:focus-visible{outline:none;box-shadow:var(--focus-ring)}.ActionButton--primary:disabled{background:var(--surface-100);color:var(--ink-300);box-shadow:none;cursor:not-allowed}.ActionButton--secondary{background:var(--surface-0);color:var(--primo-navy);border:1.5px solid var(--line-200)}.ActionButton--secondary:hover:not(:disabled){border-color:var(--primo-blue);background:var(--surface-50);color:var(--primo-navy)}.ActionButton--secondary:focus-visible{outline:none;box-shadow:var(--focus-ring)}.ActionButton--secondary:disabled{background:var(--surface-0);color:var(--ink-300);border-color:var(--surface-100);cursor:not-allowed}a.ActionButton,a.ActionButton:focus,a.ActionButton:hover{text-decoration:none}a.ActionButton--primary,a.ActionButton--primary:focus,a.ActionButton--primary:hover{color:#fff}a.ActionButton--secondary,a.ActionButton--secondary:focus,a.ActionButton--secondary:hover{color:var(--primo-navy)}.LinkAction{color:var(--primo-blue);font-weight:600;font-size:14px;background:none;border:none;cursor:pointer;padding:0;font-family:var(--font-ui);text-decoration:none}.LinkAction:hover{color:var(--primo-navy);text-decoration:underline}.ModeToggle{display:flex;background:var(--surface-100);border-radius:var(--r-pill);padding:4px;gap:2px;align-self:flex-start}.ModeToggle button{min-height:var(--hit-min);padding:0 22px;border-radius:var(--r-pill);border:none;background:transparent;color:var(--ink-500);font-family:var(--font-ui);font-size:14px;font-weight:800;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.ModeToggle button.is-selected{background:var(--primo-blue);color:#fff;box-shadow:var(--shadow-1)}.ModeToggle button:focus-visible{outline:none;box-shadow:var(--focus-ring)}.set-headline{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.set-headline h1{margin:0;font-size:24px;font-weight:800}.set-headline__meta{font-size:13.5px;font-weight:600;color:var(--ink-500);margin-left:auto}.set-copy{margin:-6px 0 0;font-size:14px;font-weight:500;color:var(--ink-700)}.set-footnote{margin:0;font-size:12.5px;font-weight:600;color:var(--ink-500)}.ActivityRow{display:flex;align-items:center;gap:16px;width:100%;background:#fff;border:1.5px solid var(--line-200);border-radius:16px;padding:16px 20px;cursor:pointer;font-family:inherit;text-align:left;text-decoration:none;color:inherit;box-shadow:var(--shadow-1);transition:border-color .12s,transform .12s,box-shadow .12s}.ActivityRow:hover{transform:translateY(-1px)}.ActivityRow--current,.ActivityRow:hover{border-color:var(--primo-blue);box-shadow:var(--shadow-2)}.ActivityRow__name{font-size:15.5px;font-weight:800;color:var(--ink-900)}.ActivityRow__meta{font-size:13px;font-weight:600;color:var(--ink-500)}.ActivityRow__score{font-family:var(--font-display);font-size:22px;font-weight:700;color:var(--primo-navy);min-width:36px;text-align:right;flex-shrink:0}.ActivityRow__cta{font-size:13px;font-weight:700;color:var(--primo-blue);flex-shrink:0}.tag{display:inline-flex;align-items:center;font-size:11.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:4px 12px;white-space:nowrap;border:1.5px solid;flex-shrink:0}.tag--graded{color:var(--success-600);background:var(--success-100);border-color:#9bd8b4}.tag--practice{color:var(--practice-text);background:#e6f7f8;border-color:#9ad8db}.tag--dur{color:var(--ink-700);background:var(--surface-100);border-color:transparent;font-weight:700;letter-spacing:0;text-transform:none;font-size:12.5px}.CompletionRing{position:relative;width:44px;height:44px;flex-shrink:0}.CompletionRing__mark{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800}.step-label{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.step-label--listen{color:var(--primo-teal)}.step-label--speak{color:var(--primo-pink)}.step-label--grammar{color:var(--primo-blue)}.model-phrase{margin:0;font-size:32px;font-weight:700;line-height:1.25;color:var(--ink-900);text-wrap:pretty}.play-btn{width:56px;height:56px;border-radius:50%;border:none;background:var(--primo-blue);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-btn);flex-shrink:0;transition:background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.play-btn:hover:not(:disabled){background:var(--primo-navy);transform:scale(1.05)}.play-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.play-btn:disabled{opacity:.55;cursor:not-allowed}.divider{height:1px;background:var(--line-200)}.speak-zone{flex-direction:column;gap:16px;min-height:250px}.RecordButton,.speak-zone{display:flex;align-items:center;justify-content:center}.RecordButton{position:relative;width:112px;height:112px;border-radius:50%;border:none;cursor:pointer;color:#fff;transition:transform var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.RecordButton--ready{background:var(--primo-blue);box-shadow:0 10px 32px rgba(5,61,146,.25)}.RecordButton--ready:hover{transform:scale(1.05);background:var(--primo-navy)}.RecordButton:focus-visible{outline:none;box-shadow:var(--focus-ring)}.RecordButton--recording{background:var(--primo-pink);box-shadow:0 10px 32px rgba(228,9,102,.3)}.RecordButton__pulse{position:absolute;inset:0;border-radius:50%;background:var(--primo-pink);animation:pulseRing 1.4s ease-out infinite;pointer-events:none}.RecordButton__pulse--delay{animation-delay:.5s}.RecordButton__stop{width:32px;height:32px;border-radius:8px;background:#fff}.eq{display:flex;align-items:flex-end;gap:5px;height:36px}.eq span{width:6px;border-radius:3px;background:var(--primo-pink)}.eq span:first-child{animation:eq1 .7s ease-in-out infinite}.eq span:nth-child(2){animation:eq2 .6s ease-in-out infinite}.eq span:nth-child(3){animation:eq3 .8s ease-in-out infinite}.eq span:nth-child(4){animation:eq2 .75s ease-in-out infinite}.eq span:nth-child(5){animation:eq1 .65s ease-in-out infinite}.spinner{width:56px;height:56px;border-radius:50%;border:5px solid var(--line-200);border-top-color:var(--primo-blue);animation:spin .9s linear infinite}.ScoreDisplay{font-family:var(--font-display);font-size:56px;font-weight:700;color:var(--primo-navy);line-height:1;animation:popIn .42s var(--ease-out)}.WordChip{display:inline-flex;align-items:center;gap:7px;min-height:var(--hit-min);padding:8px 14px;margin:0 6px 8px 0;border-radius:var(--r-sm);font-weight:700;font-size:17px;border:1.5px solid;cursor:pointer;font-family:var(--font-ui);background:#fff;text-decoration-thickness:2px;text-underline-offset:5px;animation:riseIn .3s var(--ease-out)}.WordChip--correct{color:var(--fb-correct-text);background:#fff;border-color:var(--fb-correct-border);-webkit-text-decoration:underline solid;text-decoration:underline solid}.WordChip--correct.is-selected{background:var(--fb-correct-bg);border-color:var(--fb-correct-text)}.WordChip--close{color:var(--fb-close-text);background:var(--fb-close-bg);border-color:var(--fb-close-border);-webkit-text-decoration:underline dashed;text-decoration:underline dashed}.WordChip--close.is-selected{border-color:var(--fb-close-text)}.WordChip--needs-work{color:var(--fb-work-text);background:var(--fb-work-bg);border-color:var(--fb-work-border);-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.WordChip--needs-work.is-selected{border-color:var(--fb-work-text)}.WordChip:focus-visible{outline:none;box-shadow:var(--focus-ring)}.CelebrationPill{display:inline-flex;align-items:center;gap:6px;background:var(--success-100);color:var(--success-600);border-radius:var(--r-pill);padding:5px 12px;font-size:13px;font-weight:800;animation:popIn .42s var(--ease-out)}.CelebrationPill--best{background:var(--celebrate-pink-bg);color:var(--celebrate-pink-text)}.play-btn.is-played{background:var(--primo-teal)}.lesson-time{display:inline-flex;align-items:center;gap:6px;color:var(--ink-500);font-size:13px;font-weight:600;flex-shrink:0}.lesson-time__dot{width:6px;height:6px;border-radius:50%;background:var(--ink-300)}.lesson-listen{display:flex;flex-direction:column;gap:14px}.lesson-listen__row{display:flex;align-items:center;gap:20px}.lesson-listen__hint{font-size:13px;font-weight:600;color:var(--ink-500);margin-left:76px}.speak-zone__title{margin:0;font-size:17px;font-weight:700;color:var(--ink-900)}.speak-zone__sub{margin:0;font-size:14px;font-weight:500;color:var(--ink-500)}.lesson-feedback{display:flex;flex-direction:column;align-items:center;gap:18px;width:100%;animation:riseIn .3s var(--ease-out)}.lesson-feedback__score-row{display:flex;align-items:center;gap:24px;flex-wrap:wrap;justify-content:center}.lesson-feedback__score{display:flex;flex-direction:column;align-items:center}.lesson-feedback__out-of{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-500)}.lesson-feedback__headline-wrap{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.lesson-feedback__headline{font-size:20px;font-weight:800;color:var(--ink-900)}.lesson-feedback__chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;max-width:640px}.lesson-feedback__chips .WordChip{margin:0}.lesson-feedback__actions{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:4px}.lesson-feedback__buttons{display:flex;gap:14px;flex-wrap:wrap;justify-content:center}.lesson-feedback__note{font-size:13px;font-weight:600;color:var(--ink-500);text-align:center}.TipCard{display:flex;gap:14px;align-items:flex-start;background:var(--fb-work-bg);border:none;border-radius:12px;padding:16px 20px;max-width:560px;width:100%;box-shadow:none;animation:riseIn .24s var(--ease-out)}.TipCard__word{font-family:var(--font-display);font-size:22px;font-weight:700;color:var(--fb-work-text);flex-shrink:0}.TipCard--correct{background:var(--fb-correct-bg)}.TipCard--correct .TipCard__word{color:var(--fb-correct-text)}.TipCard--close{background:var(--fb-close-bg)}.TipCard--close .TipCard__word{color:var(--fb-close-text)}.TipCard--needs-work{background:var(--fb-work-bg)}.TipCard--needs-work .TipCard__word{color:var(--fb-work-text)}.TipCard__body{display:flex;flex-direction:column;gap:6px;min-width:0}.TipCard h3{margin:0 0 6px;font-size:15px;font-weight:800}.TipCard p{margin:0;font-size:14.5px;font-weight:600;color:var(--ink-900)}.TipCard__hear{align-self:flex-start;min-height:32px;display:inline-flex;align-items:center;gap:6px;border:none;background:none;padding:0;color:var(--primo-blue);font-family:var(--font-ui);font-size:13.5px;font-weight:700;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.TipCard__hear:hover{color:var(--primo-navy)}.mic-denied{width:min(560px,100%);background:#fff;border-radius:20px;box-shadow:var(--shadow-3);padding:40px 44px;flex-direction:column;gap:18px;text-align:center}.mic-denied,.mic-denied__icon{display:flex;align-items:center}.mic-denied__icon{width:72px;height:72px;border-radius:50%;background:var(--info-100);justify-content:center}.mic-denied h2{margin:0;font-size:24px;font-weight:800;color:var(--ink-900)}.mic-denied p{margin:0;font-size:15px;font-weight:500;color:var(--ink-700);line-height:1.55;max-width:420px}.mic-denied ol{margin:0;padding:0 0 0 20px;text-align:left;font-size:14.5px;font-weight:600;color:var(--ink-900);line-height:2}.mic-denied__help{font-size:13px;font-weight:600;color:var(--ink-500)}.mic-denied__help a{font-weight:700}.StepRail{display:flex;align-items:center;gap:8px;margin-left:auto}.StepRail__seg{height:8px;border-radius:999px;background:var(--line-200);transition:all .24s}.StepRail__seg.is-done{background:var(--primo-teal)}.StepRail__seg.is-current{background:var(--primo-blue)}.StepRail__label{font-size:13px;font-weight:600;color:var(--ink-500);margin-left:4px}.choice-list{display:flex;flex-direction:column;gap:10px}.choice{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1.5px solid var(--line-200);border-radius:var(--r-md);background:#fff;cursor:pointer;font-weight:600;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.choice.is-selected,.choice:hover{border-color:var(--primo-blue)}.choice.is-selected{background:var(--info-100)}.choice input{accent-color:var(--primo-blue)}.confirm-dialog-backdrop{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(22,35,63,.45);animation:confirmFadeIn .15s ease-out}.confirm-dialog{width:min(440px,100%);background:#fff;border-radius:16px;box-shadow:0 12px 40px rgba(5,61,146,.18);padding:24px 28px;display:flex;flex-direction:column;gap:12px;animation:confirmRiseIn .18s ease-out}.confirm-dialog__title{margin:0;font-size:18px;font-weight:800;color:#16233f;line-height:1.3}.confirm-dialog__message{margin:0;font-size:14.5px;font-weight:600;color:#3d4c6b;line-height:1.55}.confirm-dialog__detail{margin:0;font-size:13.5px;font-weight:500;color:#5c6b8a;line-height:1.5}.confirm-dialog__actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:8px}.confirm-dialog__danger{background:#b3261e!important}.confirm-dialog__danger:hover:not(:disabled){background:#922018!important}.score-history-dialog{width:min(480px,100%);max-height:min(80vh,640px);overflow:auto}.score-history-dialog__trail{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:10px 12px;background:#f4f7fc;border-radius:10px}.score-history-dialog__chip{display:inline-flex;align-items:center;gap:4px}.score-history-dialog__arrow{color:#8a96b0;font-weight:700;margin:0 2px}.score-history-dialog__score{font-weight:800;font-size:15px}.score-history-dialog__score.is-past{color:#8a96b0;text-decoration:line-through}.score-history-dialog__score.is-current{color:#0e8345}.score-history-dialog__list{display:flex;flex-direction:column;gap:10px;margin-top:4px}.score-history-dialog__item{border:1px solid #dde4ef;border-radius:10px;padding:10px 12px;background:#fff}.score-history-dialog__item.is-active{border-color:#9fd4b5;background:#f3fbf6}.score-history-dialog__item-head{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:14px;color:#16233f}.score-history-dialog__badge{font-weight:800;font-size:16px;color:#0245aa;flex-shrink:0}.score-history-dialog__meta{margin-top:4px;font-size:12px;font-weight:600;color:#5c6b8a}.score-history-dialog__reason{margin-top:6px;font-size:13px;font-weight:600;color:#3d4c6b;line-height:1.4}@keyframes confirmFadeIn{0%{opacity:0}to{opacity:1}}@keyframes confirmRiseIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.confirm-dialog,.confirm-dialog-backdrop{animation:none}}.choice-list.is-locked .choice,.choice.is-disabled{cursor:default;opacity:.85;background:#f5f7fb}.choice-list.is-locked .choice.is-selected,.choice.is-disabled.is-selected{border-color:#b9c4d8;background:#eef2f8}.resume-review-hint{margin:0;font-size:12.5px;font-weight:700;color:#053d92;background:#e7eefb;border-radius:999px;padding:4px 12px;align-self:flex-start}.InlineAlert{padding:14px 16px;border-radius:var(--r-md);font-size:14.5px;font-weight:500}.InlineAlert,.InlineAlert--info{background:var(--info-100);color:var(--ink-900)}.InlineAlert--success{background:var(--success-100);color:var(--success-600);font-weight:700}.InlineAlert--warning{background:var(--warning-100);color:var(--warning-700);font-weight:700}.InlineAlert--denied,.InlineAlert--error{background:var(--error-100);color:var(--error-600);border:1px solid var(--error-border);font-weight:700}.hub{max-width:960px;margin:0 auto;padding:32px 24px 64px}.cosmos-card{background:#fff;border-radius:20px;box-shadow:var(--shadow-2);overflow:hidden}.cosmos-card__bar{background:var(--primo-navy);color:#fff;padding:14px 22px;font-weight:700;font-size:14px;letter-spacing:.04em}.cosmos-card__body{padding:22px}.cosmos-assignment{display:flex;align-items:center;gap:16px;padding:16px 18px;border:1.5px solid var(--line-200);border-radius:12px;background:var(--surface-50)}@keyframes pulseRing{0%{transform:scale(1);opacity:.55}to{transform:scale(1.55);opacity:0}}@keyframes eq1{0%,to{height:10px}50%{height:34px}}@keyframes eq2{0%,to{height:22px}50%{height:8px}}@keyframes eq3{0%,to{height:14px}50%{height:28px}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes popIn{0%{transform:scale(.7);opacity:0}70%{transform:scale(1.06)}to{transform:scale(1);opacity:1}}@keyframes riseIn{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important}}@media (max-width:640px){.primo-header{padding:12px 16px}.primo-main{padding:16px}.primo-panel{padding:24px 18px}.model-phrase{font-size:22px}.ActivityRow{flex-wrap:wrap}.set-layout{grid-template-columns:1fr!important}}.set-module-picker{display:flex;flex-direction:column;gap:2px;min-width:min(420px,70vw);margin-top:2px}.set-module-picker__label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-500)}.set-module-picker__select{min-height:36px;padding:4px 36px 4px 12px;border:1.5px solid var(--line-200);border-radius:10px;background:#fff;font:inherit;font-size:16px;font-weight:700;color:var(--ink-900);cursor:pointer;max-width:100%;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%235C6B8A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:12px 8px}.set-module-picker__select:focus{outline:none;border-color:var(--primo-blue);box-shadow:var(--shadow-1)}.set-page-main{flex-direction:column;align-items:stretch;justify-content:flex-start;width:100%}.set-layout{display:grid;grid-template-columns:minmax(360px,1fr) minmax(0,1.6fr);grid-gap:32px;gap:32px;width:100%;align-items:start}.set-sidebar{display:flex;flex-direction:column;gap:18px;padding:22px 24px;background:#fff;border:1.5px solid var(--line-200);border-radius:16px;position:-webkit-sticky;position:sticky;top:16px}.set-sidebar__summary{display:flex;gap:18px;align-items:flex-start}.set-sidebar__title{font-weight:800;font-size:20px;line-height:1.25;color:var(--ink-900)}.set-sidebar__meta{color:#5c6b8a;font-size:14px;margin-top:6px;line-height:1.4}.set-sidebar__continue{align-self:stretch;justify-content:center;text-align:center}.set-sidebar__count{font-size:13px;color:#5c6b8a;font-weight:700;padding-top:4px;border-top:1px solid var(--line-200)}.set-sidebar__filters{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.set-sidebar__filters .ActionButton{padding:10px 12px;font-size:13px;width:100%;justify-content:center}.set-list__items{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.set-list__row-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.set-list__row-meta{font-size:13px;color:#5c6b8a;margin-top:4px}.set-list__footer{margin-top:24px;display:flex;gap:16px;flex-wrap:wrap}.set-list__empty{margin:0;padding:28px 24px;text-align:center;font-size:14.5px;font-weight:600;line-height:1.55;color:var(--ink-muted,#5c6b8a);background:var(--surface-0);border:1px solid var(--border-1,#dde4ef);border-radius:14px}@media (max-width:900px){.set-layout{grid-template-columns:1fr}.set-sidebar{position:static}}.teacher-main{flex:1 1;padding:22px 28px;display:flex;flex-direction:column;gap:18px;min-width:0;width:100%;max-width:1366px;margin:0 auto}.teacher-header__meta{font-size:13px;font-weight:600;color:var(--ink-500);white-space:nowrap}.teacher-header__actions{display:flex;align-items:center;gap:10px;margin-left:auto;flex-shrink:0}.SummaryStrip{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px}.SummaryTile{background:var(--surface-0);border-radius:16px;box-shadow:var(--shadow-1);padding:16px 20px;display:flex;flex-direction:column;gap:2px}.SummaryTile__value{font-family:var(--font-display);font-size:30px;font-weight:700;color:var(--primo-navy);line-height:1.1}.SummaryTile__value--warn{color:var(--warning-700)}.SummaryTile__value span{font-size:16px}.SummaryTile__label{font-size:12.5px;font-weight:700;color:var(--ink-500)}.FlagFilters{display:flex;flex-wrap:wrap}.FlagFilter,.FlagFilters{align-items:center;gap:8px}.FlagFilter{min-height:var(--hit-min);display:inline-flex;padding:8px 16px;border-radius:var(--r-pill);border:1.5px solid var(--line-200);background:var(--surface-0);color:var(--ink-700);font:inherit;font-size:13.5px;font-weight:700;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.FlagFilter:hover{border-color:var(--primo-blue)}.FlagFilter:focus-visible{outline:none;box-shadow:var(--focus-ring)}.FlagFilter[aria-pressed=true]{border-color:var(--primo-blue);background:var(--info-100);color:var(--primo-navy)}.FlagFilter__count{font-weight:800;opacity:.75}.FlagFilters__live{font-size:13px;font-weight:600;color:var(--ink-500);margin-left:auto}.RosterTable{background:var(--surface-0);border-radius:20px;box-shadow:var(--shadow-1);overflow:hidden}.RosterRow,.RosterTable__head{display:grid;grid-template-columns:minmax(180px,1.4fr) repeat(3,minmax(90px,.8fr)) minmax(90px,.8fr) minmax(110px,.9fr) minmax(90px,.8fr) minmax(180px,1.3fr);grid-gap:0 12px;gap:0 12px;align-items:center;padding:12px 20px}.RosterTable__head{border-bottom:1px solid var(--line-200);background:var(--surface-50)}.RosterTable__head span{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-500)}.RosterRow{width:100%;min-height:56px;padding:10px 20px;border:none;border-bottom:1px solid var(--surface-100);background:var(--surface-0);font:inherit;text-align:left;cursor:default;color:inherit;text-decoration:none}.RosterRow--clickable{cursor:pointer}.RosterRow--clickable:hover{background:var(--surface-50)}.RosterRow:last-child{border-bottom:none}.RosterRow__student{display:flex;align-items:center;gap:10px;min-width:0}.RosterRow__avatar{width:32px;height:32px;border-radius:50%;background:var(--info-100);color:var(--primo-navy);display:flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:800;flex-shrink:0}.RosterRow__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.RosterRow__name,.RosterRow__score{font-size:14.5px;font-weight:700;color:var(--ink-900)}.RosterRow__score--empty{color:var(--ink-300)}.RosterRow__score--low{color:var(--warning-700)}.RosterRow__grade{font-size:15px;font-weight:800;color:var(--primo-navy)}.RosterRow__comp{display:flex;align-items:center;gap:8px}.RosterRow__bar{flex:1 1;max-width:64px;height:6px;border-radius:999px;background:var(--surface-100);overflow:hidden}.RosterRow__bar>span{display:block;height:100%;background:var(--primo-teal);border-radius:999px}.RosterRow__compPct{font-size:12.5px;font-weight:700;color:var(--ink-500)}.RosterRow__time{font-size:13.5px;font-weight:600;color:var(--ink-700)}.RosterRow__flags{display:flex;gap:6px;flex-wrap:wrap}.FlagPill{display:inline-flex;align-items:center;font-size:11.5px;font-weight:800;border-radius:999px;padding:3px 10px;white-space:nowrap}.FlagPill--notstarted{color:#3d4c6b;background:#edf1f8}.FlagPill--stuck{color:#b54708;background:#fdf0e3}.FlagPill--mic{color:#053d92;background:#e7eefb}.FlagPill--verify{color:#6d3fc5;background:#f0eafb}.teacher-footnote{margin:0;font-size:13px;font-weight:600;color:var(--ink-500)}.teacher-empty{max-width:560px;margin:60px auto;background:var(--surface-0);border-radius:20px;box-shadow:var(--shadow-2);padding:36px 40px;display:flex;flex-direction:column;gap:12px;text-align:center;align-items:center}.teacher-empty__zero{width:64px;height:64px;border-radius:50%;background:var(--info-100);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:24px;font-weight:700;color:var(--primo-blue)}@media (max-width:1100px){.SummaryStrip{grid-template-columns:repeat(2,1fr)}.RosterRow,.RosterTable__head{grid-template-columns:minmax(140px,1.2fr) repeat(3,minmax(70px,.7fr)) minmax(70px,.7fr) minmax(100px,.9fr) minmax(160px,1.2fr)}.RosterRow>:nth-child(7),.RosterTable__head span:nth-child(7){display:none}}@media (max-width:720px){.teacher-main{padding:16px}.RosterTable__head{display:none}.RosterRow{display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:14px 16px}.RosterRow__comp .RosterRow__bar{max-width:none}}.s10-main{flex:1 1;padding:22px 28px;display:flex;gap:18px;min-width:0;align-items:flex-start;width:100%;max-width:1366px;margin:0 auto}.s10-left{flex:1.5 1;flex-direction:column;min-width:0}.s10-left,.s10-right{display:flex;gap:16px}.s10-right{flex:1 1;flex-direction:column;min-width:300px;max-width:420px}.s10-grades{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px}.SummaryTile--navy{background:var(--primo-navy)}.SummaryTile--navy .SummaryTile__value{color:#fff}.SummaryTile--navy .SummaryTile__label{color:#b9c9e8}.s10-panel{background:var(--surface-0);border-radius:20px;box-shadow:var(--shadow-1);padding:20px 24px;display:flex;flex-direction:column;gap:14px}.s10-panel h2{margin:0;font-size:17px;font-weight:800}.s10-panel__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.s10-panel__head>span{font-size:12.5px;font-weight:600;color:var(--ink-500)}.AttemptList{display:flex;flex-direction:column;gap:8px}.AttemptRow{display:flex;align-items:center;gap:14px;border:1.5px solid var(--surface-100);border-radius:14px;padding:12px 16px;background:var(--surface-0)}.AttemptRow--flag{border-color:#cdb8f0;background:#fdfbff}.AttemptRow__play{width:40px;height:40px;border-radius:50%;border:none;background:var(--primo-blue);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.AttemptRow__play:disabled{opacity:.35;cursor:not-allowed}.AttemptRow__play.is-playing{background:var(--primo-pink)}.AttemptRow__pause{display:flex;gap:3px;width:14px;height:14px}.AttemptRow__pause:after,.AttemptRow__pause:before{content:"";width:4px;height:14px;background:#fff;border-radius:2px}.AttemptRow__body{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.AttemptRow__item{font-size:14px;font-weight:700;color:var(--ink-900);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.AttemptRow__item--link{text-decoration:none;color:var(--primo-navy)}.AttemptRow__item--link:hover{color:var(--primo-blue);text-decoration:underline}.AttemptRow__count{font-size:12.5px;font-weight:700;color:#5c6b8a;white-space:nowrap}.AttemptRow__meta{font-size:12.5px;font-weight:600;color:var(--ink-500)}.AttemptRow__score{font-family:var(--font-display);font-size:20px;font-weight:700;color:var(--primo-navy);flex-shrink:0;min-width:36px;text-align:right}.AttemptRow__score--link{text-decoration:none}.AttemptRow__score--link:hover{text-decoration:underline}.AttemptRow__score.is-kept{color:var(--ink-500)}a.AttemptRow--link{text-decoration:none;color:inherit;display:flex;transition:background .12s ease}a.AttemptRow--link:hover{background:#f5f7fb}.AttemptRow__play--static{cursor:default;pointer-events:none;opacity:.7}.teacher-answer-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.teacher-answer-card{border:1.5px solid #edf1f8;border-radius:14px;padding:14px 16px;display:flex;flex-direction:column;gap:8px;background:#fff}.teacher-answer-card__head{display:flex;align-items:center;justify-content:space-between;gap:10px}.teacher-answer-card__n{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#5c6b8a}.teacher-answer-card__prompt{margin:0;font-size:15px;font-weight:700;color:#16233f;line-height:1.45}.teacher-answer-card__prompt.muted{font-weight:600;color:#5c6b8a}.teacher-answer-card__lines{display:flex;flex-direction:column;gap:6px;font-size:14px}.teacher-answer-card__lines>div{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}.teacher-answer-card__label{font-size:11.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#5c6b8a;min-width:72px}.AdjudicationCard{background:#f0eafb;border:1.5px solid #cdb8f0;border-radius:20px;padding:18px 22px;display:flex;flex-direction:column;gap:10px}.AdjudicationCard__title{font-size:14.5px;font-weight:800;color:#6d3fc5}.AdjudicationCard p{margin:0;font-size:13.5px;font-weight:500;color:var(--ink-900);line-height:1.55}.AdjudicationCard__actions{display:flex;gap:10px;flex-wrap:wrap}.OverrideForm{gap:10px}.OverrideForm,.OverrideForm label{display:flex;flex-direction:column}.OverrideForm label{gap:5px}.OverrideForm label>span{font-size:12.5px;font-weight:700;color:var(--ink-700)}.OverrideForm__field,.OverrideForm__input{min-height:44px;padding:11px 14px;border:1.5px solid var(--line-200);border-radius:12px;font:inherit;font-size:14px;font-weight:700;color:var(--ink-900);background:var(--surface-0)}.OverrideForm__input:focus,.OverrideForm__input:focus-visible{border-color:var(--primo-blue);outline:none;box-shadow:var(--shadow-1)}.OverrideForm__select{-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 L6 6.5 L11 1.5' fill='none' stroke='%23053D92' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}.OverrideForm textarea.OverrideForm__input{font-weight:500;resize:vertical}.CoachGrowth__level{display:flex;align-items:center;gap:14px}.CoachGrowth__ring{width:52px;height:52px;border-radius:50%;background:var(--info-100);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:22px;font-weight:700;color:var(--primo-navy)}.CoachGrowth__bars{display:flex;flex-direction:column;gap:8px}.CoachGrowth__row{display:flex;align-items:center;gap:10px}.CoachGrowth__sym{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:13px;font-weight:700;color:var(--primo-navy);width:38px}.CoachGrowth__label{font-size:12.5px;font-weight:700;color:var(--ink-700);width:70px;text-align:right}.CoachGrowth__exams{border-top:1px solid var(--line-200);padding-top:12px;display:flex;flex-direction:column;gap:6px}.CoachGrowth__exams>span:first-child{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-500)}.CoachGrowth__exams>div{display:flex;gap:14px;flex-wrap:wrap;font-size:13.5px;font-weight:700}.CoachGrowth__exams strong{color:var(--primo-navy)}@media (max-width:1100px){.s10-main{flex-direction:column}.s10-right{max-width:none;width:100%}.s10-grades{grid-template-columns:repeat(2,1fr)}}@media (max-width:720px){.s10-main{padding:16px}}.builder-trail{gap:0;flex-wrap:wrap;margin-left:auto}.builder-trail,.builder-trail__item{display:flex;align-items:center}.builder-trail__pill{font-size:12.5px;font-weight:700;white-space:nowrap;color:var(--ink-500);padding:5px 10px;border-radius:999px}.builder-trail__pill.is-active{color:var(--primo-navy)}.builder-trail__pill.is-current{background:var(--info-100);color:var(--primo-navy)}.builder-trail__arrow{color:var(--ink-300);margin:0 4px;font-size:12px}.builder-saved{font-size:13px;font-weight:600;color:var(--ink-500);display:inline-flex;align-items:center;gap:6px}.builder-saved__dot{width:7px;height:7px;border-radius:50%;background:var(--success-600)}.builder-shell{flex:1 1;display:flex;min-height:0}.builder-progress{padding:10px 28px 14px;background:var(--surface-0);border-bottom:1px solid var(--line-200)}.builder-progress__meta{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;font-size:13px;font-weight:700;color:var(--ink-700)}.builder-progress__sep{margin:0 6px;color:var(--ink-300);font-weight:600}.builder-progress__pct{color:var(--primo-blue);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.builder-progress__track{height:8px;border-radius:999px;background:var(--surface-100);overflow:hidden}.builder-progress__fill{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--primo-blue),#3d7fd6);transition:width .35s ease}.builder-progress__fill.is-busy{background-size:200% 100%;background-image:linear-gradient(90deg,var(--primo-blue) 0,#5b9aef 45%,var(--primo-blue) 100%);animation:builder-progress-shine 1.2s linear infinite}@keyframes builder-progress-shine{0%{background-position:100% 0}to{background-position:-100% 0}}.builder-generation{gap:18px;max-width:none}.builder-generation__heading{display:flex;align-items:center;gap:14px;color:var(--ink-900);font-size:18px;font-weight:800}.builder-generation__track{width:100%;height:8px;overflow:hidden;border-radius:999px;background:var(--surface-100)}.builder-generation__track>span{display:block;height:100%;border-radius:inherit;background:var(--primo-blue);transition:width .9s var(--ease-out)}.builder-generation__stages{display:flex;flex-direction:column;gap:6px;color:var(--ink-500);font-size:14px;font-weight:600}.builder-generation__stages>span{display:flex;align-items:center;gap:7px}.builder-generation__stages>.is-complete{color:var(--success-600)}.builder-generation__stages>.is-current{color:var(--primo-navy);font-weight:700}.builder-generation__stage-icon{width:12px;flex:0 0 12px;text-align:center}.builder-ready{background:#fff;border:1.5px solid var(--line-200);border-radius:var(--r-lg);padding:28px 32px;display:flex;flex-direction:column;gap:16px;animation:riseIn .24s var(--ease-out)}.builder-ready h1{margin:0;font-size:24px;font-weight:800;color:var(--ink-900)}.builder-ready__checks{display:flex;flex-direction:column;gap:8px;font-size:14.5px;font-weight:600;color:var(--ink-700)}.builder-ready__hint{margin:0;font-size:13.5px;font-weight:500;color:var(--ink-500);line-height:1.5}.builder-ready__cta{align-self:stretch;min-height:48px;font-size:16px;padding:12px 30px}.builder-ready--failed{background:var(--error-100);border-color:#e5b5b2;gap:10px}.builder-ready--failed h1{font-size:18px;color:var(--error-600)}.builder-ready--failed p{margin:0;font-size:14.5px;font-weight:500;color:var(--ink-900);line-height:1.55}.builder-ready--failed .ActionButton{align-self:flex-start}.builder-rail{width:236px;flex-shrink:0;background:var(--surface-0);border-right:1px solid var(--line-200);padding:24px 16px;display:flex;flex-direction:column;gap:4px;overflow-y:auto}.builder-drafts{margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--line-200)}.builder-drafts__head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;font-size:13px}.builder-drafts__empty{margin:0;font-size:12px;color:var(--ink-500);font-weight:600;line-height:1.4}.builder-drafts__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.builder-drafts__item{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;border:1px solid transparent;border-radius:10px;padding:8px 10px;background:transparent;cursor:pointer;font:inherit}.builder-drafts__item:hover{background:var(--surface-50,#f5f7fb)}.builder-drafts__item.is-current{border-color:#0245aa;background:#0245aa12}.builder-drafts__title{font-size:12.5px;font-weight:800;color:var(--ink-900);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.builder-drafts__meta{font-size:11px;font-weight:600;color:var(--ink-500);text-transform:capitalize}.builder-rail__step{display:flex;align-items:center;gap:12px;min-height:44px;padding:8px 12px;border-radius:12px;border:none;text-align:left;cursor:pointer;background:transparent;font:inherit;font-size:14px;font-weight:700;color:var(--ink-900);width:100%}.builder-rail__step:disabled{color:var(--ink-500);cursor:default}.builder-rail__step.is-current{background:var(--info-100);color:var(--primo-navy)}.builder-rail__num{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;flex-shrink:0;background:#fff;color:var(--ink-500);border:1.5px solid #b9c4d8}.builder-rail__num.is-done{background:var(--success-600);color:#fff;border-color:var(--success-600)}.builder-rail__num.is-current{background:var(--primo-blue);color:#fff;border-color:var(--primo-blue)}.builder-rail__note{margin-top:auto;background:var(--info-100);border-radius:12px;padding:12px 14px;font-size:12.5px;font-weight:600;color:var(--primo-navy);line-height:1.5}.builder-main{flex:1 1;padding:28px 36px;overflow:auto;min-width:0}.builder-step h1{margin:0 0 4px;font-size:26px;font-weight:800}.builder-step>p{margin:0 0 20px;font-size:15px;font-weight:500;color:var(--ink-500)}.builder-types{display:grid;grid-template-columns:repeat(auto-fill,minmax(196px,1fr));grid-gap:14px;gap:14px}.builder-type{display:flex;flex-direction:column;gap:10px;padding:16px;border-radius:var(--r-lg);border:2px solid var(--line-200);background:#fff;cursor:pointer;text-align:left;font:inherit;transition:all var(--dur-fast)}.builder-type:hover{border-color:var(--primo-blue);transform:translateY(-2px);box-shadow:var(--shadow-2)}.builder-type.is-selected{border-color:var(--primo-blue);box-shadow:0 4px 14px rgba(5,61,146,.14)}.builder-type:focus-visible{outline:3px solid var(--primo-blue);outline-offset:2px}.builder-type__glyph{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:17px;font-weight:700}.builder-type__name{font-size:15.5px;font-weight:800}.builder-type__desc{font-size:13px;font-weight:500;color:var(--ink-500);line-height:1.45}.builder-type__cat{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--primo-blue)}.builder-manage{margin-top:36px;padding-top:28px;border-top:1px solid var(--line-200)}.builder-manage__head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px;flex-wrap:wrap}.builder-manage__head h2{margin:0 0 6px;font-size:20px}.builder-manage__head p{margin:0;max-width:640px;color:var(--ink-500);font-size:13.5px;font-weight:600;line-height:1.45}.builder-manage__toggle{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--ink-700);white-space:nowrap}.builder-manage__table-wrap{overflow-x:auto;border:1px solid var(--line-200);border-radius:14px;background:var(--surface-0)}.builder-manage__table{width:100%;border-collapse:collapse;font-size:13.5px}.builder-manage__table td,.builder-manage__table th{padding:12px 14px;text-align:left;border-bottom:1px solid var(--line-200);vertical-align:top}.builder-manage__table th{font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-500);background:var(--surface-50,#f5f7fb)}.builder-manage__table tr:last-child td{border-bottom:none}.builder-manage__table tr.is-current td{background:#0245aa0d}.builder-manage__title{font-weight:800;color:var(--ink-900)}.builder-manage__sub{font-size:12px;font-weight:600;color:var(--ink-500)}.builder-manage__status{display:inline-block;padding:3px 8px;border-radius:999px;font-size:12px;font-weight:800;text-transform:capitalize;background:#eef2f8;color:#3d4c6b}.builder-manage__status.is-published{background:#e3f6ec;color:#0e8345}.builder-manage__status.is-approved,.builder-manage__status.is-generated,.builder-manage__status.is-in-review{background:#e8f0fe;color:#0245aa}.builder-manage__status.is-retired{background:#f3f4f6;color:#6b7280}.builder-manage__actions{display:flex;flex-wrap:wrap;gap:8px}.builder-manage__pager{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px}.builder-manage__pager-meta{font-size:13px;font-weight:600;color:var(--ink-500)}.builder-manage__pager-btns{display:flex;align-items:center;gap:10px}.builder-manage__pager-page{font-size:13px;font-weight:700;color:var(--ink-700);min-width:7rem;text-align:center}.builder-panel{background:#fff;border:1.5px solid var(--line-200);border-radius:var(--r-lg);padding:20px 24px;display:flex;flex-direction:column;gap:16px}.builder-panel--settings{padding:24px;gap:20px}.builder-step--attach{display:flex;flex-direction:column;gap:20px}.builder-step--attach .builder-step__intro h1{margin:0 0 4px}.builder-step__lede{margin:0;font-size:15px;font-weight:500;color:#5c6b8a}.builder-counts-copy{max-width:340px;display:flex;flex-direction:column;gap:0}.builder-counts-copy__title{font-size:15px;font-weight:700;color:#16233f;line-height:1.4}.builder-counts-copy__detail{font-size:13px;font-weight:500;color:#5c6b8a;line-height:1.45}.builder-budget-block{display:flex;flex-direction:column;gap:10px}.builder-budget-block__head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.builder-budget-block__title{font-size:15px;font-weight:700;color:#16233f}.builder-budget-block__label{font-size:14px;font-weight:800;color:#0e8345;white-space:nowrap}.builder-budget-block__label.is-over{color:#b42318}.builder-budget-block .builder-budget{margin-top:0}.builder-budget-block__legend{display:flex;flex-wrap:wrap;gap:12px;font-size:12.5px;font-weight:600;color:#3d4c6b}.builder-budget-block__legend>span{display:inline-flex;align-items:center;gap:6px}.builder-budget-block__swatch{width:10px;height:10px;border-radius:3px;flex-shrink:0}.builder-publish{align-self:flex-start;min-height:48px;padding:12px 32px;font-size:16px}.builder-publish__hint{display:block;margin:-10px 0 0;font-size:13px;font-weight:600;color:#5c6b8a;line-height:1.45}.builder-field{display:flex;flex-direction:column;gap:6px;flex:1 1}.builder-field>span{font-size:13px;font-weight:700;color:var(--ink-700)}.builder-select{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:0 16px;border:1.5px solid var(--line-200);border-radius:var(--r-md);background:#fff;font-size:15px;font-weight:700;font-family:inherit;color:var(--ink-900);width:100%;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}select.builder-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:44px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%235C6B8A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:12px 8px}.builder-select:hover:not(:disabled){border-color:var(--primo-blue)}.builder-select:focus,.builder-select:focus-visible{outline:none;border-color:var(--primo-blue);box-shadow:var(--shadow-1)}.builder-vocab{font-size:13.5px;font-weight:600;color:var(--primo-navy);background:var(--info-100);border-radius:var(--r-pill);padding:5px 12px}.builder-vocab-more{font-size:13.5px;font-weight:700;color:var(--primo-blue);padding:5px 4px}.builder-std{display:inline-flex;align-items:center;gap:8px;min-height:36px;max-width:min(520px,100%);font-size:13.5px;font-weight:700;color:var(--primo-navy);background:#fff;border:1.5px solid #b9c4d8;border-radius:var(--r-pill);padding:5px 12px;cursor:pointer;font-family:var(--font-ui);text-align:left;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.builder-std__code{flex-shrink:0;white-space:nowrap}.builder-std__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;min-width:0}.builder-std:hover{border-color:var(--error-600);color:var(--error-600)}.builder-std.is-off{color:var(--ink-500);background:var(--surface-50);border-style:dashed;font-weight:600}.builder-std.is-off:hover{border-color:var(--primo-blue);color:var(--primo-blue)}.builder-std:focus-visible{outline:none;box-shadow:var(--focus-ring)}.builder-param{display:flex;align-items:center;justify-content:space-between;gap:20px}.builder-param .muted,.muted{font-size:13px;font-weight:500;color:var(--ink-500)}.builder-hr{border:none;border-top:1px solid var(--line-200);margin:0}.builder-count{min-width:48px;min-height:var(--hit-min);border-radius:var(--r-md);border:2px solid var(--line-200);background:#fff;color:var(--ink-700);font:inherit;font-size:15px;font-weight:800;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.builder-count.is-selected,.builder-count:hover{border-color:var(--primo-blue)}.builder-count.is-selected{background:var(--info-100);color:var(--primo-navy)}.builder-count:focus-visible{outline:none;box-shadow:var(--focus-ring)}.builder-bands{display:flex;background:var(--surface-100);border-radius:var(--r-md);padding:4px;gap:2px}.builder-bands button{min-height:40px;padding:0 18px;border-radius:9px;border:none;background:transparent;color:var(--ink-500);font:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.builder-bands button:hover:not(.is-selected){color:var(--primo-navy)}.builder-bands button.is-selected{background:#fff;color:var(--primo-navy);box-shadow:var(--shadow-1)}.builder-bands button:focus-visible{outline:none;box-shadow:var(--focus-ring)}.builder-spinner{width:28px;height:28px;border-radius:50%;border:4px solid var(--line-200);border-top-color:var(--primo-blue);animation:spin .9s linear infinite}.builder-item{display:flex;align-items:center;gap:16px;background:#fff;border:1.5px solid var(--line-200);border-radius:16px;padding:14px 18px;transition:border-color var(--dur-fast) var(--ease-out)}.builder-item.is-busy,.builder-item:hover{border-color:var(--primo-blue)}.builder-item__n{width:30px;height:30px;border-radius:50%;background:var(--surface-100);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;color:var(--ink-700);flex-shrink:0}.builder-item__title{margin:0;font-size:15px;font-weight:700;color:var(--ink-900);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.builder-item__meta{display:block;margin-top:2px;font-size:12.5px;font-weight:600;color:var(--ink-500)}.builder-item__actions{display:flex;gap:6px;flex-shrink:0}.builder-item__btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-height:40px;padding:8px 14px;border-radius:10px;border:1.5px solid var(--line-200);background:#fff;color:var(--ink-700);font-family:var(--font-ui);font-size:13px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.builder-item__btn:hover:not(:disabled){border-color:var(--primo-blue);color:var(--primo-blue)}.builder-item__btn:disabled{opacity:.55;cursor:not-allowed}.builder-item__btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.builder-item__rewriting{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--primo-blue);white-space:nowrap}.builder-item__rewriting-spin{width:16px;height:16px;border-radius:50%;border:3px solid var(--line-200);border-top-color:var(--primo-blue);animation:spin .9s linear infinite;flex-shrink:0}.builder-review-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.builder-review-head h1{margin:0 0 4px;font-size:26px;font-weight:800;color:var(--ink-900)}.builder-review-head p{margin:0;font-size:15px;font-weight:500;color:var(--ink-500)}.builder-review-head p strong{color:var(--ink-900);font-weight:700}.builder-review-preview{text-decoration:none;flex-shrink:0;min-height:44px;padding:10px 20px;font-size:14px}.builder-budget{display:flex;height:14px;border-radius:999px;background:var(--surface-100);overflow:hidden;gap:2px;margin-top:10px}.builder-budget>span{display:block;border-radius:2px}.builder-nav{display:flex;justify-content:space-between;max-width:760px;margin-top:24px}.platform-status{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:800;border-radius:999px;padding:6px 14px}.platform-status.is-ok{color:var(--success-600);background:var(--success-100)}.platform-status>span{width:8px;height:8px;border-radius:50%;background:currentColor}.platform-services{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:14px;gap:14px}.platform-service{background:#fff;border-radius:16px;box-shadow:var(--shadow-1);border-top:3px solid var(--primo-teal);padding:14px 18px;display:flex;flex-direction:column;gap:6px}.platform-service__top{display:flex;align-items:center;justify-content:space-between;font-size:13.5px;font-weight:800}.platform-service__dot{width:9px;height:9px;border-radius:50%}.platform-onboard{margin:16px 24px 20px;border:1.5px solid #b9c9e8;border-radius:16px;padding:18px 22px;display:flex;flex-direction:column;gap:14px;background:var(--surface-50)}.platform-onboard__grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:10px;gap:10px}.platform-onboard__step{background:#fff;border:1.5px solid var(--line-200);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:4px;font-size:12.5px}@media (max-width:1100px){.platform-onboard__grid,.platform-services{grid-template-columns:repeat(2,1fr)}}@media (max-width:900px){.primo-page:has(.builder-shell) .builder-trail{order:3;width:100%;margin-left:0;overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;padding-bottom:2px}.primo-page:has(.builder-shell) .primo-header__actions{order:4;width:100%;margin-left:0;flex-wrap:wrap}}@media (max-width:640px){.builder-shell{flex-direction:column}.builder-rail{width:100%;flex:0 0 auto;flex-direction:row;flex-wrap:nowrap;align-items:stretch;gap:4px;padding:12px 16px;border-right:none;border-bottom:1px solid var(--line-200);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.builder-rail__step{width:auto;flex:0 0 auto;white-space:nowrap}.builder-rail__note{display:none}.builder-main{flex:1 1 auto;width:100%;min-width:0}}.org-page .org-header{flex-wrap:wrap;gap:12px 20px}.org-page .primo-logo--header{height:96px;max-width:200px;margin-top:-24px;margin-bottom:-24px}.org-page .primo-header__brand{gap:4px}.org-header__actions{display:flex;align-items:center;gap:10px;margin-left:auto;flex-shrink:0;flex-wrap:wrap}.org-header__actions .ActionButton{font-size:14px}.org-header__actions .ActionButton--primary{min-height:44px}.org-main{display:flex;flex-direction:column;gap:12px;justify-content:flex-start}.org-tiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:12px;gap:12px}.org-tiles .SummaryTile{padding:23px 20px 16px;gap:7px}.org-layout{display:flex;gap:18px;align-items:flex-start}.org-sections{flex:1.5 1;min-width:0;padding:0;gap:0;overflow:hidden}.org-sections__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:16px 24px 8px}.org-sections__head h2{margin:0;font-size:17px;font-weight:800}.org-sections__head>span{font-size:12.5px;font-weight:600;color:var(--ink-muted,#5c6b8a)}.org-sections__grid{display:grid;grid-template-columns:1.3fr .8fr .9fr .9fr 1fr;grid-gap:0 12px;gap:0 12px;align-items:center;padding:16px 24px}.org-sections__grid--head{padding:7px 24px;border-bottom:1px solid var(--border-1,#dde4ef);background:var(--surface-1,#f5f7fb)}.org-sections__grid--head span{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted,#5c6b8a)}.org-sections__row{min-height:66px;border-bottom:1px solid #edf1f8}.org-sections__name{display:flex;flex-direction:column;gap:0}.org-sections__name strong{font-size:14px;font-weight:700;line-height:1.3}.org-sections__name em{font-style:normal;font-size:12px;font-weight:600;line-height:1.3;color:var(--ink-muted,#5c6b8a)}.org-sections__comp{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;color:var(--ink-muted,#5c6b8a)}.org-sections__bar{flex:1 1;max-width:60px;height:6px;border-radius:999px;background:#edf1f8;overflow:hidden}.org-sections__bar>span{display:block;height:100%;background:var(--primo-teal);border-radius:999px}.org-pace-pill{display:inline-flex;align-items:center;font-size:11px;font-weight:800;border-radius:999px;padding:3px 9px;justify-self:start}.org-rail{flex:1 1;display:flex;flex-direction:column;gap:16px;min-width:320px;max-width:418px}.org-exceptions,.org-weights{display:flex;flex-direction:column;gap:12px}.org-exceptions{padding:22px 24px 24px;gap:10px;border-radius:18px}.org-exceptions__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:2px}.org-exceptions__head h2{margin:0;font-size:17px;font-weight:800;color:var(--ink-900)}.org-exceptions__head>span{font-size:12.5px;font-weight:600;line-height:1.35;color:var(--ink-muted,#5c6b8a)}.org-exceptions .org-empty{padding:0}.org-weights{padding:22px 24px 24px;gap:16px;border-radius:18px}.org-weights__head{display:flex;align-items:center;justify-content:space-between;gap:12px}.org-weights__head h2{margin:0;font-size:17px;font-weight:800;color:var(--ink-900)}.org-empty{margin:0;padding:0 24px 20px;font-size:13.5px;font-weight:600;color:var(--ink-muted,#5c6b8a)}.org-exception{display:flex;align-items:center;gap:12px;border:1.5px solid #edf1f8;border-radius:12px;padding:10px 14px}.org-exception__dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.org-exception__body{flex:1 1;min-width:0;display:flex;flex-direction:column}.org-exception__body strong{font-size:13.5px;font-weight:700}.org-exception__body span{font-size:12px;font-weight:600;color:var(--ink-muted,#5c6b8a)}.org-exception__btn{flex-shrink:0;min-height:36px;padding:7px 14px;font-size:12.5px;text-decoration:none}.org-audit-pill{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#6d3fc5;background:#f0eafb;border-radius:999px;padding:5px 12px;white-space:nowrap;flex-shrink:0}.org-weight-bar{display:flex;height:14px;gap:4px}.org-weight-bar>span{border-radius:999px;min-width:0}.org-weight-rows{display:flex;flex-direction:column;gap:10px}.org-weight-row{display:flex;align-items:center;gap:10px}.org-weight-swatch{width:10px;height:10px;border-radius:3px;flex-shrink:0}.org-weight-name{flex:1 1;font-size:14.5px;font-weight:700;color:var(--ink-900)}.org-weight-stepper{display:flex;align-items:center;gap:4px}.org-weight-stepper button{width:34px;height:34px;border-radius:10px;border:1.5px solid #dde4ef;background:#fff;color:var(--primo-navy);font-size:16px;font-weight:800;cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.org-weight-stepper button:hover{border-color:var(--primo-blue)}.org-weight-input-wrap{display:inline-flex;align-items:center;gap:0;min-width:62px;justify-content:center;border:1.5px solid transparent;border-radius:10px;padding:0 4px;height:34px;background:transparent}.org-weight-input-wrap:hover{border-color:#e6ebf4}.org-weight-input-wrap:focus-within{border-color:var(--primo-blue);background:#fff;box-shadow:0 0 0 3px rgba(2,69,170,.15)}.org-weight-input{width:46px;padding:0;border:none;outline:none;background:transparent;font-family:inherit;font-size:15.5px;font-weight:800;color:var(--primo-navy);text-align:right;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.org-weight-input::-webkit-inner-spin-button,.org-weight-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.org-weight-input-wrap>span{font-size:15.5px;font-weight:800;color:var(--primo-navy)}.org-weight-hint{margin:2px 0 0;font-size:12.5px;font-weight:600;line-height:1.45;color:var(--ink-muted,#5c6b8a)}.org-weights__save{align-self:flex-start;min-height:44px;padding:12px 24px;border-radius:12px;font-size:14px}.org-weight-invalid{background:#fdf0e3;border-radius:12px;padding:10px 14px;font-size:12.5px;font-weight:700;color:#b54708}.SummaryTile--warn .SummaryTile__value{color:#b54708}.SummaryTile__value--good{color:#0e8345}@media (max-width:1100px){.org-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.org-layout{flex-direction:column}.org-rail{max-width:none;width:100%}}@media (max-width:720px){.org-sections__grid{grid-template-columns:1fr 1fr;gap:8px}.org-sections__grid--head{display:none}.org-tiles{grid-template-columns:1fr}.org-exceptions,.org-weights{padding:20px 18px 22px}.org-page .primo-logo--header{height:56px;margin:0}.org-sections__grid{padding:12px 24px}}