/* Application surfaces reuse the same tokens, with quiet navigation and clear data. */
.workspace-page,.admin-page{background:var(--surface)}.workspace-page .footer,.admin-page .footer{margin-top:0}.app-shell{display:grid;grid-template-columns:260px minmax(0,1fr);gap:0;max-width:1600px;margin:30px auto 0;align-items:start}.workspace-rail{position:sticky;top:110px;padding:30px 24px;min-width:0}.workspace-rail>.eyebrow{font-size:9px}.workspace-user{display:flex;align-items:center;gap:12px;margin:24px 0 32px;min-width:0}.workspace-user>span{display:grid;place-items:center;width:43px;height:43px;flex-shrink:0;border-radius:14px;background:#1268f314;color:var(--blue);font-weight:600}.workspace-user>div{min-width:0}.workspace-user strong{display:block;font-size:12px;font-weight:500;overflow-wrap:anywhere}.workspace-user small{font-size:10px;color:var(--muted)}.workspace-rail nav{display:grid;gap:6px}.workspace-rail nav a{display:flex;gap:12px;align-items:center;min-height:48px;padding:12px;border-radius:10px;font-size:12px;color:var(--muted)}.workspace-rail nav a.active{background:#1268f311;color:var(--blue)}.workspace-rail nav a:hover{background:white;color:var(--blue)}.workspace-rail nav .ui-icon{width:19px;height:19px}.workspace-rail form{margin-top:28px;padding:0 12px}.workspace-rail form button{background:transparent;border:0;font-size:12px}.app-shell>main{min-width:0;border-left:1px solid var(--line);background:#ffffff66;padding-bottom:40px}.app-shell>main>.container{width:calc(100% - 64px)}.app-shell .page-hero{padding-top:35px;padding-bottom:32px}.app-shell .page-hero h1{font-size:clamp(32px,4vw,48px)}.app-shell .page-hero p{font-size:14px}.app-shell .section{padding-block:32px}.app-shell .cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell .section-head h2{font-size:28px}.dashboard-heading{display:flex;align-items:center;justify-content:space-between;gap:30px}.dashboard-heading .eyebrow{font-size:10px}.dashboard-heading .button-row{flex-shrink:0;gap:18px}.dashboard-heading .button-row button{border:0;background:transparent}.dashboard-heading .text-link{font-size:12px}.dashboard-heading .button{font-size:12px}.dashboard-heading h1{font-size:50px}.dashboard-heading p{margin-top:12px}.cards-grid .panel h3{font-size:24px;line-height:1.35;margin:20px 0}.cards-grid .panel p{font-size:13px;margin:15px 0}.cards-grid .panel .button{font-size:12px;margin-top:10px}.cards-grid .panel small{font-size:12px;color:var(--muted)}.portal-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:40px;align-items:start}.portal-grid h2{font-size:29px;margin-bottom:28px}.portal-grid h3{font-size:22px;margin:24px 0 18px}.portal-grid>aside{min-width:0}.portal-grid>aside .panel{padding:26px}.portal-grid>aside .panel h3{margin-top:0;font-size:24px}.portal-grid>aside .panel p{font-size:13px}.portal-grid>aside .button{font-size:12px;gap:10px}.status-track{display:flex;gap:6px;flex-wrap:wrap;margin:20px 0 35px}.status-track span{font-size:10px;flex:1;min-width:75px;text-align:center;padding:9px 7px;background:var(--surface-alt);border-radius:7px;color:var(--muted)}.status-track span.active{background:var(--blue);color:#fff}.project-conversation{display:grid;gap:15px}.message{border:1px solid var(--line);border-radius:14px;padding:20px;background:white}.message strong{font-size:13px;font-weight:500}.message small{font-size:10px;color:var(--muted);display:block;margin-top:5px}.message p{font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere;margin-top:12px}.timeline-item{border-left:2px solid #1268f339;padding:0 0 24px 20px;margin-left:8px;position:relative}.timeline-item:before{content:'';position:absolute;left:-5px;top:0;width:8px;height:8px;border-radius:50%;background:var(--orange)}.timeline-item strong{font-size:14px;font-weight:500}.timeline-item p{font-size:13px;margin-top:10px}.timeline-item small{font-size:10px;color:var(--muted)}.file-link{display:flex;gap:15px;align-items:center;justify-content:space-between;font-size:13px;padding:14px 18px;border:1px solid var(--line);border-radius:10px;background:white;margin-bottom:10px;overflow-wrap:anywhere}.file-link:hover{border-color:var(--blue)}.printable dl{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px 24px;font-size:14px}.printable dt{color:var(--muted)}.printable dd{margin:0;overflow-wrap:anywhere}.printable h2{font-size:28px}.printable>p{margin:24px 0;font-size:14px}.invoice-total{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding-top:25px;margin-top:30px}.invoice-total strong{font-size:30px;color:var(--blue)}.table-wrap{width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:white;margin-top:24px;overscroll-behavior-x:contain}.table-wrap table{width:100%;border-collapse:collapse;min-width:600px}.table-wrap th,.table-wrap td{padding:18px 20px;text-align:left;border-bottom:1px solid var(--line);font-size:12px;vertical-align:top;max-width:360px;overflow-wrap:anywhere}.table-wrap th{background:var(--surface);font-size:10px;color:var(--muted);font-weight:500;text-transform:uppercase;letter-spacing:.05em}.table-wrap tbody tr:last-child td{border-bottom:0}.table-wrap tbody tr:hover{background:#f7f9fc88}.table-wrap td small{display:block;font-size:10px;color:var(--muted);margin-top:5px}.table-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:12px}.table-actions a,.table-actions button{display:inline-flex;align-items:center;min-height:36px;color:var(--blue)}.table-actions button{border:0;background:transparent;padding:0;font-size:12px;color:var(--danger)}
.project-builder{display:grid;grid-template-columns:270px minmax(0,1fr);gap:64px;align-items:start}.builder-sidebar{position:sticky;top:118px;padding:28px;border:1px solid var(--line);border-radius:20px;background:var(--surface)}.builder-sidebar>.eyebrow{font-size:9px}.step-list{list-style:none;padding:0;counter-reset:step;margin:26px 0 32px;display:grid;gap:20px}.step-list li{display:flex;gap:14px;align-items:center;font-size:12px;color:var(--muted);counter-increment:step}.step-list li:before{content:counter(step,decimal-leading-zero);display:grid;place-items:center;border:1px solid var(--line);background:white;color:var(--muted);width:30px;height:30px;border-radius:50%;font-size:10px;flex-shrink:0}.step-list li.active{color:var(--blue);font-weight:500}.step-list li.active:before{background:var(--blue);border-color:var(--blue);color:white;box-shadow:0 0 0 5px #1268f30a}.builder-sidebar p{font-size:12px}.builder-sidebar a{color:var(--blue)}.builder-body{padding-top:6px;min-width:0}.builder-body legend{font-size:29px;line-height:1.35;font-weight:500;letter-spacing:-.03em}.builder-body legend>span{font-size:12px;color:var(--orange-ink);display:block;margin-bottom:14px}.builder-body fieldset>p{font-size:14px;margin-bottom:28px}.builder-body fieldset>label{margin:24px 0}.service-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0 32px}.service-choices label{display:block;position:relative;cursor:pointer}.service-choices input{position:absolute;right:16px;top:18px;z-index:2}.service-choices label>span{display:flex;flex-direction:column;align-items:flex-start;gap:18px;padding:22px 40px 22px 22px;border:1px solid var(--line);background:white;border-radius:16px;transition:border-color var(--normal),background var(--normal);height:100%}.service-choices strong{font-size:13px;line-height:1.6;font-weight:500}.service-choices .service-icon{width:42px;height:42px}.service-choices input:checked+span{background:#eef5ff;border-color:var(--blue)}.service-choices input:focus-visible+span{outline:3px solid var(--blue);outline-offset:3px}.builder-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:32px;border-top:1px solid var(--line);padding-top:24px}.builder-controls>span{font-size:11px;color:var(--muted);margin:auto}.builder-controls .button{font-size:12px}.review-summary{padding:25px;border:1px solid var(--line);border-radius:16px;background:var(--surface);font-size:14px;margin:20px 0}.review-summary strong{color:var(--ink)}.review-summary p{overflow-wrap:anywhere}.upload-label{padding:22px;border:1px dashed #adbed5;border-radius:12px;background:var(--surface)}.upload-label input{border:0;padding:8px 0;background:transparent;font-size:12px}.upload-label input::file-selector-button{padding:10px 15px;border:1px solid var(--line);border-radius:8px;background:white;font:inherit;margin-right:12px;color:var(--blue);cursor:pointer}
.lesson-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:56px;align-items:start}.lesson-sidebar{padding:25px;background:white;border:1px solid var(--line);border-radius:18px;position:sticky;top:112px}.lesson-sidebar .breadcrumb{margin:0 0 18px;font-size:11px}.lesson-sidebar h2{font-size:21px;margin:5px 0 20px}.lesson-sidebar>a:not(.breadcrumb){display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;line-height:1.8;padding:13px 10px;border-bottom:1px solid var(--line);color:var(--muted)}.lesson-sidebar>a.active{background:#1268f30d;color:var(--blue);border-radius:8px}.lesson-sidebar a>span{font-size:9px;white-space:nowrap}.lesson-content{min-width:0}.lesson-content h1{font-size:clamp(30px,4vw,49px);margin-bottom:28px}.lesson-notes{font-size:16px;line-height:1.95;max-width:780px}.lesson-video{width:100%;aspect-ratio:16/9;background:var(--navy);border:0;border-radius:16px;display:block;margin-bottom:30px}.lesson-row{display:flex;gap:16px;align-items:center;padding:20px;border:1px solid var(--line);border-radius:12px;background:white;margin-bottom:12px;font-size:14px;transition:border-color var(--normal)}.lesson-row:hover{border-color:var(--blue)}.lesson-row>span:last-child{margin-left:auto;color:var(--blue)}.lesson-row small{display:block;font-size:11px;color:var(--muted);margin-top:5px}.lesson-status{width:32px;height:32px;background:var(--surface-alt);color:var(--blue);border-radius:50%;display:grid;place-items:center;flex-shrink:0}.page-hero>progress{max-width:680px;margin-top:25px;height:9px}.quiz-form{display:grid;gap:30px}.quiz-form fieldset{padding:28px;border:1px solid var(--line);background:white;border-radius:18px}.quiz-form legend{font-size:17px;font-weight:500;margin:0;padding:0 8px;max-width:100%}.answer-option{display:flex;align-items:flex-start;gap:12px;padding:15px;border:1px solid var(--line);border-radius:10px;margin-top:14px;font-size:14px;font-weight:400;cursor:pointer}.answer-option:has(input:checked){background:#1268f30a;border-color:var(--blue)}.quiz-score{padding:36px;background:linear-gradient(130deg,#eaf2ff,#fff);border:1px solid var(--line);border-radius:20px;margin-bottom:32px}.quiz-score h2{font-size:32px}.quiz-score p{margin-top:18px}.quiz-score a{color:var(--blue)}
.admin-layout{display:grid;grid-template-columns:265px minmax(0,1fr);max-width:1700px;margin:25px auto 0;min-height:75dvh}.admin-sidebar{background:var(--navy);color:#cad7e8;padding:30px 20px;min-width:0;border-radius:0 20px 0 0}.admin-brand{font-size:29px;font-weight:600;letter-spacing:-.06em;color:#fff;display:block;margin:0 10px 25px}.admin-brand>span{color:var(--orange)}.admin-brand small{display:block;font-size:8px;letter-spacing:.15em;color:#a1b9db;margin-top:7px}.admin-sidebar>a:not(.admin-brand){display:flex;align-items:center;min-height:44px;font-size:11px;padding:11px 13px;border-radius:8px;margin-bottom:3px}.admin-sidebar>a:hover{color:white;background:#ffffff0c}.admin-sidebar>a.active{color:white;background:#1268f3;box-shadow:inset 3px 0 var(--orange)}.admin-sidebar form{margin:20px 13px}.admin-sidebar button{border:0;background:transparent;color:#c1d3ed;font-size:12px;min-height:44px;padding:0}.admin-main{min-width:0;padding:35px 40px 64px}.admin-heading{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:35px}.admin-heading h1{font-size:clamp(29px,3.4vw,44px)}.admin-heading .eyebrow{font-size:9px;margin-bottom:12px}.admin-heading>a{font-size:12px;color:var(--blue);flex-shrink:0;min-height:44px;display:flex;align-items:center}.admin-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.admin-stats .panel{margin:0;padding:26px}.admin-stats span{font-size:11px;display:block;color:var(--muted)}.admin-stats strong{display:block;font-size:30px;line-height:1.4;font-weight:600;color:var(--blue);letter-spacing:-.04em;margin-top:14px;overflow-wrap:anywhere}.admin-home-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:24px;margin-top:30px}.admin-home-grid .panel{margin:0}.admin-home-grid h2{font-size:25px}.admin-home-grid p{font-size:13px}.admin-home-grid a:not(.button){color:var(--blue);font-size:12px}.chart-row{display:grid;grid-template-columns:1fr 1.3fr 25px;gap:16px;align-items:center;font-size:11px;margin:24px 0}.chart-row progress{height:7px}.admin-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px}.admin-toolbar p{font-size:13px}.admin-toolbar .button{font-size:12px}.admin-edit{max-width:1040px}.admin-edit>label:has(textarea){width:100%}.translation-fields{border:1px solid var(--line);padding:22px;border-radius:14px;background:var(--surface)}.translation-fields summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-size:15px;font-weight:500;color:var(--blue)}.translation-fields p{font-size:12px;margin:15px 0 25px}.translation-fields label{margin-top:18px}.admin-main .form-grid>p{font-size:13px}.admin-main .form-grid>h2{font-size:28px}.admin-main .table-wrap{margin-bottom:20px}
@media(max-width:1280px){.app-shell{grid-template-columns:210px minmax(0,1fr)}.workspace-rail{padding-inline:16px}.workspace-rail nav a{font-size:11px;gap:10px}.app-shell>main>.container{width:calc(100% - 48px)}.app-shell .portal-grid{grid-template-columns:minmax(0,1fr) 260px;gap:24px}.app-shell .lesson-layout{grid-template-columns:220px minmax(0,1fr);gap:30px}.dashboard-heading{align-items:flex-start;flex-direction:column;gap:20px}.admin-layout{grid-template-columns:225px minmax(0,1fr)}.admin-main{padding:30px}.admin-sidebar{padding:26px 14px}.admin-home-grid{grid-template-columns:1fr}.admin-stats strong{font-size:27px}.project-builder{gap:40px;grid-template-columns:240px minmax(0,1fr)}}
@media(max-width:1024px){.app-shell{grid-template-columns:1fr;margin-top:12px}.workspace-rail{position:static;padding:20px 30px;background:white;border-bottom:1px solid var(--line)}.workspace-rail>.eyebrow,.workspace-user,.workspace-rail>form{display:none}.workspace-rail nav{display:flex;flex-wrap:wrap;gap:6px}.workspace-rail nav a{font-size:11px;padding:10px 12px;min-height:44px}.app-shell>main{border-left:0}.admin-layout{grid-template-columns:200px minmax(0,1fr)}.admin-main{padding:28px 24px}.admin-stats{grid-template-columns:1fr 1fr;gap:16px}.admin-stats .panel{padding:22px}.admin-stats strong{font-size:29px}.admin-sidebar>a:not(.admin-brand){font-size:10px}.admin-heading{gap:18px}.admin-heading>a{font-size:10px}.project-builder{grid-template-columns:210px minmax(0,1fr);gap:28px}.builder-sidebar{padding:24px 20px}.step-list li{font-size:11px;gap:10px}.service-choices{gap:12px}.service-choices label>span{padding:20px 36px 20px 18px}.service-choices strong{font-size:12px}.portal-grid{grid-template-columns:minmax(0,1fr) 290px;gap:30px}}
@media(max-width:800px){.project-builder{grid-template-columns:1fr;gap:35px}.builder-sidebar{position:static}.builder-sidebar>.eyebrow,.builder-sidebar>p{display:none}.step-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0}.step-list li{font-size:10px}.step-list li:before{width:25px;height:25px;font-size:9px}.builder-body legend{font-size:29px}.portal-grid,.app-shell .portal-grid{grid-template-columns:1fr;gap:32px}.lesson-layout,.app-shell .lesson-layout{grid-template-columns:1fr;gap:32px}.lesson-sidebar{position:static}.lesson-sidebar>a:not(.breadcrumb){font-size:13px}.admin-layout{grid-template-columns:1fr}.admin-sidebar{border-radius:0;display:flex;flex-wrap:wrap;gap:5px;max-height:220px;overflow:auto;padding:20px}.admin-brand{flex:1 1 100%;margin:0 10px 12px;font-size:25px}.admin-sidebar>a:not(.admin-brand){font-size:11px;background:#ffffff08;min-height:40px;margin:0}.admin-sidebar form{margin:0 12px}.admin-sidebar button{font-size:11px}.admin-main{padding:32px}.admin-heading h1{font-size:34px}.app-shell .cards-grid{grid-template-columns:1fr 1fr}.printable dl{grid-template-columns:130px minmax(0,1fr);gap:16px}.admin-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-stats strong{font-size:26px}.admin-stats span{font-size:10px}}
@media(max-width:600px){.workspace-rail{padding:14px 18px}.workspace-rail nav a{font-size:10px;gap:7px;padding:9px 10px}.workspace-rail nav .ui-icon{width:16px;height:16px}.app-shell>main>.container{width:calc(100% - 36px)}.app-shell .page-hero{padding-top:30px}.app-shell .page-hero h1{font-size:34px}.app-shell .cards-grid{grid-template-columns:1fr}.app-shell .section-head h2{font-size:28px}.dashboard-heading{gap:18px}.dashboard-heading .button-row{gap:24px}.cards-grid .panel h3{font-size:25px}.builder-sidebar{padding:20px}.step-list{gap:15px 10px}.step-list li{font-size:9px;line-height:1.5;gap:8px}.step-list li:before{width:23px;height:23px;font-size:9px}.builder-body legend{font-size:27px}.builder-body fieldset>p{font-size:14px}.service-choices{grid-template-columns:1fr 1fr;gap:12px}.service-choices label>span{padding:19px 30px 19px 16px;gap:15px}.service-choices input{right:10px;top:18px;width:18px;height:18px}.service-choices strong{font-size:11px}.service-choices .service-icon{width:37px;height:37px}.service-choices .ui-icon{width:23px;height:23px}.builder-controls{gap:10px}.builder-controls>span{font-size:10px}.builder-controls .button{font-size:11px;padding-inline:15px}.review-summary{padding:20px;font-size:13px}.status-track{gap:5px}.status-track span{font-size:9px;min-width:80px}.portal-grid h2{font-size:27px}.printable dl{grid-template-columns:1fr;gap:5px;font-size:14px}.printable dt{margin-top:14px;font-size:11px}.printable h2{font-size:26px}.invoice-total{align-items:flex-start;flex-direction:column;gap:12px}.invoice-total strong{font-size:30px}.lesson-content h1{font-size:32px}.lesson-notes{font-size:15px;line-height:1.95}.lesson-row{font-size:13px;padding:18px 15px;gap:13px}.lesson-row small{font-size:10px}.lesson-sidebar{padding:23px}.quiz-form fieldset{padding:22px 18px}.quiz-form legend{font-size:16px}.answer-option{padding:14px 12px;font-size:13px}.quiz-score{padding:27px}.admin-main{padding:28px 18px 45px}.admin-heading{align-items:flex-start;flex-direction:column;gap:12px}.admin-heading h1{font-size:30px}.admin-heading>a{font-size:12px}.admin-stats{grid-template-columns:1fr 1fr;gap:13px}.admin-stats .panel{padding:20px}.admin-stats strong{font-size:26px}.admin-stats span{font-size:11px}.admin-home-grid .panel{padding:24px}.admin-home-grid h2{font-size:25px}.admin-edit{padding:23px}.chart-row{font-size:10px;gap:12px}.admin-toolbar p{font-size:12px}.admin-toolbar .button{font-size:11px}.table-wrap th,.table-wrap td{font-size:11px;padding:15px}.table-wrap th{font-size:9px}.translation-fields{padding:18px}.translation-fields summary{font-size:14px}.file-link{font-size:12px}.upload-label{padding:18px}.message p{font-size:13px}}
@media(max-width:360px){.service-choices{grid-template-columns:1fr}.service-choices label>span{flex-direction:row;align-items:center;font-size:12px;padding:18px 40px 18px 18px}.service-choices strong{font-size:12px}.step-list{grid-template-columns:1fr 1fr}.builder-controls .button{font-size:10px;padding-inline:13px}.builder-controls>span{font-size:9px}.admin-stats strong{font-size:23px}.admin-stats .panel{padding:18px}.workspace-rail nav a{font-size:9px}}

@media(max-width:800px){.workspace-rail nav a{font-size:12px}.admin-sidebar>a:not(.admin-brand){font-size:12px;min-height:44px}.admin-stats span{font-size:12px}.table-wrap th{font-size:11px}.table-wrap td{font-size:13px}.table-actions a,.table-actions button{min-height:44px}.builder-controls .button{font-size:12px}.step-list li{font-size:11px}.workspace-rail nav .ui-icon{width:18px;height:18px}}
