/* Shared visual language with the SwiftUI app; no external fonts or assets. */
:root{color-scheme:light;--bg:#f2f2f7;--surface:#fff;--surface-alt:#e9e9ef;--ink:#1c1c1e;--muted:#63636c;--line:#dedee5;--brand:#020782;--button:#020782;--navy:#020782;--r1:#b4232c;--r2:#9c4600;--r3:#766000;--r4:#176b35;--t1:#fde9eb;--t2:#fff0df;--t3:#fff8d6;--t4:#e4f4e8}
body{background:var(--bg);color:var(--ink);font:17px/1.45 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
a,.textbutton,details summary{color:var(--brand)}button,input,select,textarea{font:inherit;min-height:44px}button,input,select,textarea,dialog{color:var(--ink);background:var(--surface);border-color:var(--line)}button{border-radius:12px}button:hover{background:var(--surface-alt)}button.primary,.native-page button,.native-page .button{background:var(--button);color:#fff;border:0;border-radius:12px}button.primary:hover{filter:brightness(1.15)}input,select,textarea{border-radius:10px}input[type=checkbox],input[type=radio],progress{accent-color:var(--brand)}input[type=checkbox]{min-height:0}h1{font-size:34px;font-weight:750;letter-spacing:-.035em}h2{font-size:19px}h3{font-size:17px}.sub,.small,.eyebrow,.native-page .sub{color:var(--muted)}.panel,.card{background:var(--surface);border:0;border-radius:14px;box-shadow:none;padding:20px;margin-bottom:20px}.panel>h2,.native-section-title{font-size:13px;text-transform:uppercase;letter-spacing:.035em;color:var(--muted);font-weight:500}.tag{border-radius:7px;background:var(--surface-alt);color:var(--ink)}.tag.warn,.notice{background:var(--t2);color:var(--r2)}.tag.ok{background:var(--t4);color:var(--r4)}.empty{padding:24px 12px}.avatar,.record-initials{background:var(--surface-alt);color:var(--brand)}.skill-1{background:var(--r1)}.skill-2{background:var(--r2)}.skill-3{background:var(--r3)}.skill-4{background:var(--r4)}
/* Native-style grouped lists and large titles for server-rendered screens. */
.native-page main{width:100%;max-width:860px;margin:0 auto;padding:24px 24px 48px}.native-page header{display:flex;align-items:center;min-height:44px;margin:0 0 20px;color:var(--brand)}.native-page h1{margin:0 0 24px}.native-page h2{color:var(--muted);font-size:13px;text-transform:uppercase;letter-spacing:.03em;font-weight:500}.native-page form{display:grid;gap:14px}.native-page label{display:grid;gap:7px;font-size:15px;margin:0}.native-page input,.native-page select,.native-page textarea{width:100%;max-width:none;padding:12px;border:1px solid var(--line);background:var(--surface);color:var(--ink)}.native-page input[type=checkbox]{width:22px;height:22px}.native-page button{padding:12px 18px}.native-page .records-toolbar{background:var(--surface);border-radius:14px;padding:14px 16px;gap:12px;margin-bottom:24px}.native-page .records-toolbar p{flex:1 1 100%;margin:0}.native-page .records-toolbar a{font-size:15px;min-height:44px;text-decoration:none}.native-page .records-grid{display:grid;grid-template-columns:1fr;gap:12px}.native-page .record-card{position:relative;margin:0;padding:18px;border:0;border-radius:14px;box-shadow:none}.native-page .record-head{gap:14px;padding-right:28px}.native-page .record-initials{width:44px;height:44px;font-size:17px;background:var(--surface-alt);color:var(--brand)}.native-page .record-head h3{font-size:17px;margin:0 0 3px}.native-page .record-head p{font-size:14px}.native-page .record-details{border:0;margin:8px 0 0;padding:0 0 0 58px;font-size:14px}.native-page .record-details ul{padding-left:18px;margin:5px 0}.native-page .record-details b{font-weight:500}.native-page .record-card .button{position:absolute;inset:0;border-radius:14px;background:transparent;color:transparent;font-size:0}.native-page .record-card .button:after{content:'›';position:absolute;right:18px;top:25px;font-size:26px;color:var(--muted)}.native-page .record-card:has(a:hover){background:var(--surface-alt)}.native-page .records-add{margin-top:20px;background:var(--surface)}.native-page .records-add summary{color:var(--brand);font-weight:600}.native-page :focus-visible,:focus-visible{outline:3px solid var(--brand);outline-offset:3px}
/* Four tabs match the native record screen. History stays in the More menu. */
.shell{grid-template-columns:220px minmax(0,1fr)}.record-sidebar{background:var(--surface);color:var(--ink);border-right:1px solid var(--line);padding:28px 16px}.record-sidebar .brand{color:var(--brand);font-size:24px;letter-spacing:-.03em}.record-nav .nav-item{color:var(--muted);border-radius:10px;font-size:15px}.record-nav .nav-item.active,.record-nav .nav-item:hover{background:var(--surface-alt);color:var(--brand)}#record-main{max-width:1050px;padding:0 28px 40px}.record-top{position:sticky;top:0;z-index:9;min-height:68px;margin:0 -4px 24px;padding:8px 4px;background:var(--bg);border-bottom:1px solid var(--line)}.record-identity{flex:1;justify-content:center}.record-identity .avatar,.record-identity .sub{display:none}.record-identity strong{font-size:17px}.record-back{color:var(--brand);text-decoration:none;font-size:16px;min-height:44px;display:flex;align-items:center;gap:4px}.record-menu summary{border:0;background:transparent;color:var(--brand);padding:0;min-width:44px;justify-content:center}.record-menu summary>span{display:none}.record-menu[open]>div{background:var(--surface);border-color:var(--line);border-radius:14px;padding:6px;min-width:200px}.record-menu a,.record-menu .menu-mobile{color:var(--ink)}.record-menu .menu-mobile{display:flex}.record-menu a:hover,.record-menu .menu-mobile:hover{background:var(--surface-alt)}.record-heading{align-items:flex-start;margin:0 0 20px;flex-direction:column}.record-heading h1{font-size:34px}.record-heading .heading-actions{width:100%;display:flex;gap:10px}.record-heading .heading-actions button{flex:1;font-size:16px;min-height:52px}.record-heading .heading-actions .primary{background:var(--surface);color:var(--brand);border:0;text-align:left;justify-content:flex-start;padding:14px 16px}.record-heading .heading-actions .primary svg{width:22px;height:22px;margin-right:5px}.record-top .avatar{width:36px;height:36px}.overview-section{margin-bottom:18px}.overview-section p:last-child{margin-bottom:0}.native-progress{height:6px!important;margin:8px 0 18px}.native-level-row{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--line);font-size:16px}.native-level-row:last-child{border:0}.native-level-row i{width:10px;height:10px;border-radius:50%;flex:none}.native-level-row b{margin-left:auto;font-weight:400;font-variant-numeric:tabular-nums}.training-switch{justify-content:space-between;flex-direction:row-reverse;font-size:17px}.training-switch input{width:51px;height:31px;border:0;background:var(--surface-alt)}.training-switch input:after{width:27px;height:27px;top:2px;left:2px}.training-switch input:checked{background:var(--button)}.training-switch input:checked:after{left:22px}
/* Training stages retain a strong visual boundary, as in SwiftUI. */
.catalog-group{padding:0;overflow:hidden}.catalog-group>summary{background:var(--navy);color:white;padding:18px 16px;font-size:18px;min-height:64px}.catalog-group>summary .sub,.catalog-group>summary .expand-label{color:#e0e3ff}.catalog-group>.subgroup{margin:0;padding:0 16px 12px;border:0}.subgroup>summary{background:var(--surface-alt);color:var(--ink);margin:0 -16px 12px;padding:14px 16px;font-size:16px}.catalog-group .competence{background:var(--surface);padding:16px;margin:12px 0}.competence[class*="competence-level-"]{--rating-edge:var(--line);--rating-tint:var(--surface-alt);--rating-ink:var(--muted);border-radius:12px}.competence.competence-level-1{--rating-edge:var(--r1);--rating-tint:var(--t1);--rating-ink:var(--r1)}.competence.competence-level-2{--rating-edge:var(--r2);--rating-tint:var(--t2);--rating-ink:var(--r2)}.competence.competence-level-3{--rating-edge:var(--r3);--rating-tint:var(--t3);--rating-ink:var(--r3)}.competence.competence-level-4{--rating-edge:var(--r4);--rating-tint:var(--t4);--rating-ink:var(--r4)}.quick-card{background:var(--surface);border-radius:12px}.quick-toggle small{color:var(--muted)}.quick-levels .quick-level-1,.level-buttons .rating-color-1,.level-buttons input:checked+.rating-color-1{background:var(--t1);color:var(--r1);border-color:var(--r1)}.quick-levels .quick-level-2,.level-buttons .rating-color-2,.level-buttons input:checked+.rating-color-2{background:var(--t2);color:var(--r2);border-color:var(--r2)}.quick-levels .quick-level-3,.level-buttons .rating-color-3,.level-buttons input:checked+.rating-color-3{background:var(--t3);color:var(--r3);border-color:var(--r3)}.quick-levels .quick-level-4,.level-buttons .rating-color-4,.level-buttons input:checked+.rating-color-4{background:var(--t4);color:var(--r4);border-color:var(--r4)}.quick-card.quick-level-1{border-color:var(--r1)}.quick-card.quick-level-2{border-color:var(--r2)}.quick-card.quick-level-3{border-color:var(--r3)}.quick-card.quick-level-4{border-color:var(--r4)}.level-buttons{grid-template-columns:repeat(4,minmax(0,1fr))}.level-buttons span{min-height:60px;font-size:12px;padding:6px 3px;overflow-wrap:anywhere}.dialog-head,.dialog-foot,#editor .dialog-foot,dialog{background:var(--surface);border-color:var(--line)}.dialog-head h2{font-size:20px}.dialog-body{background:var(--bg)}.picker,.batch-rating,.summary-item{background:var(--surface);border-color:var(--line);border-radius:14px}.selected-topic,.batch-choice:has(:checked),.topic-choice.chosen{background:var(--surface-alt);color:var(--ink)}.topic-choice{background:var(--surface)}.notice{border-radius:12px}.lesson:last-child{border-bottom:0}.lesson-actions button{color:var(--brand)}.lesson-actions button.primary{color:white}.goal .number{color:var(--brand);border-color:var(--line)}.progress i{background:var(--surface-alt)}
@media(max-width:650px){.shell{display:block}.record-sidebar{padding:0;border:0;height:0}.record-sidebar .brand{display:none}.record-nav{grid-template-columns:repeat(4,minmax(0,1fr));background:var(--surface);border-color:var(--line);box-shadow:none;gap:0;padding-top:7px}.record-nav>a.nav-item,.record-nav .nav-desktop{display:none}.record-nav .nav-item{font-size:10px;font-weight:500;color:var(--muted);border-radius:0;min-height:49px;gap:4px}.record-nav .nav-item.active{background:transparent;color:var(--brand);font-weight:650}.record-nav .nav-item svg{width:24px;height:24px}#record-main{padding:0 16px calc(86px + env(safe-area-inset-bottom))}.record-top{margin:0 -16px 24px;padding:8px 16px;min-height:58px;padding-top:max(8px,env(safe-area-inset-top))}.record-back{font-size:15px}.record-heading h1{font-size:32px}.record-heading .heading-actions{margin-top:18px;flex-wrap:wrap}.record-heading .heading-actions button{flex:1 1 100%}#record-main .panel{padding:18px 16px}#record-main .catalog-group{padding:0}.native-page main{padding:16px 16px max(32px,env(safe-area-inset-bottom))}.native-page h1{font-size:34px}.native-page .record-card{padding:16px}.native-page .records-toolbar{gap:8px}.filters input,.filters select{min-width:0;width:100%}.record-identity{min-width:0}.record-identity strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:46vw}.dialog-head{border-radius:18px 18px 0 0}.metrics{gap:6px}.lesson-actions{display:flex;flex-direction:column}.skill-key{grid-template-columns:1fr}}
:root[data-theme="dark"]{color-scheme:dark;--bg:#000;--surface:#1c1c1e;--surface-alt:#2c2c2e;--ink:#f2f2f7;--muted:#b0b0b8;--line:#3a3a3c;--brand:#91aaff;--button:#5264dc;--r1:#ff9999;--r2:#ffc078;--r3:#ffe178;--r4:#86dfa3;--t1:#422128;--t2:#49301b;--t3:#443d18;--t4:#173c28}:root[data-theme="dark"] .hero{background:var(--surface);border-color:var(--line)}:root[data-theme="dark"] .record-handover{color:var(--brand)}:root[data-theme="dark"] .dialog-head button{background:var(--surface-alt)}:root[data-theme="dark"] .record-nav .nav-item:hover{color:var(--brand);background:var(--surface-alt)}:root[data-theme="dark"] .learning-overview progress{accent-color:var(--brand)}:root[data-theme="dark"] .quick-levels button:focus-visible,:root[data-theme="dark"] .quick-toggle:focus-visible{outline-color:var(--brand)}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.native-progress{appearance:none;border:0;border-radius:6px;background:var(--surface-alt);overflow:hidden}.native-progress::-webkit-progress-bar{background:var(--surface-alt)}.native-progress::-webkit-progress-value{background:var(--brand);border-radius:6px}.native-progress::-moz-progress-bar{background:var(--brand)}
@media(max-width:650px){.record-heading .heading-actions button.primary,.record-heading .heading-actions button:not(.primary){flex:1 1 100%}.catalog-intro p{margin-bottom:10px}.filters{display:grid;grid-template-columns:1fr 1fr}.filters input{grid-column:1/-1}.filters select{font-size:14px!important}.filters button{grid-column:1/-1}.native-page .records-toolbar{justify-content:flex-start}.native-page .records-toolbar a{margin-right:12px}}
.quick-levels button{font-size:11px;hyphens:auto;word-break:normal;overflow-wrap:normal}
/* In-place ratings: the card header stays fixed, the controls expand below it. */
#competenceList,.inline-card{overflow-anchor:none}.inline-card{border-width:1.5px;margin:12px 0}.inline-card .quick-card-head{align-items:flex-start;padding:10px 8px}.inline-card .quick-toggle{padding:4px 6px;gap:6px;min-height:60px}.inline-card .quick-card-head>input[type=checkbox]{width:24px;height:24px;margin:8px 8px 0 4px;accent-color:var(--brand)}.inline-title{display:flex;justify-content:space-between;gap:12px;font-size:16px;font-weight:600;line-height:1.35;width:100%}.inline-chevron{color:var(--muted);font-size:16px}.inline-card [aria-expanded=true] .inline-chevron{transform:rotate(180deg)}.inline-card .quick-status{font-weight:500;font-size:12px;color:var(--muted)}.inline-card .quick-panel{padding:0 8px 10px}.inline-card .quick-levels{gap:6px;padding:8px 0}.inline-card .quick-levels button{min-height:64px;border-radius:8px;font-size:11px;font-weight:600;hyphens:auto;overflow-wrap:normal;line-height:1.3}.inline-card .goal-checkbox{font-size:13px;padding:6px 0;margin:0}.inline-note{min-height:44px!important;padding:8px!important}.inline-meta{padding:0 8px;font-size:13px}.contents-action{position:sticky;bottom:10px;padding:10px 0;background:var(--bg);z-index:8}.contents-action button{width:100%;min-height:48px}.contents-action button:disabled{opacity:.55;cursor:default}.catalog-intro label{margin-bottom:16px}.catalog-intro select{width:100%}.inline-card[aria-busy=true]{opacity:.7}@media(max-width:650px){.contents-action{position:fixed;bottom:calc(62px + env(safe-area-inset-bottom));left:0;right:0;padding:8px 16px;border-top:1px solid var(--line)}body:has(.contents-action) #record-main{padding-bottom:calc(160px + env(safe-area-inset-bottom))}body.editor-open .contents-action{visibility:hidden}body:has(.contents-action) #toast{bottom:calc(130px + env(safe-area-inset-bottom))}}
body:has(.inline-card){overflow-anchor:none}.inline-card .quick-card-head{scroll-margin-top:80px}.inline-card .quick-status{line-height:1.4}
/* Status treatment matches the native list: rail + dot, never a colored outline. */
.quick-card{--status:var(--muted);border:0!important;border-bottom:1px solid var(--line)!important;border-radius:0;margin:0;background:var(--surface)}
.quick-card.quick-level-1{--status:var(--r1)}.quick-card.quick-level-2{--status:var(--r2)}.quick-card.quick-level-3{--status:var(--r3)}.quick-card.quick-level-4{--status:var(--r4)}
.quick-card .quick-card-head{padding:16px 0;align-items:center;gap:12px}
.quick-card .quick-card-head>input[type=checkbox]{appearance:none;width:24px;height:24px;border:2px solid var(--brand);border-radius:4px;background:transparent;margin:0 4px;flex:none;display:grid;place-content:center}
.quick-card .quick-card-head>input[type=checkbox]:checked{background:var(--brand)}
.quick-card .quick-card-head>input[type=checkbox]:checked:after{content:'✓';color:var(--surface);font-size:18px;line-height:1;font-weight:700}
.quick-card .quick-card-head>input[type=checkbox]:disabled{opacity:.45}
.quick-card .quick-toggle{position:relative;border:0;border-radius:0;padding:0 6px 0 16px;min-height:64px;gap:7px}
.quick-card .quick-toggle:before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--status);border-radius:4px}
.quick-card .quick-status{display:flex;align-items:center;gap:8px;color:var(--status);font-size:14px;font-weight:400;line-height:1.4}
.status-dot{display:inline-block;width:11px;height:11px;flex:none;background:var(--status);border-radius:50%}
.quick-card:not([class*="quick-level-"]) .status-dot{background:transparent;border:1.5px dashed var(--status)}
.quick-card .quick-toggle small{color:var(--muted);font-size:13px;font-weight:400}.inline-title{font-size:17px;letter-spacing:-.015em;line-height:1.3}.inline-chevron{align-self:center;color:var(--ink)}
.inline-card .quick-panel{padding:0 0 16px 44px}.inline-card .quick-levels{gap:5px}.inline-card .quick-levels button{font-size:11px;overflow-wrap:anywhere}
.inline-card .goal-checkbox{font-weight:400}.subgroup .inline-card:last-child{border-bottom:0!important}.batch-results{gap:0}.batch-results .quick-card{padding:0 12px}.quick-card:focus-within{outline:none}.quick-card .quick-toggle:focus-visible{outline:2px solid var(--brand);outline-offset:4px}
/* Floating tab bar, matching the rounded native iPhone navigation. */
@media(max-width:650px){
 .record-nav{position:fixed;inset:auto 12px calc(10px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;padding:6px;min-height:76px;border:1px solid var(--line);border-radius:44px;background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 4px 20px #00000018;overflow:hidden}
 .record-nav .nav-item{min-height:64px;gap:4px;padding:7px 2px;border-radius:34px;font-size:11px;line-height:1.2;font-weight:500;color:var(--ink);background:transparent}
 .record-nav .nav-item svg{width:28px;height:28px;stroke-width:1.8}
 .record-nav .nav-item.active{color:var(--brand);background:var(--surface-alt);font-weight:650}
 .record-nav .nav-item:hover{background:var(--surface-alt);color:var(--brand)}
 .record-nav .nav-item:focus-visible{outline:2px solid var(--brand);outline-offset:-3px}
 .record-nav .nav-item[data-view=overview] svg rect{fill:currentColor;stroke:none;rx:1.8}
 .record-nav .nav-item[data-view=competencies] svg{stroke-width:2}
 .record-nav .nav-item[data-view=goals] svg{stroke-width:2.2}
 .contents-action{bottom:calc(92px + env(safe-area-inset-bottom));padding:7px 20px;background:transparent;border:0;pointer-events:none;text-align:center}
 .contents-action button{width:auto;max-width:100%;min-height:44px;padding:10px 22px;border-radius:28px;pointer-events:auto;box-shadow:0 2px 8px #00000010}
 .contents-action button:disabled{background:var(--surface);color:var(--ink);opacity:1;box-shadow:none}
 body:has(.contents-action) #record-main{padding-bottom:calc(172px + env(safe-area-inset-bottom))}
 #record-main{padding-bottom:calc(108px + env(safe-area-inset-bottom))}
 #toast{bottom:calc(110px + env(safe-area-inset-bottom))}
 body:has(.contents-action) #toast{bottom:calc(154px + env(safe-area-inset-bottom))}
}
@media(max-width:650px){:root[data-theme="dark"] .record-nav{background:rgba(44,44,46,.9);border-color:#56565b;box-shadow:0 4px 20px #00000040}:root[data-theme="dark"] .record-nav .nav-item.active{background:#1c1c1e;color:var(--brand)}:root[data-theme="dark"] .contents-action button:disabled{background:#000;color:#f2f2f7}
}
/* Training areas: quiet charcoal in dark mode; Körber blue remains in light mode. */
:root[data-theme="dark"] .catalog-group>summary{background:#303034;color:#f2f2f7}:root[data-theme="dark"] .catalog-group>summary .sub,:root[data-theme="dark"] .catalog-group>summary .expand-label{color:#bdbdc5}:root[data-theme="dark"] .catalog-group>.subgroup>summary{background:#262629;color:#f2f2f7;border-top:1px solid #3a3a3c}:root[data-theme="dark"] .catalog-group>.subgroup>summary .sub{color:#bdbdc5}


.appearance-control{display:grid;gap:6px;padding:10px 8px;font-size:14px;color:var(--muted)}.appearance-control select{width:100%;min-height:44px;font-size:16px;background:var(--surface);color:var(--ink);border:1px solid var(--line)}.native-page header .appearance-control{margin-left:auto;padding:0;font-size:12px}.native-page header{gap:16px}
/* Student overview uses the same grouped row layout as the SwiftUI list. */
.native-page:has(.students-screen) main{max-width:760px;padding-bottom:48px}
.native-page:has(.students-screen) h1{margin-bottom:14px}
.students-tools{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px;position:relative}
.students-tools>a{color:var(--brand);text-decoration:none;min-height:44px;display:flex;align-items:center;font-size:15px}
.students-add{margin:0}.students-add>summary{list-style:none;display:flex;align-items:center;gap:5px;min-height:44px;color:var(--brand);font-size:15px;font-weight:600;cursor:pointer}.students-add>summary::-webkit-details-marker{display:none}.students-add>summary>span{font-size:25px;font-weight:400}.students-add[open]>summary{margin-bottom:8px}
.students-add form{position:absolute;right:0;top:52px;z-index:5;width:min(340px,calc(100vw - 32px));padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:0 12px 32px #00000020}
.student-account{background:var(--surface);border-radius:14px;padding:14px 16px;margin-bottom:12px}.student-account p{margin:0 0 4px;font-size:15px;font-weight:500}.student-account>span{font-size:14px;color:var(--muted)}
.student-settings{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:52px;padding:14px 16px;background:var(--surface);border-radius:14px;color:var(--brand);text-decoration:none;font-size:16px}.student-settings>span:last-child{font-size:24px;line-height:1;color:var(--muted)}
.native-page h2.student-count{margin:26px 16px 8px;font-size:13px;font-weight:400;text-transform:uppercase;letter-spacing:.025em;color:var(--muted)}
.student-list{list-style:none;padding:0;margin:0;background:var(--surface);border-radius:16px;overflow:hidden}.native-page .student-list>li{margin:0;position:relative}.student-list>li+li:before{content:'';position:absolute;top:0;left:72px;right:16px;height:1px;background:var(--line)}
.student-row{display:flex;align-items:center;gap:12px;padding:16px;min-height:96px;text-decoration:none;color:var(--ink)}.student-row:hover{background:var(--surface-alt)}.student-row:focus-visible{outline-offset:-3px}.student-avatar{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:50%;background:color-mix(in srgb,var(--brand) 10%,var(--surface));color:var(--brand);font-size:16px;font-weight:600}.student-copy{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.student-copy strong{font-size:17px;font-weight:600;line-height:1.3;overflow-wrap:anywhere}.student-copy>span{font-size:14px;color:var(--muted);overflow-wrap:anywhere}.student-copy small{font-size:12px;color:var(--muted)}.student-chevron{font-size:25px;line-height:1;color:var(--muted);flex:none}.student-copy .student-handover{font-size:12px;color:var(--brand);margin-top:4px}.students-empty{padding:32px 20px;text-align:center;background:var(--surface);border-radius:16px}.native-page .students-empty h2{font-size:20px;color:var(--ink);text-transform:none;font-weight:600}.students-empty p{color:var(--muted);font-size:15px;margin:0}
@media(max-width:650px){.native-page:has(.students-screen) main{padding:12px 16px 40px}.native-page:has(.students-screen) header{margin-bottom:18px}.students-tools{margin-bottom:16px}.student-row{padding:14px 16px}.student-account{margin-bottom:12px}}
/* Separate vivid status markers from text contrast: the same hue identifies a level everywhere. */
:root{--a1:#ff3b30;--a2:#ff9500;--a3:#ffcc00;--a4:#34c759;--t1:#ffe1df;--t2:#ffe1bc;--t3:#fff3b0;--t4:#dff5e4}
:root[data-theme="dark"]{--a1:#ff6961;--a2:#ffad42;--a3:#ffdf32;--a4:#68db89;--t1:#422128;--t2:#49301b;--t3:#443d18;--t4:#173c28}
.quick-card.quick-level-1{--status:var(--a1)}.quick-card.quick-level-2{--status:var(--a2)}.quick-card.quick-level-3{--status:var(--a3)}.quick-card.quick-level-4{--status:var(--a4)}
.quick-card .quick-status{color:var(--ink)}.quick-card .quick-toggle:before{width:5px}.quick-card .status-dot{width:12px;height:12px}
.quick-levels .quick-level-1,.level-buttons .rating-color-1,.level-buttons input:checked+.rating-color-1{border-color:var(--a1)}
.quick-levels .quick-level-2,.level-buttons .rating-color-2,.level-buttons input:checked+.rating-color-2{border-color:var(--a2)}
.quick-levels .quick-level-3,.level-buttons .rating-color-3,.level-buttons input:checked+.rating-color-3{border-color:var(--a3)}
.quick-levels .quick-level-4,.level-buttons .rating-color-4,.level-buttons input:checked+.rating-color-4{border-color:var(--a4)}
.quick-levels button[class*="quick-level-"],.level-buttons span[class*="rating-color-"],.level-buttons input:checked+span[class*="rating-color-"]{color:var(--ink);border-width:2px}
.skill-1{background:var(--a1)}.skill-2{background:var(--a2)}.skill-3{background:var(--a3)}.skill-4{background:var(--a4)}
