:root{--navy:#15547a;--navy-dark:#103b58;--ink:#18364b;--muted:#637b8b;--line:#cfdee6;--bg:#f2f7f9;--panel:#fff;--blue:#e7f4f9;--green:#2f8a68;--yellow:#f3bf4f;--red:#be4949;--purple:#8a66a6;--shadow:0 14px 38px rgba(18,59,82,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:"Noto Sans Thai","Leelawadee UI",Tahoma,sans-serif;font-size:16px;line-height:1.55}button,input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p{margin-top:0}small{font-size:.82rem}.topbar{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;min-height:72px;padding:10px max(24px,calc((100vw - 1180px)/2));background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;gap:11px}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:var(--navy);color:#fff;font-weight:900;box-shadow:0 8px 18px rgba(21,84,122,.22)}.brand b,.brand small{display:block}.brand b{font-size:1.05rem}.brand small{color:var(--muted)}.nav{display:flex;align-items:center;gap:6px}.nav>a{padding:10px 13px;border-radius:10px;color:#526979;font-weight:800}.nav>a:hover,.nav>a.active{background:var(--blue);color:var(--navy)}.nav .login-button{border:1px solid var(--line);background:#fff;color:var(--ink)}.nav-form{margin:0}.user-button{display:flex;align-items:center;gap:7px;padding:7px 11px;border:1px solid var(--line);border-radius:11px;background:#fff;font-weight:800;cursor:pointer}.user-button span{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:var(--navy);color:#fff}.nav-toggle{display:none;border:0;background:transparent;font-size:1.4rem}.page-shell{width:min(1180px,calc(100% - 32px));margin:28px auto 70px}.footer{display:flex;justify-content:space-between;gap:20px;padding:22px max(24px,calc((100vw - 1180px)/2));background:#fff;border-top:1px solid var(--line);color:var(--muted);font-size:.86rem}.panel{background:var(--panel);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.kicker{margin-bottom:3px;color:var(--navy);font-size:.78rem;font-weight:900;letter-spacing:.06em}.field,textarea{width:100%;min-height:48px;margin-top:7px;padding:11px 13px;border:1px solid #bcd1dc;border-radius:11px;background:#fff;outline:0;transition:.16s}textarea{resize:vertical;line-height:1.55}.field:focus,textarea:focus{border-color:#3d8fb5;box-shadow:0 0 0 3px rgba(61,143,181,.14)}label{font-weight:800}label>small,.block-label>small{display:block;margin-top:2px;color:var(--muted);font-weight:500}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 17px;border:1px solid transparent;border-radius:11px;font-weight:900;cursor:pointer}.button.primary{background:var(--navy);color:#fff;box-shadow:0 8px 18px rgba(21,84,122,.2)}.button.primary:hover{background:var(--navy-dark)}.button.ghost,.button.outline{border-color:var(--line);background:#fff;color:var(--navy)}.wide-button{width:100%}.back-link{color:var(--navy);font-weight:800}.toast{position:fixed;right:22px;top:86px;z-index:60;max-width:420px;padding:13px 17px;border-radius:11px;background:#173f58;color:#fff;box-shadow:0 12px 30px rgba(0,0,0,.2);animation:toast-out .4s 4.6s forwards}.toast.success{background:#267657}.toast.error{background:#9a3f3f}@keyframes toast-out{to{opacity:0;transform:translateY(-10px);pointer-events:none}}

.library-hero{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;padding:27px 30px;border:1px solid #cfe3ec;border-radius:22px;background:linear-gradient(120deg,#f8fdff,#edf8fb 55%,#fff9e8);box-shadow:var(--shadow)}.library-hero .hero-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:16px;background:var(--navy);color:#fff;font-size:2rem}.library-hero h1{margin-bottom:4px;font-size:clamp(1.7rem,3vw,2.3rem)}.library-hero p{margin-bottom:0;color:var(--muted)}.public-state{padding:7px 11px;border:1px solid #bcdcca;border-radius:999px;background:#edf8f2;color:#2f775c;font-size:.8rem;font-weight:800}.public-state.off{border-color:#e2c3c3;background:#fff2f2;color:#9b4242}.search-panel{margin-top:20px;padding:24px 26px}.section-title{display:flex;align-items:center;gap:11px;margin-bottom:18px}.section-title h2,.section-title p{margin:0}.section-title p{color:var(--muted);font-size:.88rem}.section-icon{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:11px;background:var(--blue);color:var(--navy);font-size:1.25rem}.search-grid,.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.search-grid{grid-template-columns:2fr 1fr 1.2fr}.framework-filter{margin:18px 0 0;padding:17px 0 0;border:0;border-top:1px solid var(--line)}.framework-filter legend{padding:0;font-weight:900}.framework-filter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:10px}.framework-filter-grid label{position:relative;cursor:pointer}.framework-filter-grid input{position:absolute;opacity:0}.framework-card{position:relative;display:block;min-height:72px;padding:11px 14px;border:1px solid var(--line);border-left:4px solid #2e83ad;border-radius:12px;background:#fff}.framework-card.self{border-left-color:var(--purple)}.framework-card.sel{border-left-color:var(--green)}.framework-card b,.framework-card small{display:block}.framework-card small{color:var(--muted);font-weight:500}.framework-card i{position:absolute;right:12px;top:22px;display:none;width:24px;height:24px;border-radius:50%;background:var(--navy);color:#fff;text-align:center;font-style:normal}.framework-filter input:checked+.framework-card{background:#edf7fb;border-color:var(--navy);box-shadow:0 0 0 3px rgba(21,84,122,.11)}.framework-filter input:checked+.framework-card i{display:block}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.empty-guide{max-width:740px;margin:32px auto 0;padding:34px;text-align:center;color:var(--muted)}.empty-guide>span{display:grid;place-items:center;width:68px;height:68px;margin:0 auto 12px;border-radius:20px;background:#e5f3f8;color:var(--navy);font-size:2.3rem}.empty-guide h2{margin-bottom:6px;color:var(--navy)}.empty-guide.compact{margin:0 auto;padding:24px}.results-section{margin-top:30px}.results-head{display:flex;justify-content:space-between}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.plan-card{display:flex;flex-direction:column;min-height:245px;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 9px 24px rgba(22,59,80,.06);transition:.18s}.plan-card:hover{transform:translateY(-3px);border-color:#7eb2ca;box-shadow:var(--shadow)}.plan-card-meta{display:flex;gap:7px}.plan-card-meta span,.grade-chip,.time-chip{padding:4px 8px;border-radius:999px;background:#e9f5f9;color:var(--navy);font-size:.75rem;font-weight:900}.plan-card h3{margin:18px 0 7px;font-size:1.12rem}.plan-card p{color:var(--muted)}.card-link{margin-top:auto;color:var(--navy)}.tag-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.tag-row>span{padding:5px 8px;border-radius:7px;background:#edf5f8;color:#2b607c;font-size:.76rem}.tag-row>span.self{background:#f3eef7;color:#795691}.tag-row>span.sel{background:#eaf6ef;color:#2e7958}.tag-row small{display:none}

.plan-top-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.plan-hero{display:flex;justify-content:space-between;gap:30px;padding:28px}.plan-hero h1{margin:14px 0 6px;font-size:clamp(1.8rem,4vw,2.65rem)}.plan-hero p{color:var(--muted)}.time-chip{background:#fff6dc;color:#796027}.goal-card{display:grid;align-content:center;min-width:260px;padding:18px;border-radius:14px;background:#eef7fa}.goal-card small,.goal-card b{display:block}.goal-card b{margin:4px 0 11px}.media-section,.assessment,.note-section{margin-top:16px;padding:22px}.media-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.media-grid iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:14px}.resource-link{display:grid;place-items:start;align-content:center;min-height:150px;padding:20px;border:1px dashed #91b7c9;border-radius:14px;background:#f5fbfd}.resource-link span{font-size:1.5rem;color:var(--navy)}.resource-link small{color:var(--muted)}.plan-flow{display:grid;gap:15px;margin-top:16px}.lesson-step{display:grid;grid-template-columns:auto 1fr;gap:18px;padding:23px}.lesson-step.accent{border-left:5px solid #3188b0}.step-number{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--navy);color:#fff;font-weight:900}.step-body h2{margin-bottom:9px}.step-body h2 small{display:block;color:var(--muted);font-weight:600}.step-body>p{white-space:normal}.substep{margin-top:18px;padding:18px;border:1px solid #d7e5eb;border-radius:14px;background:#f9fcfd}.substep h3 b{color:var(--navy)}.question-list{display:grid;gap:10px;margin:12px 0}.question-list article{padding:15px;border:1px solid var(--line);border-left:4px solid #5c9fbe;border-radius:12px;background:#fff}.question-list article:nth-child(2){border-left-color:#8a66a6}.question-list article:nth-child(3){border-left-color:#d09b32}.question-list article:nth-child(4){border-left-color:#4e9a6e}.question-list article>div{display:flex;justify-content:space-between;gap:10px}.question-list article small{color:var(--muted)}.question-list article p{margin:8px 0}.assessment>p{padding:15px;border-radius:12px;background:#f7fafb}.note-form{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end}.note-form .wide{grid-column:1/-1}.notes-feed{display:grid;gap:9px;margin-top:18px}.notes-feed article{display:flex;gap:10px;padding:13px;border-top:1px solid var(--line)}.notes-feed article>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:11px;background:var(--navy);color:#fff;font-weight:900}.notes-feed p{margin:4px 0}.notes-feed small{color:var(--muted)}.revision-log{display:grid;gap:3px;margin:18px 8px;color:var(--muted);font-size:.78rem}.revision-log b{color:var(--ink)}

.auth-shell{display:grid;place-items:center;min-height:calc(100vh - 210px)}.auth-card{width:min(460px,100%);padding:32px}.auth-icon{display:grid;place-items:center;width:58px;height:58px;margin-bottom:16px;border-radius:16px;background:var(--navy);color:#fff;font-weight:900}.auth-card h1{margin-bottom:6px}.auth-card>p{color:var(--muted)}.auth-card form{display:grid;gap:13px;margin:22px 0}.dashboard-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.dashboard-head h1{margin-bottom:4px}.dashboard-head p:last-child{margin-bottom:0;color:var(--muted)}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.stat-grid article{display:flex;align-items:center;gap:13px;padding:17px;border:1px solid var(--line);border-radius:15px;background:#fff}.stat-grid article>span{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--blue);color:var(--navy);font-size:1.2rem}.stat-grid b,.stat-grid small{display:block}.stat-grid b{font-size:1.4rem}.stat-grid small{color:var(--muted)}.table-panel{padding:22px}.responsive-table{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:12px;text-align:left;border-bottom:1px solid #e0e9ed;vertical-align:top}th{font-size:.82rem;color:var(--muted)}td small{display:block;color:var(--muted)}.status{display:inline-block;padding:4px 8px;border-radius:999px;background:#edf3f6;font-size:.76rem;font-weight:900}.status.published{background:#e7f5ed;color:#2f795a}.row-actions{display:flex;gap:8px}.row-actions a{color:var(--navy);font-weight:800}.report-filter{display:flex;align-items:end;gap:10px;margin-bottom:18px}

.plan-form{display:grid;gap:18px}.form-heading{padding:21px 23px 0}.heading-row{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:13px}.heading-row h1{margin-bottom:4px}.heading-row p:last-child{margin-bottom:0;color:var(--muted)}.ready-state{padding:7px 11px;border-radius:999px;background:#eaf7f0;color:#2f7559;font-size:.8rem;font-weight:900}.form-progress{display:grid;grid-template-columns:repeat(3,1fr);margin-top:18px;border-top:1px solid var(--line)}.form-progress span{display:flex;align-items:center;justify-content:center;gap:7px;padding:11px;color:var(--muted);font-size:.82rem;font-weight:900}.form-progress i{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#edf2f4;font-style:normal}.form-progress .active{color:var(--navy)}.form-progress .active i{background:var(--navy);color:#fff}.form-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:17px;align-items:start}.form-main{display:grid;gap:17px}.form-aside{position:sticky;top:92px;display:grid;gap:14px}.form-section{position:relative;overflow:hidden;padding:24px}.form-section:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(var(--navy),#65aecb)}.form-section-head{display:flex;gap:13px;align-items:center;margin-bottom:20px}.form-section-head h2,.form-section-head p{margin:0}.form-section-head p{color:var(--muted)}.form-step{display:grid;place-items:center;width:49px;height:49px;flex:0 0 49px;border-radius:14px;background:#e4f3f8;color:var(--navy);font-weight:900}.form-step small{display:block;font-size:.58rem}.form-grid .span-2{grid-column:1/-1}.form-grid label em,.block-label em{color:#c34848}.block-label{display:block;margin-top:17px}.media-create-box{margin-top:18px;padding:18px;border:1px solid #cfe3ec;border-radius:16px;background:linear-gradient(145deg,#f5fbfd,#edf7fa)}.media-title{display:flex;align-items:center;gap:10px;margin-bottom:13px}.media-title>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#dceff6;color:var(--navy)}.media-title>div{flex:1}.media-title h3,.media-title p{margin:0}.media-title p{color:var(--muted);font-size:.84rem}.media-title>b{padding:4px 8px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font-size:.72rem}.drive-note{margin-top:12px;padding:10px;border-radius:10px;background:#fff;color:var(--muted);font-size:.82rem}.activity-editor{margin-top:15px;padding:18px;border:1px solid #d2e2e9;border-radius:16px;background:#f9fcfd}.activity-editor>h3{display:flex;align-items:center;gap:8px}.activity-editor>h3>span{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#e7f3f7;color:var(--navy)}.activity-editor>p,.substep>p,.connect-section>p{color:var(--muted)}.activity-editor.featured{background:#f2f9fc}.activity-editor.apply{background:#f6faef}.connect-section{margin-top:18px}.question-editor-list{display:grid;gap:12px}.question-editor-list>article{padding:14px;border:1px solid var(--line);border-left:4px solid #65a6c1;border-radius:13px;background:#fff}.question-editor-list>article:nth-child(2){border-left-color:#906baa}.question-editor-list>article:nth-child(3){border-left-color:#d3a340}.question-editor-list>article:nth-child(4){border-left-color:#5b9f73}.question-editor-list label>b,.question-editor-list label>small{display:inline}.question-editor-list label>small{margin-left:6px;color:var(--muted)}.skill-picker{margin-top:10px;border:1px solid #c4dae4;border-radius:11px;background:#fff}.skill-picker summary,.reference-card summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;cursor:pointer;color:var(--navy);font-weight:900;list-style:none}.skill-picker summary::-webkit-details-marker,.reference-card summary::-webkit-details-marker{display:none}.skill-picker[open] summary b,.reference-card[open] summary>b{transform:rotate(45deg)}.skill-picker-body{display:grid;gap:12px;padding:0 12px 13px}.skill-picker-body section{padding-top:10px;border-top:1px solid var(--line)}.skill-picker-body h4{margin-bottom:8px}.skill-picker-body h4 small{display:block;color:var(--muted);font-weight:500}.skill-options{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.skill-options label{display:flex;gap:8px;padding:8px;border:1px solid #dbe6eb;border-radius:9px;font-size:.82rem;cursor:pointer}.skill-options input{margin-top:4px;accent-color:var(--navy)}.skill-options span b,.skill-options span small{display:block}.skill-options span small{color:var(--muted);font-weight:500}.reference-card{overflow:hidden}.reference-card summary>span small{display:block;color:var(--muted);font-weight:500}.reference-card>div{max-height:70vh;overflow:auto;padding:0 15px 15px}.reference-card section{padding-top:10px;border-top:1px solid var(--line)}.reference-card section p{margin:0;padding:7px;border-bottom:1px solid #eef3f5}.reference-card section p b,.reference-card section p small{display:block}.reference-card section p small{color:var(--muted)}.publish-card{padding:19px}.publish-summary{display:grid;gap:3px;margin:13px 0;padding:13px;border-radius:12px;background:#f6f9fa}.publish-summary small{margin-top:6px;color:var(--muted)}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:13px 0;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.switch-row b,.switch-row small{display:block}.switch-row small{color:var(--muted)}.switch-row input{width:46px;height:25px;accent-color:var(--green)}.publish-card>.button{margin-top:8px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.setting-card{padding:22px}.switch-row.large{padding:17px}.goal-list{display:grid;gap:8px;padding-left:22px}.goal-list li{padding:10px;border-bottom:1px solid var(--line)}.goal-list li span,.goal-list li small{display:block}.goal-list li small,.muted{color:var(--muted)}

@media(max-width:900px){.page-shell{width:min(100% - 24px,760px)}.nav-toggle{display:block}.nav{position:absolute;left:12px;right:12px;top:68px;display:none;flex-direction:column;align-items:stretch;padding:12px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:var(--shadow)}.nav.open{display:flex}.nav-form,.user-button{width:100%}.library-hero{grid-template-columns:auto 1fr}.public-state{grid-column:1/-1;width:max-content}.search-grid{grid-template-columns:1fr 1fr}.search-grid .wide{grid-column:1/-1}.plan-grid{grid-template-columns:1fr 1fr}.form-layout{grid-template-columns:1fr}.form-aside{position:static;grid-template-columns:1fr 1fr}.form-progress{overflow:auto}.form-progress span{min-width:155px}.admin-grid{grid-template-columns:1fr}.media-grid{grid-template-columns:1fr}}
@media(max-width:600px){body{font-size:16px}.topbar{padding:10px 14px}.brand b{font-size:.95rem}.brand small{font-size:.75rem}.page-shell{width:calc(100% - 20px);margin-top:16px}.library-hero{grid-template-columns:1fr;padding:21px}.library-hero .hero-icon{width:50px;height:50px}.search-panel,.form-section,.table-panel{padding:17px}.search-grid,.framework-filter-grid,.plan-grid,.form-grid,.stat-grid,.form-aside,.admin-grid{grid-template-columns:1fr}.form-grid .span-2,.search-grid .wide{grid-column:auto}.form-actions{flex-direction:column-reverse}.form-actions .button{width:100%}.plan-hero{flex-direction:column;padding:20px}.goal-card{min-width:0}.lesson-step{grid-template-columns:1fr;padding:17px}.step-number{width:42px;height:42px}.question-list article>div{display:block}.note-form{grid-template-columns:1fr}.note-form .wide{grid-column:auto}.dashboard-head{align-items:flex-start;flex-direction:column}.dashboard-head .button{width:100%}.form-heading{padding:17px 15px 0}.heading-row{align-items:flex-start;flex-direction:column}.ready-state{white-space:normal}.form-progress{margin-left:-15px;margin-right:-15px}.form-section-head{align-items:flex-start}.media-title{align-items:flex-start}.skill-options{grid-template-columns:1fr}.question-editor-list label>small{display:block;margin-left:0}.report-filter{align-items:stretch;flex-direction:column}.plan-top-actions{gap:10px}.plan-top-actions .button{padding:8px 10px}.footer{flex-direction:column;padding:18px}.public-state{white-space:normal}}

.goal-admin-list{display:grid;gap:8px}.goal-admin-list form{display:grid;grid-template-columns:minmax(0,1fr) 72px 92px auto;gap:7px;align-items:center;padding-bottom:8px;border-bottom:1px solid var(--line)}.goal-admin-list .field{margin:0}.goal-admin-list .mini-check{font-size:.82rem;white-space:nowrap}.goal-admin-list .new-goal{margin-top:10px;border-bottom:0}.order-field{text-align:center}.file-field{padding:8px}
.import-panel{margin-top:16px}.import-form{display:grid;grid-template-columns:1fr auto;gap:9px;align-items:center;margin-bottom:16px}.import-form .field{margin:0}
@media(max-width:600px){.goal-admin-list form{grid-template-columns:1fr 64px}.goal-admin-list .mini-check{justify-self:start}.goal-admin-list .button{width:100%}.import-form{grid-template-columns:1fr}.import-form .button{width:100%}}

/* Plan editor: stronger visual hierarchy and distinct learning stages */
body:has(.plan-form){background:
  radial-gradient(circle at 8% 10%,rgba(63,151,190,.12),transparent 24rem),
  radial-gradient(circle at 92% 36%,rgba(138,102,166,.10),transparent 26rem),
  linear-gradient(180deg,#f5fafc 0,#eef5f8 55%,#f7faf8 100%)}
.plan-form{gap:22px}
.form-hero{position:relative;isolation:isolate;overflow:hidden;padding:24px 28px 0;border:0;background:linear-gradient(125deg,#123f60 0%,#176b91 56%,#258c82 100%);color:#fff;box-shadow:0 22px 52px rgba(18,63,96,.24)}
.form-hero:before,.form-hero:after{content:"";position:absolute;z-index:-1;border-radius:50%;background:rgba(255,255,255,.08)}
.form-hero:before{width:260px;height:260px;right:-75px;top:-155px}
.form-hero:after{width:150px;height:150px;right:170px;bottom:-110px}
.form-hero .back-link,.form-hero .kicker{color:#d9f3ff}
.form-hero .heading-row p:last-child{color:#d5e8f1}
.form-hero h1{font-size:clamp(1.8rem,3.4vw,2.55rem);letter-spacing:-.025em}
.form-hero .ready-state{border:1px solid rgba(255,255,255,.34);background:rgba(255,255,255,.15);color:#fff;backdrop-filter:blur(8px)}
.form-hero .form-progress{margin-left:-28px;margin-right:-28px;border-top-color:rgba(255,255,255,.18);background:rgba(5,38,58,.24)}
.form-hero .form-progress span{position:relative;color:#c8dde8}
.form-hero .form-progress span+span:before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:1px;background:rgba(255,255,255,.16)}
.form-hero .form-progress i{background:rgba(255,255,255,.14);color:#fff}
.form-hero .form-progress .active{background:rgba(255,255,255,.1);color:#fff}
.form-hero .form-progress .active i{background:#ffd36b;color:#173f58;box-shadow:0 0 0 4px rgba(255,211,107,.18)}
.form-layout{grid-template-columns:minmax(0,1fr) 318px;gap:22px}
.form-main{gap:22px}
.form-section{overflow:visible;padding:0 27px 28px;border:0;box-shadow:0 14px 38px rgba(29,70,91,.09)}
.form-section:before{display:none}
.form-section-head{position:relative;margin:0 -27px 25px;padding:22px 27px;border-radius:18px 18px 0 0}
.form-section-head:after{content:"";position:absolute;left:27px;right:27px;bottom:0;height:1px;background:rgba(20,80,111,.10)}
.form-section-head h2{font-size:1.35rem;letter-spacing:-.01em}
.section-information .form-section-head{background:linear-gradient(100deg,#e7f6fc,#f4fbfe)}
.section-information .form-step{background:#14739e;color:#fff;box-shadow:0 8px 20px rgba(20,115,158,.22)}
.section-activities .form-section-head{background:linear-gradient(100deg,#f1ecf8,#fbf7ee)}
.section-activities .form-step{background:#745095;color:#fff;box-shadow:0 8px 20px rgba(116,80,149,.22)}
.section-assessment .form-section-head{background:linear-gradient(100deg,#e8f7ef,#f7fbef)}
.section-assessment .form-step{background:#2f8a68;color:#fff;box-shadow:0 8px 20px rgba(47,138,104,.22)}
.form-grid{gap:17px 15px}
.form-section label{color:#24465a}
.form-section .field,.form-section textarea{border-color:#c9dbe4;background:#fbfdfe;box-shadow:inset 0 1px 2px rgba(28,70,92,.025)}
.form-section .field:hover,.form-section textarea:hover{border-color:#8fb7c9}
.media-create-box{margin-top:22px;padding:20px;border:0;background:linear-gradient(135deg,#eaf7fc,#f4fbfd);box-shadow:inset 0 0 0 1px #cce5ef}
.media-title>span{width:40px;height:40px;border-radius:12px;background:#14739e;color:#fff;box-shadow:0 7px 16px rgba(20,115,158,.18)}
.drive-note{border-left:3px solid #5ba5c5;background:rgba(255,255,255,.72)}
.activity-editor{position:relative;margin-top:20px;padding:22px;border:0;border-radius:18px;background:#fff;box-shadow:inset 0 0 0 1px #dde8ed,0 8px 20px rgba(26,67,88,.05)}
.activity-editor>h3{margin-bottom:4px;font-size:1.2rem}
.activity-editor>h3>span{width:38px;height:38px;border-radius:12px}
.activity-editor.prepare{border-left:6px solid #e9a83b;background:linear-gradient(115deg,#fffaf0 0,#fff 55%)}
.activity-editor.prepare>h3>span{background:#ffedc8;color:#9b6510}
.activity-editor.featured{border-left:6px solid #7b5aa0;background:linear-gradient(135deg,#f7f3fb 0,#fff 42%,#f4f9fc 100%)}
.activity-editor.featured>h3>span{background:#e9ddf3;color:#684789}
.activity-editor.apply{border-left:6px solid #3d9a72;background:linear-gradient(115deg,#effaf4 0,#fff 55%)}
.activity-editor.apply>h3>span{background:#d9f1e4;color:#277451}
.activity-editor.close{border-left:6px solid #d2718e;background:linear-gradient(115deg,#fff1f5 0,#fff 55%)}
.activity-editor.close>h3>span{background:#f8dfe8;color:#9b4963}
.apply-substep{border-left-color:#3d9a72;background:#f1faf5}
.substep{border:0;background:rgba(255,255,255,.82);box-shadow:inset 0 0 0 1px #dbe6eb}
.connect-section{padding-top:20px;border-top:1px dashed #c8d7df}
.connect-section>h3{display:inline-flex;margin-bottom:5px;padding:6px 11px;border-radius:9px;background:#e9f2f7;color:#285d78}
.question-editor-list{counter-reset:question;gap:14px}
.question-editor-list>article{counter-increment:question;position:relative;padding:18px 18px 18px 58px;border:0;border-left:5px solid #4b9bc0;border-radius:14px;background:#fff;box-shadow:0 7px 18px rgba(34,73,93,.07)}
.question-editor-list>article:before{content:counter(question);position:absolute;left:16px;top:17px;display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#e1f2f8;color:#176184;font-weight:900}
.question-editor-list>article:nth-child(2):before{background:#eee5f5;color:#744f94}
.question-editor-list>article:nth-child(3):before{background:#fff0cd;color:#946412}
.question-editor-list>article:nth-child(4):before{background:#dff2e7;color:#317554}
.skill-picker{overflow:hidden;border-color:#d6e2e8;background:#f9fbfc}
.skill-picker summary{padding:11px 13px}
.skill-picker[open]{background:#fff;box-shadow:0 8px 20px rgba(28,70,92,.06)}
.skill-picker-body section:nth-child(1) h4{color:#227ca5}
.skill-picker-body section:nth-child(2) h4{color:#765294}
.skill-picker-body section:nth-child(3) h4{color:#2f805f}
.skill-options label{background:#fff;transition:.15s}
.skill-options label:hover{border-color:#84b3c8;background:#f3fafc}
.skill-options label:has(input:checked){border-color:#438caf;background:#eaf6fb;box-shadow:0 0 0 2px rgba(67,140,175,.10)}
.form-aside{top:90px;gap:18px}
.reference-card{border:0;border-top:5px solid #7d5ca0;box-shadow:0 13px 32px rgba(46,61,90,.10)}
.reference-card summary{padding:16px 18px;background:linear-gradient(110deg,#f3eef8,#fff)}
.reference-card section:nth-child(1) h3{color:#227ca5}.reference-card section:nth-child(2) h3{color:#765294}.reference-card section:nth-child(3) h3{color:#2f805f}
.publish-card{overflow:hidden;padding:0 19px 20px;border:0;border-top:5px solid #2f8a68;box-shadow:0 16px 38px rgba(34,78,65,.12)}
.publish-card>h2{margin:0 -19px 15px;padding:18px 19px;background:linear-gradient(110deg,#e4f5ec,#f8fcfa);color:#245d48;font-size:1.2rem}
.publish-summary{padding:15px;background:#f4f8fa;box-shadow:inset 0 0 0 1px #e2ebef}
.publish-summary b{overflow:hidden;text-overflow:ellipsis}
.publish-card .button.primary{background:linear-gradient(100deg,#165b80,#217c74)}

@media(max-width:900px){.form-layout{grid-template-columns:1fr}.form-aside{grid-template-columns:1fr 1fr}.form-section{padding-left:24px;padding-right:24px}.form-section-head{margin-left:-24px;margin-right:-24px;padding-left:24px;padding-right:24px}}
@media(max-width:600px){.form-hero{padding:19px 17px 0}.form-hero .form-progress{margin-left:-17px;margin-right:-17px}.form-layout{gap:16px}.form-main{gap:16px}.form-aside{grid-template-columns:1fr}.form-section{padding:0 16px 20px}.form-section-head{margin:0 -16px 20px;padding:18px 16px}.form-section-head:after{left:16px;right:16px}.activity-editor{padding:17px 14px}.question-editor-list>article{padding:15px 13px 15px 48px}.question-editor-list>article:before{left:12px;top:14px}.form-hero .heading-row{gap:10px}}

/* Colorful visual system: friendly, educational and responsive */
body{background:
  radial-gradient(circle at 6% 12%,rgba(69,173,213,.10),transparent 23rem),
  radial-gradient(circle at 94% 30%,rgba(150,111,218,.08),transparent 26rem),
  linear-gradient(180deg,#f5fafc 0%,#eef6f7 100%);background-attachment:fixed}
.brand-mark{background:linear-gradient(145deg,#176fe5,#13a982);box-shadow:0 9px 22px rgba(20,112,164,.25)}
.topbar{border-color:rgba(177,207,217,.8);box-shadow:0 6px 24px rgba(30,73,94,.05)}
.button.primary{background:linear-gradient(110deg,#176ea1,#148873);box-shadow:0 10px 22px rgba(21,107,126,.22)}
.button.primary:hover{background:linear-gradient(110deg,#125d8b,#10735f);transform:translateY(-1px)}
.section-icon{background:linear-gradient(145deg,#dff4fc,#e9e2fb);color:#276a8e;box-shadow:inset 0 0 0 1px rgba(70,137,167,.08)}
.colorful-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);min-height:330px;overflow:hidden;padding:38px 40px;border-color:#c9e3e8;background:linear-gradient(125deg,#fff 0%,#f2fbff 50%,#f4f0ff 100%)}
.colorful-hero:before{content:"";position:absolute;width:310px;height:310px;left:-180px;bottom:-230px;border-radius:50%;background:#dff5e9}
.hero-copy{position:relative;z-index:2;align-self:center}
.hero-copy h1{max-width:660px;margin:9px 0 10px;font-size:clamp(2rem,4vw,3.25rem);line-height:1.15;letter-spacing:-.035em;color:#113d5b}
.hero-copy>p:not(.kicker){max-width:650px;color:#577587;font-size:1.03rem}
.hero-eyebrow,.welcome-badge{display:inline-flex;align-items:center;padding:6px 11px;border:1px solid #cce8db;border-radius:999px;background:#f5fff9;color:#26805e;font-size:.78rem;font-weight:900}
.hero-frameworks{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:20px}
.hero-frameworks>span:not(.public-state){display:grid;place-items:center;min-width:52px;height:34px;padding:0 11px;border-radius:10px;font-size:.78rem;font-weight:900}
.hero-frameworks .ef{background:#def3fb;color:#19749c}.hero-frameworks .self{background:#eee5f7;color:#765096}.hero-frameworks .sel{background:#dff5e9;color:#287b59}
.hero-frameworks .public-state{margin-left:5px}
.hero-art{position:relative;align-self:end;height:300px;z-index:1}
.hero-art:before{content:"";position:absolute;inset:42px 22px 12px;border-radius:48% 52% 46% 54%;background:linear-gradient(145deg,rgba(255,211,107,.23),rgba(114,205,171,.16));filter:blur(2px)}
.hero-art img{position:relative;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 18px 24px rgba(28,78,99,.10))}
.search-panel{border-top:5px solid #258daf;box-shadow:0 16px 38px rgba(29,78,98,.08)}
.category-quick-search{margin-top:20px;padding:22px 25px;border-top:5px solid #7c5da0;background:linear-gradient(120deg,#fff,#faf7fd);box-shadow:0 16px 38px rgba(50,42,75,.08)}
.category-quick-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:9px;align-items:center}.category-quick-row .field{margin:0}.category-quick-row .button{white-space:nowrap}
.search-tag-filter{margin:16px 0 0;padding:0;overflow:hidden;border:1px solid #ead7b6;border-radius:13px;background:linear-gradient(120deg,#fff9eb,#fffdf7);box-shadow:0 5px 14px rgba(117,79,25,.05)}.search-tag-filter>summary{display:grid;grid-template-columns:34px minmax(0,1fr) auto 24px;gap:10px;align-items:center;padding:11px 13px;cursor:pointer;list-style:none}.search-tag-filter>summary::-webkit-details-marker{display:none}.search-tag-title-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#ffe7b9;color:#855719;font-size:1rem;font-weight:900}.search-tag-filter>summary b,.search-tag-filter>summary small{display:block}.search-tag-filter>summary b{color:#55401f;font-weight:900}.search-tag-filter>summary small{margin-top:1px;color:#88765d;font-size:.72rem}.search-tag-filter>summary em{padding:4px 9px;border-radius:999px;background:#ffe9bb;color:#80591c;font-size:.7rem;font-style:normal;font-weight:900;white-space:nowrap}.search-tag-filter>summary i{color:#9a763e;font-size:1.15rem;font-style:normal;font-weight:900;transition:transform .18s}.search-tag-filter[open]>summary{border-bottom:1px solid #eddcbd;background:rgba(255,255,255,.35)}.search-tag-filter[open]>summary i{transform:rotate(180deg)}.search-tag-filter.has-active-tag{border-color:#dcae60;box-shadow:0 0 0 3px rgba(219,164,73,.1)}.search-tag-filter.has-active-tag>summary em{background:#f4c96f;color:#5f3b07}.search-tag-filter-body{padding:11px 13px 13px}.search-tag-filter-body>p{margin:0 0 10px;color:#7d6b50;font-size:.82rem}.search-tag-chips{display:flex;flex-wrap:wrap;gap:8px}.search-tag-chips button{padding:7px 11px;border:1px solid #d7c3a0;border-radius:999px;background:#fff8e9;color:#73501d;font-family:inherit;font-size:.8rem;font-weight:800;cursor:pointer;transition:.15s}.search-tag-chips button:hover,.search-tag-chips button.active{border-color:#d79831;background:#ffe7b9;color:#5e3d0c;transform:translateY(-1px);box-shadow:0 5px 12px rgba(123,86,26,.12)}.search-tag-clear{display:inline-flex;margin-top:10px;color:#9a5e20;font-size:.75rem;font-weight:900}.search-tag-clear:hover{text-decoration:underline}
.framework-card{transition:.18s;box-shadow:0 6px 16px rgba(27,69,91,.04)}
.framework-card:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(27,69,91,.09)}
.framework-card.ef{background:linear-gradient(120deg,#fff,#effaff)}
.framework-card.self{background:linear-gradient(120deg,#fff,#f7f1fb)}
.framework-card.sel{background:linear-gradient(120deg,#fff,#effaf4)}
.plan-grid{gap:19px}
.plan-card{position:relative;overflow:hidden;border:0;border-top:5px solid #2789b2;box-shadow:0 13px 30px rgba(27,69,91,.09)}
.plan-card:before{content:"";position:absolute;width:100px;height:100px;right:-45px;top:-50px;border-radius:50%;background:rgba(54,161,199,.10)}
.plan-card:nth-child(3n+2){border-top-color:#8a65ad}.plan-card:nth-child(3n+2):before{background:rgba(138,101,173,.10)}
.plan-card:nth-child(3n+3){border-top-color:#38a176}.plan-card:nth-child(3n+3):before{background:rgba(56,161,118,.10)}
.plan-card h3{color:#153f59}
.dashboard-welcome{position:relative;overflow:hidden;min-height:260px;padding:32px 38% 32px 34px;border:0;border-top:5px solid #2aa177;background:linear-gradient(120deg,#fff 0%,#f3fbff 58%,#f3effc 100%);box-shadow:0 16px 40px rgba(27,70,91,.09)}
.dashboard-welcome>div{position:relative;z-index:2}.dashboard-welcome h1{margin:8px 0 5px;font-size:clamp(1.8rem,3vw,2.5rem)}
.dashboard-welcome .button{margin-top:14px}.dashboard-welcome>img{position:absolute;right:10px;bottom:-35px;width:39%;height:280px;object-fit:contain}
.stat-grid{overflow:hidden;gap:0;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:0 12px 30px rgba(27,69,91,.06)}
.stat-grid article{border:0;border-radius:0;background:transparent}
.stat-grid article+article{border-left:1px solid #dfebef}
.stat-grid article:nth-child(1)>span{background:#e2f3fb;color:#19739a}.stat-grid article:nth-child(2)>span{background:#e3f5eb;color:#2b805e}.stat-grid article:nth-child(3)>span{background:#f0e8f8;color:#785497}
.table-panel,.setting-card,.import-panel{border-top:4px solid #36a078}
.auth-card{position:relative;overflow:hidden;border:0;border-top:5px solid #207fa8;box-shadow:0 22px 55px rgba(25,67,89,.14)}
.auth-card:after{content:"";position:absolute;width:170px;height:170px;right:-95px;bottom:-105px;border-radius:50%;background:linear-gradient(145deg,#dff3fb,#eee4f8)}

@media(max-width:900px){.colorful-hero{grid-template-columns:minmax(0,1fr) 270px;min-height:300px;padding:30px}.hero-art{height:255px}.dashboard-welcome{padding-right:34%}.dashboard-welcome>img{width:36%}}
@media(max-width:700px){.colorful-hero{grid-template-columns:1fr;padding:25px 22px 0}.hero-copy h1{font-size:2rem}.hero-art{height:230px;margin-top:-10px}.dashboard-welcome{padding:24px 22px 205px}.dashboard-welcome>img{right:50%;bottom:-35px;width:330px;height:235px;transform:translateX(50%)}.stat-grid{gap:0}.stat-grid article+article{border-left:0;border-top:1px solid #dfebef}}
@media(max-width:700px){.category-quick-search{padding:18px}.category-quick-row{grid-template-columns:1fr}.category-quick-row .button{width:100%}}

/* Complete form layout: guidance and publishing rail on the left */
.form-layout{grid-template-columns:318px minmax(0,1fr)}
.form-main{grid-column:2;grid-row:1}
.form-aside{grid-column:1;grid-row:1;grid-template-columns:1fr}
.form-aside .reference-card{border-top-color:#7d5ca0}
.form-aside .reference-card summary{padding:16px 17px}
.form-aside .reference-card section:nth-child(1) h3{color:#227ca5}
.form-aside .reference-card section:nth-child(2) h3{color:#765294}
.form-aside .reference-card section:nth-child(3) h3{color:#2f805f}
@media(max-width:900px){.form-layout{grid-template-columns:1fr}.form-main,.form-aside{grid-column:1;grid-row:auto}.form-aside{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.form-aside{grid-template-columns:1fr}}

/* Plan detail, members, collections and import workflow */
.plan-hero{display:block;background:linear-gradient(125deg,#fff,#f4fbfe)}
.plan-heading{max-width:980px}.plan-goal-inline{display:grid;gap:3px;margin:18px 0 8px;padding:14px 16px;border-left:5px solid #2e91b6;border-radius:0 12px 12px 0;background:#edf8fc}.plan-goal-inline small,.plan-creator{color:var(--muted)}.plan-goal-inline b{font-size:1.03rem}.plan-creator{display:block;margin-top:7px}
.save-plan-card{display:grid;grid-template-columns:1fr minmax(460px,.9fr);gap:18px;align-items:center;margin-top:16px;padding:18px 22px;border-top:4px solid #8a65ad}.save-plan-card>div{display:flex;gap:12px;align-items:center}.save-plan-card h2,.save-plan-card p{margin:0}.save-plan-card p{color:var(--muted)}.save-plan-card form{display:grid;grid-template-columns:150px 1fr auto;gap:8px}.save-plan-card .field{margin:0}
.question-list{counter-reset:question;display:grid!important;gap:0!important;margin:12px 0}.question-list article{counter-increment:question;position:relative;padding:16px 0 16px 48px!important;border:0!important;border-bottom:1px dashed var(--line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.question-list article:before{content:counter(question);position:absolute;left:0;top:14px;display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#e1f2f8;color:#176184;font-weight:900}.question-list article:nth-child(2):before{background:#eee5f5;color:#744f94}.question-list article:nth-child(3):before{background:#fff0cd;color:#946412}.question-list article:nth-child(4):before{background:#dff2e7;color:#317554}
.auth-links{display:grid;gap:8px;margin-top:18px;text-align:center}.auth-links a:first-child{font-weight:800;color:#176c92}.register-card{max-width:540px}.register-card form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.register-card form label:nth-child(1),.register-card form button{grid-column:1/-1}
.collection-section{margin-top:16px;padding:22px;border-top:4px solid #8a65ad}.collection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.collection-grid>article{padding:18px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(135deg,#fff,#f7f3fb)}.collection-head{display:flex;gap:11px;align-items:center}.collection-head>span{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#eee5f7;color:#765096;font-size:1.2rem}.collection-head h3,.collection-head small{margin:0}.collection-head small{color:var(--muted)}.collection-grid ul{display:grid;gap:7px;margin:14px 0 0;padding:0;list-style:none}.collection-grid li a{display:block;padding:10px 12px;border-radius:10px;background:#fff}.collection-grid li small{display:block;color:var(--muted)}
.inline-form{display:inline}.compact-button{padding:7px 10px;font-size:.82rem}.status.waiting{background:#fff0cf;color:#7f5a0b}.status.reviewing{background:#e7efff;color:#315b9d}.status.imported{background:#e4f6ec;color:#247250}.import-source-banner{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:16px 20px;border-left:5px solid #e6aa3b;background:linear-gradient(110deg,#fff9e9,#fff)}.import-source-banner>span{font-size:1.5rem;color:#9a6817}.import-source-banner p{margin:3px 0;color:var(--muted)}
.goal-admin-list .goal-row{display:grid;grid-template-columns:minmax(0,1fr) 72px 85px 62px;gap:7px;align-items:center;padding-bottom:8px;border-bottom:1px solid var(--line)}.goal-admin-list .goal-row.new-goal{grid-template-columns:minmax(0,1fr) 72px 1fr;border:0}.goal-admin-list .goal-row .field{margin:0}.mini-check.danger{color:#a44747}.goal-bulk-form>.button{margin-top:14px}
.members-head{padding:24px;border-radius:18px;background:linear-gradient(120deg,#eaf7fc,#f3eef8)}.member-total{padding:9px 14px;border-radius:999px;background:#fff;color:#17658a;font-weight:900}.members-panel{margin-top:16px}.table-field{min-width:160px;margin:0}.add-member-card{margin-top:16px}.member-create-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.sticky-save{position:sticky;bottom:12px;z-index:5;display:flex;justify-content:flex-end;margin:14px 0;padding:10px;border-radius:14px;background:rgba(238,246,247,.9);backdrop-filter:blur(8px)}
@media(max-width:900px){.save-plan-card{grid-template-columns:1fr}.collection-grid{grid-template-columns:1fr}.member-create-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.save-plan-card form,.register-card form,.member-create-grid,.import-source-banner{grid-template-columns:1fr}.register-card form label:nth-child(1),.register-card form button{grid-column:auto}.save-plan-card .button{width:100%}.goal-admin-list .goal-row,.goal-admin-list .goal-row.new-goal{grid-template-columns:1fr 64px}.goal-admin-list .mini-check{justify-self:start}.import-source-banner .button{width:100%}.sticky-save .button{width:100%}}

/* Verified members and editable teacher profiles */
.user-button img{width:28px;height:28px;border-radius:9px;object-fit:cover}.nav .logout-button{display:grid;place-items:center;width:42px;min-width:42px;height:42px;min-height:42px;padding:0;border:0;border-radius:12px;background:#c94b4b;color:#fff;box-shadow:0 6px 14px rgba(190,73,73,.22);appearance:none;-webkit-appearance:none;transition:background .16s,box-shadow .16s,transform .16s}.nav .logout-button span{font:900 1.35rem/1 "Segoe UI Symbol","Arial Unicode MS",sans-serif}.nav .logout-button:hover{background:#ae3d3d;box-shadow:0 8px 18px rgba(190,73,73,.3);transform:translateY(-1px)}.nav .logout-button:focus-visible{outline:3px solid rgba(190,73,73,.2);outline-offset:2px}.user-button.active{border-color:#8fc2d7;background:#e7f4f9;color:var(--navy)}
.register-card form .full-row{grid-column:1/-1}.verification-note{margin:14px 0 0;padding:11px 13px;border-radius:10px;background:#fff8e5;color:#725719;font-size:.85rem}
.profile-form{margin-top:16px}.profile-card{padding:24px;border-top:5px solid #268cb0}.profile-identity{display:flex;gap:16px;align-items:center;padding-bottom:20px;border-bottom:1px solid var(--line)}.profile-identity h2,.profile-identity p{margin:2px 0}.profile-avatar{display:grid;place-items:center;width:90px;height:90px;flex:0 0 90px;border-radius:24px;background:linear-gradient(145deg,#dff3fb,#eee5f7);overflow:hidden}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-avatar span{font-size:2rem;font-weight:900;color:#176486}.email-state{display:inline-flex;margin-top:6px;padding:4px 9px;border-radius:999px;font-size:.75rem;font-weight:900}.email-state.verified{background:#e2f5ea;color:#287856}.email-state.pending{background:#fff0cf;color:#865f0b}.profile-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:20px}.profile-fields .span-2{grid-column:1/-1}.profile-fields small{display:block;color:var(--muted)}.password-change{margin:20px 0;border:1px solid var(--line);border-radius:13px;background:#f9fbfc}.password-change summary{padding:13px 15px;font-weight:900;cursor:pointer}.password-change>div{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:0 15px 15px}.verify-check{color:#257252}.member-thumb{display:block;width:34px;height:34px;margin-top:5px;border-radius:9px;object-fit:cover}.email-field{min-width:220px}
.profile-head{margin-bottom:0}.member-summary{display:flex;gap:8px;flex-wrap:wrap}.member-summary>span,.section-count{padding:8px 12px;border-radius:999px;background:#e7f5ed;color:#287856;font-size:.8rem;font-weight:900}.member-summary .pending-count,.pending-members-panel .section-count{background:#fff0cf;color:#865f0b}.member-summary b{font-size:1rem}.member-management-form{display:grid;gap:16px}.member-management-form .members-panel{margin-top:0}.members-head+.member-management-form{margin-top:16px}.members-panel .section-title{align-items:center}.members-panel .section-title>div{flex:1}.section-count.approved{background:#e2f5ea;color:#287856}.pending-members-panel{border-top-color:#e6aa3b}.approved-members-panel{border-top-color:#36a078}.member-table td:last-child{min-width:105px}.member-table .field{min-height:42px;padding:8px 10px}.member-delete-button{min-height:38px;padding:6px 12px;border-color:#e1b7b7;background:#fff5f5;color:#a23f3f}.member-delete-button:hover{border-color:#c97f7f;background:#fde8e8}.member-protected{display:inline-block;max-width:95px;color:var(--muted);font-size:.75rem}.self-label{margin-top:4px;color:#287856;font-weight:800}.member-empty{display:grid;place-items:center;gap:5px;padding:28px;border:1px dashed #cbdde4;border-radius:13px;background:#fafcfd;color:var(--muted);text-align:center}.member-empty span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#e6f5ec;color:#287856;font-weight:900}.member-empty p{margin:0}.sticky-save{margin-bottom:0}
.member-account{display:flex;align-items:center;gap:9px;min-width:145px}.member-account .member-thumb{width:38px;height:38px;margin:0;flex:0 0 38px}.member-initial{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:10px;background:#e5f2f7;color:#176486;font-weight:900}.member-account b,.member-account small{display:block}.member-display-name{display:block;min-width:160px}.member-email{display:block;max-width:230px;overflow-wrap:anywhere;color:#496575}.member-state,.member-role{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:.73rem;font-weight:900;white-space:nowrap}.member-state.pending{background:#fff0cf;color:#865f0b}.member-state.approved,.member-state.active{background:#e2f5ea;color:#287856}.member-state.inactive{background:#f3e7e7;color:#914747}.member-role{background:#e8f2f7;color:#28627d}.member-row-actions{display:grid;gap:6px;min-width:130px}.member-row-actions form{margin:0}.member-profile-button,.member-delete-button{width:100%;min-height:38px;padding:6px 10px;font-size:.78rem}.member-profile-button{border-color:#afd1df;background:#edf7fa;color:#176486}.member-profile-button:hover{border-color:#78aec3;background:#e1f1f6}.member-edit-head{padding:23px}.member-edit-form{margin-top:16px}.member-edit-card{display:grid;gap:0}.member-edit-section{padding:22px 0;border-bottom:1px solid var(--line)}.member-edit-section-title{display:flex;gap:11px;align-items:center}.member-edit-section-title>span{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:11px;background:#e4f3f8;color:#176486;font-size:.76rem;font-weight:900}.member-edit-section-title h3,.member-edit-section-title p{margin:0}.member-edit-section-title p{color:var(--muted);font-size:.8rem}.member-access-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:12px;margin-top:16px}.member-access-toggle{display:flex;align-items:center;gap:10px;min-height:76px;padding:13px;border:1px solid #d3e2e8;border-radius:12px;background:#f9fcfd}.member-access-toggle input{width:20px;height:20px;accent-color:var(--green)}.member-access-toggle span b,.member-access-toggle span small{display:block}.member-access-toggle span small{color:var(--muted);font-weight:500}.member-edit-actions{display:flex;justify-content:flex-end;gap:9px;padding-top:20px}.member-create-grid>.button{align-self:end}
@media(max-width:900px){.member-access-grid{grid-template-columns:1fr}.member-edit-actions{display:grid;grid-template-columns:1fr 1fr}.member-row-actions{min-width:115px}}
.member-table th:nth-child(4),.member-table th:nth-child(6),.member-table td:nth-child(4),.member-table td:nth-child(6){text-align:center}.member-state-icon{display:grid;place-items:center;width:30px;height:30px;margin:auto;border-radius:50%;font-size:1rem;font-weight:900}.member-state-icon.yes{background:#dff3e8;color:#247653}.member-state-icon.no{background:#f8e4e4;color:#a23f3f}.member-row-actions{display:flex;align-items:center;gap:6px;min-width:0;white-space:nowrap}.member-row-actions form{display:flex;margin:0}.member-profile-button,.member-delete-button{width:auto;min-width:64px;min-height:36px;padding:5px 12px;font-size:.78rem}
.goal-picker{width:100%;margin-top:20px;border:1px solid #c6dce6;border-radius:16px;background:linear-gradient(145deg,#f8fcfe,#f3f9fb);box-shadow:0 8px 22px rgba(25,80,108,.06);overflow:hidden}.goal-picker-head{display:grid;grid-template-columns:42px minmax(0,1fr) auto 28px;gap:12px;align-items:center;padding:16px;cursor:pointer;list-style:none}.goal-picker-head::-webkit-details-marker{display:none}.goal-picker-head:hover{background:rgba(231,244,249,.55)}.goal-picker-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:linear-gradient(145deg,#176f9b,#258e80);color:#fff;font-size:1.35rem;font-weight:900;box-shadow:0 7px 16px rgba(28,119,132,.18)}.goal-picker-title{display:block;min-width:0}.goal-picker-title b,.goal-picker-title small{display:block}.goal-picker-title b{color:#173f57;font-size:1rem}.goal-picker-title b em{color:#c34848}.goal-picker-title small{margin-top:1px;color:var(--muted);font-size:.76rem;font-weight:500}.goal-picker-count{padding:6px 10px;border-radius:999px;background:#e8f1f5;color:#607987;font-size:.72rem;font-weight:900;white-space:nowrap}.goal-picker.has-selection .goal-picker-count{background:#dff3e8;color:#267554}.goal-picker-toggle{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#e7f4f9;color:#176486;font-size:1.2rem;font-weight:900;transition:transform .18s}.goal-picker[open] .goal-picker-head{border-bottom:1px solid #d8e6ec}.goal-picker[open] .goal-picker-toggle{transform:rotate(180deg)}.goal-picker.needs-selection{border-color:#d16a6a;box-shadow:0 0 0 3px rgba(190,73,73,.1)}.goal-picker-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:13px 16px 16px}.goal-picker-options label{position:relative;display:grid;grid-template-columns:26px minmax(0,1fr);gap:10px;align-items:start;min-height:66px;padding:12px 13px;border:1px solid #d5e3e9;border-radius:12px;background:#fff;box-shadow:0 3px 10px rgba(25,70,92,.04);cursor:pointer;transition:border-color .16s,background .16s,box-shadow .16s,transform .16s}.goal-picker-options label:hover{border-color:#80b6c9;background:#fbfeff;box-shadow:0 6px 15px rgba(25,80,108,.08);transform:translateY(-1px)}.goal-picker-options input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.goal-option-check{display:grid;place-items:center;width:24px;height:24px;border:2px solid #b9cfd9;border-radius:8px;background:#fff;color:transparent;font-size:.8rem;font-weight:900;transition:.16s}.goal-option-text{min-width:0;color:#294b5f;line-height:1.5;overflow-wrap:anywhere;word-break:break-word;font-size:.86rem;font-weight:700}.goal-picker-options label:has(input:checked){border-color:#65ad8c;background:#edf8f2;box-shadow:0 5px 14px rgba(47,138,104,.09)}.goal-picker-options label:has(input:checked) .goal-option-check{border-color:#2f8a68;background:#2f8a68;color:#fff}.goal-picker-options label:has(input:focus-visible){outline:3px solid rgba(38,140,176,.18);outline-offset:2px}@media(max-width:720px){.goal-picker-head{grid-template-columns:38px minmax(0,1fr) 28px;padding:13px}.goal-picker-icon{width:38px;height:38px;grid-row:1/3}.goal-picker-title{grid-column:2}.goal-picker-count{grid-column:2;justify-self:start}.goal-picker-toggle{grid-column:3;grid-row:1/3}.goal-picker-options{grid-template-columns:1fr;padding:11px 13px 13px}}
@media(max-width:900px){.nav-logout-form{width:100%}.member-summary{width:100%}.password-change>div{grid-template-columns:1fr}.profile-fields{grid-template-columns:1fr}.profile-fields .span-2{grid-column:auto}.members-panel .section-title{align-items:flex-start}.section-count{margin-left:auto;white-space:nowrap}}
@media(max-width:700px){.profile-fields,.password-change>div{grid-template-columns:1fr}.profile-fields .span-2{grid-column:auto}.profile-card{padding:18px}.profile-avatar{width:72px;height:72px;flex-basis:72px;border-radius:19px}.register-card form .full-row{grid-column:auto}}

/* Forum-style category directory on the public catalog */
.board-directory{margin-top:22px}.board-titlebar{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 24px;border-radius:18px 18px 0 0;background:linear-gradient(115deg,#124967,#176f87 58%,#258d7f);color:#fff}.board-titlebar h2,.board-titlebar p{margin:0}.board-titlebar .kicker{color:#bfe9e5}.board-titlebar>span{padding:7px 12px;border:1px solid rgba(255,255,255,.3);border-radius:999px;background:rgba(255,255,255,.12);font-weight:900;white-space:nowrap}.board-list{overflow:hidden;border:1px solid #cbdde5;border-top:0;border-radius:0 0 18px 18px;background:#fff;box-shadow:0 15px 38px rgba(24,66,88,.09)}.board-columns,.board-row{display:grid;grid-template-columns:minmax(0,1.55fr) 120px minmax(260px,.8fr);align-items:center}.board-columns{padding:9px 20px;background:#edf5f8;color:#607988;font-size:.75rem;font-weight:900}.board-columns span:nth-child(2){text-align:center}.board-row{min-height:112px;padding:16px 20px;border-top:1px solid #dce7ec}.board-row:first-of-type{border-top:0}.board-row:hover{background:#f8fcfd}.board-main{display:flex;align-items:flex-start;gap:15px;min-width:0}.board-icon{display:grid;place-items:center;width:50px;height:50px;flex:0 0 50px;border-radius:15px;font-size:1.25rem;font-weight:900}.board-color-1{background:#dff2fa;color:#1c7ca5}.board-color-2{background:#eee5f7;color:#765096}.board-color-3{background:#e1f5e9;color:#2d805d}.board-color-4{background:#fff0cf;color:#976714}.board-color-5{background:#fde7e7;color:#a64b4b}.board-main h3{margin:0 0 3px;font-size:1.08rem}.board-main h3 a{color:#154f70}.board-main h3 a:hover{text-decoration:underline}.board-main p{margin:0;color:var(--muted);font-size:.84rem}.board-grades{display:flex;flex-wrap:wrap;gap:4px;margin-top:7px}.board-grades span{padding:2px 6px;border-radius:6px;background:#eef4f6;color:#496778;font-size:.69rem;font-weight:900}.board-count{text-align:center}.board-count b,.board-count small{display:block}.board-count b{font-size:1.35rem;color:#176789}.board-count small{color:var(--muted)}.board-latest{padding-left:18px;border-left:1px solid #e0e9ed;min-width:0}.board-latest a{display:block}.board-latest b,.board-latest span,.board-latest small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-latest b{color:#174f6d}.board-latest span,.board-latest small{color:var(--muted);font-size:.78rem}.catalog-locked{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;margin-top:22px;padding:25px;border-top:5px solid #d09b32;background:linear-gradient(115deg,#fffaf0,#fff)}.catalog-locked>span{display:grid;place-items:center;width:58px;height:58px;border-radius:17px;background:#fff0cf;color:#906313;font-size:1.5rem}.catalog-locked h2,.catalog-locked p{margin:0}.catalog-locked>div>p:last-child{color:var(--muted)}
@media(max-width:760px){.board-columns{display:none}.board-row{grid-template-columns:minmax(0,1fr) 64px}.board-latest{grid-column:1/-1;margin:13px 0 0 65px;padding:11px 0 0;border-left:0;border-top:1px dashed #d9e5ea}.catalog-locked{grid-template-columns:auto 1fr}.catalog-locked .button{grid-column:1/-1;width:100%}}
@media(max-width:500px){.board-titlebar{align-items:flex-start;padding:18px;flex-direction:column}.board-row{grid-template-columns:1fr;padding:15px}.board-count{display:flex;gap:5px;margin:9px 0 0 65px;text-align:left}.board-count b{font-size:.9rem}.board-latest{margin-left:65px}.board-icon{width:48px;height:48px;flex-basis:48px}}

/* SMF-like plan rows inside a category */
.results-head p{margin-bottom:0;color:var(--muted)}.topic-list{overflow:hidden;margin-top:15px;border:1px solid #c9d9e1;border-radius:15px;background:#eef2f6;box-shadow:0 12px 30px rgba(26,65,86,.08)}.topic-columns,.topic-row{display:grid;grid-template-columns:50px minmax(0,1fr) 150px 220px;align-items:center}.topic-columns{grid-template-columns:minmax(0,1fr) 150px 220px;padding:9px 18px 9px 68px;border-bottom:1px solid #bdced8;background:linear-gradient(180deg,#e6eef3,#dce7ed);color:#536e7e;font-size:.75rem;font-weight:900}.topic-columns span:nth-child(2),.topic-columns span:nth-child(3){text-align:center}.topic-row{min-height:102px;padding:14px 18px;border-bottom:1px solid #cbd7df;background:#f0f3f7}.topic-row:last-child{border-bottom:0}.topic-row:nth-child(even){background:#e9edf2}.topic-row:hover{background:#f8fcfe}.topic-icon{display:grid;place-items:center;width:32px;height:38px;border-radius:8px;font-size:.95rem}.topic-main{min-width:0;padding-right:15px}.topic-main h3{margin:0;font-size:1rem}.topic-main h3 a{color:#14547a}.topic-main h3 a:hover{text-decoration:underline}.topic-main p,.topic-main small{margin:2px 0;color:#526f80}.topic-main small{font-size:.74rem}.topic-frameworks{display:flex;gap:4px;margin-top:5px}.topic-frameworks span{padding:2px 6px;border-radius:5px;background:#dcecf4;color:#266682;font-size:.66rem;font-weight:900}.topic-stats,.topic-updated{display:grid;gap:2px;text-align:center;color:#526d7d}.topic-stats{padding:0 12px}.topic-stats b{color:#173f57}.topic-stats span,.topic-updated span,.topic-updated small{font-size:.76rem}.topic-updated{padding-left:15px;border-left:1px solid #c9d6de}.topic-updated b{color:#174e6e}.topic-updated small{color:#637c8b}
@media(max-width:760px){.topic-columns{display:none}.topic-row{grid-template-columns:42px minmax(0,1fr) 100px}.topic-updated{grid-column:2/-1;margin-top:10px;padding:8px 0 0;border-left:0;border-top:1px dashed #c5d3dc;text-align:left}.topic-updated span,.topic-updated small{display:inline;margin-right:6px}}
@media(max-width:500px){.topic-row{grid-template-columns:38px 1fr;padding:13px}.topic-stats{grid-column:2;display:flex;gap:8px;padding:8px 0 0;text-align:left}.topic-updated{grid-column:2}.topic-icon{width:30px;height:34px}}

/* Admin-managed plan categories */
.board-image{width:50px;height:50px;flex:0 0 50px;border-radius:15px;object-fit:cover;box-shadow:0 5px 14px rgba(23,77,104,.14)}.category-admin{margin-bottom:18px;padding:23px;border-top:5px solid #247fa6}.category-admin-list{display:grid;gap:12px}.category-edit-card{display:grid;grid-template-columns:100px minmax(0,1fr) auto;gap:15px;align-items:center;padding:15px;border:1px solid var(--line);border-radius:15px;background:#f8fbfc}.category-preview{display:grid;justify-items:center;gap:6px}.category-preview img,.category-preview>span{width:72px;height:72px;border-radius:16px}.category-preview img{object-fit:cover}.category-preview>span{display:grid;place-items:center;background:linear-gradient(145deg,#dff3fb,#eee5f7);color:#176486;font-size:1.5rem}.category-preview small{color:var(--muted)}.category-fields{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(260px,1.3fr);gap:10px}.category-fields .field,.category-fields textarea{margin:0}.category-small-fields{grid-column:1/-1;display:grid;grid-template-columns:100px minmax(220px,1fr);gap:10px}.category-actions{display:grid;gap:7px}.danger-button{border:1px solid #e0b9b9;background:#fff4f4;color:#a13f3f}.danger-button:disabled{opacity:.45;cursor:not-allowed}.category-new-form{display:grid;grid-template-columns:1fr 1fr 1.2fr 90px 1.2fr auto;gap:10px;align-items:end;margin-top:18px;padding:17px;border-radius:15px;background:linear-gradient(120deg,#eaf7fc,#f5f1fa)}.category-new-form h3,.category-new-form p{margin:0}.category-new-form p{color:var(--muted);font-size:.8rem}.category-new-form .field,.category-new-form textarea{margin:0}
.plan-manage-actions{display:flex;align-items:center;gap:8px}.plan-manage-actions form{margin:0}
.admin-head-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px}.category-page-head{padding:24px;border-radius:18px;background:linear-gradient(120deg,#eaf7fc,#f3eef8)}
@media(max-width:900px){.category-edit-card{grid-template-columns:85px 1fr}.category-actions{grid-column:1/-1;grid-template-columns:1fr 1fr}.category-new-form{grid-template-columns:1fr 1fr}.category-new-form>div{grid-column:1/-1}}
@media(max-width:600px){.admin-head-actions{width:100%;display:grid;grid-template-columns:1fr}.category-edit-card{grid-template-columns:1fr}.category-preview{grid-template-columns:auto 1fr;justify-items:start;align-items:center}.category-preview img,.category-preview>span{width:60px;height:60px}.category-fields,.category-small-fields,.category-new-form{grid-template-columns:1fr}.category-actions{grid-column:auto}.board-image{width:48px;height:48px;flex-basis:48px}}

/* Teacher dashboard: compact rows and dedicated import workspace */
.dashboard-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}.dashboard-welcome .dashboard-actions .button{margin-top:0}.dashboard-list-section{margin-top:16px;padding:22px;border-top:4px solid #258caf}.dashboard-section-head>div{flex:1}.dashboard-plan-list{overflow:hidden;border:1px solid #d4e2e8;border-radius:14px}.dashboard-plan-row{display:grid;grid-template-columns:44px minmax(230px,1fr) 145px 115px 100px;gap:13px;align-items:center;min-height:92px;padding:14px 16px;border-bottom:1px solid #dce7ec;background:#fff}.dashboard-plan-row:last-child{border-bottom:0}.dashboard-plan-row:nth-child(even){background:#f7fafb}.dashboard-plan-row:hover{background:#f0f8fb}.dashboard-plan-icon{display:grid;place-items:center;width:38px;height:42px;border-radius:10px;font-weight:900}.dashboard-plan-main{min-width:0}.dashboard-plan-main h3,.dashboard-plan-main p{margin:0}.dashboard-plan-main h3{font-size:1rem}.dashboard-plan-main h3 a{color:#14567b}.dashboard-plan-main p,.dashboard-plan-main small{display:block;overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.dashboard-plan-main p{font-size:.84rem}.dashboard-plan-main small{font-size:.73rem}.dashboard-plan-meta,.dashboard-plan-date,.dashboard-plan-usage{display:grid;gap:2px}.dashboard-plan-meta small,.dashboard-plan-date small,.dashboard-plan-usage small{color:var(--muted)}.dashboard-plan-date{font-size:.82rem}.dashboard-plan-usage{text-align:center}.dashboard-plan-usage b{font-size:1.35rem;color:#25805e}.dashboard-plan-open{color:#17688d;font-size:.84rem;font-weight:900;text-align:right;white-space:nowrap}.collection-rows-section{border-top-color:#8a65ad}.saved-collection-list{overflow:hidden;border:1px solid #ddd7e7;border-radius:14px}.saved-collection-row{border-bottom:1px solid #e4deeb;background:#fff}.saved-collection-row:last-child{border-bottom:0}.saved-collection-row summary{display:grid;grid-template-columns:44px minmax(0,1fr) 75px 25px;gap:13px;align-items:center;padding:14px 16px;cursor:pointer;list-style:none}.saved-collection-row summary::-webkit-details-marker{display:none}.saved-collection-row[open] summary{background:#f8f4fb}.collection-row-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#eee5f7;color:#765096;font-size:1.1rem}.collection-row-main b,.collection-row-main small,.collection-row-count b,.collection-row-count small{display:block}.collection-row-main small,.collection-row-count small{color:var(--muted)}.collection-row-count{text-align:center}.collection-row-count b{font-size:1.15rem;color:#765096}.collection-row-arrow{color:#765096;font-size:1.3rem;font-weight:900;transition:.18s}.saved-collection-row[open] .collection-row-arrow{transform:rotate(180deg)}.saved-collection-plans{display:grid;gap:1px;padding:0 16px 14px 73px}.saved-collection-plans>a{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px 12px;border-radius:9px;background:#f8fafb}.saved-collection-plans>a:hover{background:#edf6f9}.saved-collection-plans>a span:nth-child(2) b,.saved-collection-plans>a span:nth-child(2) small{display:block}.saved-collection-plans>a span:nth-child(2) small{color:var(--muted)}.saved-collection-plans>a>b{color:#17688d;font-size:.8rem}.popular-plans-section{border-top-color:#36a078}.dashboard-collapsible-section{padding:0;overflow:hidden}.dashboard-collapsible-section>summary{padding:18px 22px;cursor:pointer;list-style:none}.dashboard-collapsible-section>summary::-webkit-details-marker{display:none}.dashboard-collapsible-section>summary .section-title{margin:0}.dashboard-collapsible-section>summary .section-title>div{flex:1}.dashboard-collapse-label{display:flex;align-items:center;gap:8px;color:#24785a;font-size:.82rem;font-weight:900;white-space:nowrap}.dashboard-collapse-label b{font-size:1.25rem;transition:transform .18s}.dashboard-collapse-close{display:none}.dashboard-collapsible-section[open] .dashboard-collapse-open{display:none}.dashboard-collapsible-section[open] .dashboard-collapse-close{display:inline}.dashboard-collapsible-section[open] .dashboard-collapse-label b{transform:rotate(180deg)}.dashboard-collapsible-body{padding:0 22px 22px}.import-page-head{padding:24px;border-radius:18px;background:linear-gradient(120deg,#eaf7fc,#f2f8ef)}
@media(max-width:850px){.dashboard-plan-row{grid-template-columns:44px minmax(0,1fr) 105px 90px}.dashboard-plan-open{grid-column:2/-1;padding-top:8px;border-top:1px dashed #d5e2e7;text-align:left}.dashboard-plan-meta{grid-column:3}.dashboard-plan-date,.dashboard-plan-usage{grid-column:4}}
@media(max-width:600px){.dashboard-actions{display:grid;grid-template-columns:1fr;width:100%}.dashboard-actions .button{width:100%}.dashboard-section-head{align-items:flex-start;flex-wrap:wrap}.dashboard-section-head .button{width:100%;margin-left:49px}.dashboard-plan-row{grid-template-columns:38px minmax(0,1fr) 68px;gap:10px;padding:13px}.dashboard-plan-icon{width:34px;height:38px}.dashboard-plan-meta{grid-column:2}.dashboard-plan-date,.dashboard-plan-usage{grid-column:3;grid-row:1/3}.dashboard-plan-open{grid-column:2/-1}.saved-collection-row summary{grid-template-columns:40px minmax(0,1fr) 55px 18px;padding:12px}.saved-collection-plans{padding:0 12px 12px}.saved-collection-plans>a{grid-template-columns:23px minmax(0,1fr)}.saved-collection-plans>a>b{grid-column:2}.dashboard-collapsible-section>summary{padding:15px}.dashboard-collapsible-section>summary .section-title{align-items:flex-start}.dashboard-collapse-label{margin-left:auto}.dashboard-collapse-label>span{display:none!important}.dashboard-collapsible-body{padding:0 15px 15px}.import-page-head{padding:20px}}

/* Five upcoming school days */
.dashboard-schedule-section{margin-top:16px;padding:22px;border-top:4px solid #258caf}.dashboard-schedule-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:15px}.dashboard-schedule-head .section-title{margin:0}.schedule-progress{width:155px;flex:0 0 155px}.schedule-progress>div{display:flex;justify-content:space-between;gap:8px;margin-bottom:6px;color:var(--muted);font-size:.75rem}.schedule-progress>div b{color:#226b52}.schedule-progress-track{display:block;height:7px;overflow:hidden;border-radius:999px;background:#dce8e5}.schedule-progress-track i{display:block;height:100%;border-radius:inherit;background:#36a078}.dashboard-schedule-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.schedule-day-card{--schedule-day-accent:#17688d;--schedule-day-bg:#f7fafb;--schedule-day-border:#d4e2e8;position:relative;min-width:0;min-height:158px;padding:10px 13px 13px;border:1px solid var(--schedule-day-border);border-top:4px solid var(--schedule-day-accent);border-radius:14px;background:var(--schedule-day-bg)}.schedule-day-card.day-monday{--schedule-day-accent:#a97800;--schedule-day-bg:#fff9dc;--schedule-day-border:#ead67b}.schedule-day-card.day-tuesday{--schedule-day-accent:#b65076;--schedule-day-bg:#fff0f5;--schedule-day-border:#edbfd0}.schedule-day-card.day-wednesday{--schedule-day-accent:#2e8058;--schedule-day-bg:#eaf7f0;--schedule-day-border:#b9dfca}.schedule-day-card.day-thursday{--schedule-day-accent:#bd6917;--schedule-day-bg:#fff3e3;--schedule-day-border:#ecc69e}.schedule-day-card.day-friday{--schedule-day-accent:#2b70a5;--schedule-day-bg:#eaf4fc;--schedule-day-border:#b8d6eb}.schedule-day-card.is-next{box-shadow:inset 0 0 0 2px var(--schedule-day-accent)}.schedule-day-date{display:flex;align-items:flex-start;justify-content:space-between;gap:7px;margin-bottom:11px}.schedule-day-date b,.schedule-day-date small{display:block}.schedule-day-date b{font-size:.9rem;color:var(--schedule-day-accent)}.schedule-day-date small{color:var(--muted);font-size:.72rem}.schedule-day-date em{padding:3px 6px;border-radius:999px;background:rgba(255,255,255,.82);color:var(--schedule-day-accent);font-size:.62rem;font-style:normal;font-weight:900;white-space:nowrap}.schedule-day-card h3{min-height:42px;margin:0 0 5px;color:#174d69;font-size:.88rem;line-height:1.5}.schedule-day-card>p{margin:0 0 11px;color:var(--muted);font-size:.74rem}.schedule-day-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.schedule-day-actions>a,.schedule-picker>summary,.schedule-remove-form button{border:0;background:transparent;color:#17688d;font:inherit;font-size:.72rem;font-weight:900;cursor:pointer;text-decoration:none}.schedule-picker{position:relative}.schedule-picker>summary{list-style:none}.schedule-picker>summary::-webkit-details-marker{display:none}.schedule-picker>form{position:absolute;left:0;top:calc(100% + 7px);z-index:15;display:grid;width:260px;gap:8px;padding:10px;border:1px solid #cbdde5;border-radius:12px;background:#fff;box-shadow:0 12px 28px rgba(23,77,104,.18)}.schedule-picker .field{width:100%;margin:0;font-size:.78rem}.schedule-picker .button{width:100%}.schedule-remove-form{margin:0}.schedule-remove-form button{padding:0;color:#a04b4b}.schedule-empty-picker{display:block}.schedule-empty-picker>summary{display:grid;place-items:center;min-height:78px;padding:10px;border:1px dashed var(--schedule-day-border);border-radius:10px;color:var(--schedule-day-accent);text-align:center}.schedule-empty-picker>summary strong,.schedule-empty-picker>summary span{display:block}.schedule-empty-picker>summary strong{font-size:1.25rem}.schedule-empty-picker>form{left:50%;transform:translateX(-50%)}.schedule-no-plans{display:grid;place-items:center;min-height:78px;padding:10px;border:1px dashed var(--schedule-day-border);border-radius:10px;color:var(--muted);font-size:.72rem;text-align:center}.schedule-no-plans a{color:var(--schedule-day-accent);font-weight:900}.compact-button{padding:7px 10px;font-size:.76rem}
@media(max-width:950px){.dashboard-schedule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-day-card:last-child{grid-column:1/-1}.schedule-picker>form{left:auto;right:0}.schedule-empty-picker>form{left:50%;right:auto}}
@media(max-width:600px){.dashboard-schedule-section{padding:16px}.dashboard-schedule-head{align-items:flex-start;flex-direction:column}.schedule-progress{width:100%;flex-basis:auto}.dashboard-schedule-grid{grid-template-columns:1fr}.schedule-day-card:last-child{grid-column:auto}.schedule-day-card{min-height:0}.schedule-day-card h3{min-height:0}.schedule-picker>form,.schedule-empty-picker>form{position:static;width:100%;margin-top:9px;transform:none}.schedule-empty-picker>summary{min-height:58px}}

/* Plan export menu and collapsible save box */
.plan-manage-actions{flex-wrap:wrap;justify-content:flex-end}.export-menu{position:relative}.export-menu>summary{list-style:none}.export-menu>summary::-webkit-details-marker{display:none}.export-menu>div{position:absolute;right:0;top:calc(100% + 7px);z-index:20;width:270px;padding:7px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 14px 34px rgba(20,61,83,.18)}.export-menu>div a{display:block;padding:10px 11px;border-radius:8px}.export-menu>div a:hover{background:#edf6f9}.export-menu>div b,.export-menu>div small{display:block}.export-menu>div small{color:var(--muted);font-weight:500}.save-plan-card.save-plan-collapsible{display:block;scroll-margin-top:90px;margin-top:18px;padding:0;overflow:visible;border-top:4px solid #8a65ad}.save-plan-collapsible>summary{display:grid;grid-template-columns:42px minmax(0,1fr) 28px;gap:12px;align-items:center;padding:17px 20px;cursor:pointer;list-style:none}.save-plan-collapsible>summary::-webkit-details-marker{display:none}.save-plan-collapsible>summary span:nth-child(2) b,.save-plan-collapsible>summary span:nth-child(2) small{display:block}.save-plan-collapsible>summary span:nth-child(2) b{font-size:1.05rem}.save-plan-collapsible>summary span:nth-child(2) small{color:var(--muted)}.save-plan-collapsible>summary strong{color:#765096;font-size:1.25rem;transition:.18s}.save-plan-collapsible[open]>summary strong{transform:rotate(45deg)}.save-plan-card>.save-plan-body{display:block;padding:0 20px 20px}.save-plan-collapsible .save-plan-body form{grid-template-columns:160px minmax(220px,1fr) auto;padding-top:15px;border-top:1px solid var(--line)}
@media(max-width:700px){.plan-top-actions{align-items:flex-start;flex-direction:column}.plan-manage-actions{width:100%;justify-content:flex-start}.plan-manage-actions>.button,.plan-manage-actions>form,.export-menu{flex:1 1 calc(50% - 6px)}.plan-manage-actions>form .button,.export-menu>summary{width:100%}.export-menu>div{left:0;right:auto;width:min(280px,90vw)}.save-plan-collapsible .save-plan-body form{grid-template-columns:1fr}.save-plan-collapsible>summary{padding:15px}}

/* Behavior tags: quick indicators for issues the lesson is designed to improve */
.behavior-tag-card{position:relative;z-index:10;overflow:visible;padding:19px;border:0;border-top:5px solid #e39a36;background:linear-gradient(145deg,#fffaf0,#fff);box-shadow:0 13px 32px rgba(90,67,31,.10)}
.form-aside .reference-card,.form-aside .behavior-tag-card{grid-column:1/-1}
.behavior-tag-card:after{content:"";position:absolute;right:0;top:0;width:66px;height:66px;border-radius:0 13px 0 100%;background:rgba(255,204,103,.16);pointer-events:none}
.behavior-tag-head{position:relative;z-index:1;display:flex;gap:11px;align-items:flex-start;margin-bottom:15px}
.behavior-tag-head>span{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:13px;background:#ffedc8;color:#9a6512;font-size:1.2rem;box-shadow:inset 0 0 0 1px rgba(154,101,18,.08)}
.behavior-tag-head h2,.behavior-tag-head p{margin:0}.behavior-tag-head h2{font-size:1.05rem;color:#563f1d}.behavior-tag-head p{margin-top:3px;color:#806d4f;font-size:.79rem;line-height:1.45}
.behavior-tag-head em{color:#bd3b3b;font-style:normal}
.behavior-tag-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.behavior-tag-input-wrap{position:relative;min-width:0}.behavior-tag-entry .field{width:100%;min-width:0;margin:0;background:#fff}.behavior-tag-entry .button{padding-inline:14px;border-color:#e1c48f;color:#775018;background:#fff}.behavior-tag-autocomplete{position:absolute;z-index:30;top:calc(100% + 5px);left:0;right:0;max-height:230px;overflow:auto;padding:6px;border:1px solid #d7e3e8;border-radius:12px;background:#fff;box-shadow:0 14px 30px rgba(30,63,79,.18)}.behavior-tag-autocomplete[hidden]{display:none}.behavior-tag-autocomplete button{display:flex;align-items:center;gap:7px;width:100%;padding:9px 10px;border:0;border-radius:8px;background:transparent;color:#385668;font-family:inherit;text-align:left;cursor:pointer}.behavior-tag-autocomplete button:hover,.behavior-tag-autocomplete button.active{background:#fff1d2;color:#704a14}.behavior-tag-autocomplete button b{color:#d18820}.behavior-tag-autocomplete button small{margin-left:auto;color:#8a785b;font-size:.7rem}.behavior-tag-autocomplete button.selected{background:#f7f5f0;color:#887a67;cursor:default}
.behavior-tag-list{display:flex;flex-wrap:wrap;gap:7px;min-height:35px;margin-top:12px}.behavior-tag-list.is-empty:before{content:"ยังไม่ได้เพิ่มแท็ก";align-self:center;color:#9b8a6f;font-size:.78rem}
.behavior-tag-chip{display:inline-flex;align-items:center;gap:5px;max-width:100%;padding:6px 7px 6px 10px;border:1px solid #efd5a6;border-radius:999px;background:#fff4dc;color:#76501b;font-size:.8rem;font-weight:800}.behavior-tag-chip>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.behavior-tag-chip button{display:grid;place-items:center;width:20px;height:20px;padding:0;border:0;border-radius:50%;background:#f2d39c;color:#65410f;font:900 1rem/1 sans-serif;cursor:pointer}.behavior-tag-chip button:hover{background:#d98573;color:#fff}.behavior-tag-card>small{display:block;margin-top:10px;color:#8a785b}
.behavior-tag-display{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin-top:14px}.behavior-tag-display small{width:100%;color:var(--muted)}.behavior-tag-display span{padding:5px 9px;border:1px solid #efd6a9;border-radius:999px;background:#fff4dc;color:#76501b;font-size:.79rem;font-weight:800}
@media(max-width:600px){.behavior-tag-entry{grid-template-columns:1fr}.behavior-tag-entry .button{width:100%}}

/* Plan reading hierarchy: teacher scripts first, supporting descriptions and frameworks second */
.plan-page .plan-hero{border-top:5px solid #258caf;background:linear-gradient(125deg,#fff 0,#f4fbfe 74%,#eef8f3 100%)}
.plan-page .plan-hero h1{color:#123d56;letter-spacing:-.018em}.plan-page .plan-hero>div>p{margin:5px 0;color:#6d8491;font-size:.88rem}.plan-page .plan-goal-inline{max-width:900px;margin:16px 0 9px;padding:12px 15px}.plan-page .plan-goal-inline small{font-size:.75rem}.plan-page .plan-goal-inline b{color:#173f57;font-size:1rem;line-height:1.55}
.plan-page .plan-flow{gap:18px}.plan-page .lesson-step{gap:20px;padding:25px 27px;border-top:4px solid #2d86ab}.plan-page .lesson-step:nth-child(2){border-top-color:#8a65ad;border-left:0}.plan-page .lesson-step:nth-child(3){border-top-color:#37966f}.plan-page .lesson-step:nth-child(2) .step-number{background:#765296}.plan-page .lesson-step:nth-child(3) .step-number{background:#2f815f}
.plan-page .step-number{width:46px;height:46px;border-radius:13px;box-shadow:0 7px 17px rgba(25,77,104,.16)}.plan-page .step-body h2{margin:0 0 13px;color:#153f58;font-size:1.34rem;line-height:1.35}.plan-page .step-body h2 small{margin-top:3px;color:#7a8f9a;font-size:.76rem;font-weight:500;line-height:1.5}
.plan-page .teacher-script{margin:8px 0 0;padding:13px 15px;border-left:4px solid #56a0bd;border-radius:0 11px 11px 0;background:#f7fbfc;color:#17384c;font-size:1.04rem;font-weight:550;line-height:1.75;letter-spacing:.002em}.plan-page .lesson-step:nth-child(3)>.step-body>.teacher-script{border-left-color:#58a781;background:#f6fbf8}.plan-page .assessment>.teacher-script{border-left-color:#7d63a0;background:#faf8fc}
.plan-page .substep{margin-top:14px;padding:17px 19px;border-color:#d9e5ea;background:#fff}.plan-page .substep h3{margin:0 0 9px;color:#185776;font-size:1.08rem}.plan-page .substep h4{margin:15px 0 5px;color:#274e63;font-size:.94rem}.plan-page .substep>.teacher-script,.plan-page .peer-connect-block>.teacher-script{margin-top:6px}.plan-page .brew-substep{border-left:4px solid #3495b9}.plan-page .connect-substep{border-left:4px solid #8a65ad}.plan-page .apply-substep{border-left:4px solid #3d9a72;background:#fff}
.plan-page .step-explainer{margin:0 0 6px;color:#7a8e99;font-size:.82rem;font-weight:500;line-height:1.55}.plan-page .step-explainer span{white-space:nowrap}.plan-page .peer-connect-block{margin-top:11px;padding-top:2px;border-top:1px solid #e5ecef}
.plan-page .question-list{margin:8px 0 14px}.plan-page .question-list article{padding-top:13px!important;padding-bottom:12px!important}.plan-page .question-list article>div{align-items:baseline}.plan-page .question-list article>div>b{color:#294e62;font-size:.89rem;font-weight:800}.plan-page .question-list article>div>small{color:#82939c;font-size:.7rem;font-weight:500}.plan-page .question-list article>p,.plan-page .question-list article>.teacher-question{margin:5px 0 4px;color:#102f42;font-size:1.07rem;font-weight:650;line-height:1.72;letter-spacing:.002em}
.plan-page .tag-row{display:flex!important;justify-content:flex-start!important;align-items:center;gap:4px!important;margin-top:6px!important}.plan-page .tag-row:before{content:"ทักษะ";margin-right:1px;color:#91a0a7;font-size:.61rem;font-weight:700}.plan-page .tag-row>span{flex:0 0 auto;padding:2px 6px;border:1px solid #e2eaed;border-radius:6px;background:#f7fafb;color:#71858f;font-size:.64rem;font-weight:500;line-height:1.3;box-shadow:none}.plan-page .tag-row>span b{color:#5b7886;font-size:.62rem;font-weight:800}.plan-page .tag-row>span.self{border-color:#eee7f2;background:#fbf9fc;color:#897990}.plan-page .tag-row>span.self b{color:#786685}.plan-page .tag-row>span.sel{border-color:#e2eee7;background:#f8fbf9;color:#6f8779}.plan-page .tag-row>span.sel b{color:#5e7a69}
.plan-page .assessment{padding:22px 25px;border-top:4px solid #7d63a0}.plan-page .assessment .section-title{margin-bottom:8px}.plan-page .assessment .section-title h2{font-size:1.22rem}.plan-page .assessment .section-title p{color:#7d909a;font-size:.78rem}
@media(max-width:700px){.plan-page .lesson-step{gap:12px;padding:18px}.plan-page .step-number{width:40px;height:40px}.plan-page .step-body h2{font-size:1.2rem}.plan-page .teacher-script{padding:11px 12px;font-size:1rem;line-height:1.68}.plan-page .substep{padding:14px}.plan-page .question-list article>p,.plan-page .question-list article>.teacher-question{font-size:1rem}.plan-page .question-list article>div>small{display:block;margin-top:2px}.plan-page .tag-row>span{font-size:.62rem}}

/* Collapsible inline media previews */
.media-section.media-collapsible{overflow:hidden;padding:0}
.media-summary{display:grid;grid-template-columns:42px minmax(0,1fr) auto 26px;gap:12px;align-items:center;padding:18px 22px;cursor:pointer;list-style:none}.media-summary::-webkit-details-marker{display:none}.media-summary h2,.media-summary small{display:block;margin:0}.media-summary small{margin-top:2px;color:var(--muted);font-weight:500}.media-summary>b{display:grid;place-items:center;min-width:30px;height:30px;padding:0 8px;border-radius:999px;background:#e8f4f8;color:#1d6d8f;font-size:.78rem}.media-summary>i{color:#1c6c8d;font-size:1.35rem;font-style:normal;font-weight:900;transition:.18s}.media-collapsible[open] .media-summary>i{transform:rotate(45deg)}
.media-collapsible-body{padding:20px 22px 22px;border-top:1px solid var(--line);background:#f8fbfc}.media-collapsible .media-grid{grid-template-columns:1fr;gap:16px}.media-preview-card{overflow:hidden;border:1px solid #d3e2e8;border-radius:15px;background:#fff}.media-preview-card>header{display:flex;gap:10px;align-items:center;padding:11px 14px;border-bottom:1px solid #e2eaee}.media-preview-card>header>span{display:grid;place-items:center;min-width:38px;height:32px;padding:0 6px;border-radius:8px;background:#e5f3f8;color:#17688c;font-size:.72rem;font-weight:900}.media-preview-card>header b,.media-preview-card>header small{display:block}.media-preview-card>header small{color:var(--muted);font-size:.7rem}.media-frame,.media-image,.media-video{display:block;width:100%;border:0;background:#eef3f5}.video-frame{aspect-ratio:16/9}.document-frame{height:min(72vh,760px);min-height:520px}.media-image{max-height:720px;object-fit:contain}.media-video{max-height:680px}.media-audio{display:block;width:calc(100% - 28px);margin:18px 14px}.resource-link.compact{min-height:110px;margin:14px}
@media(max-width:600px){.media-summary{grid-template-columns:38px minmax(0,1fr) 24px;padding:15px}.media-summary>b{display:none}.media-collapsible-body{padding:12px}.document-frame{height:65vh;min-height:420px}.media-preview-card>header{padding:10px}}

/* Copy-to-adapt workflow and saved-plan popup */
.inline-copy-plan{margin:0}.copy-plan-button{border:1px solid #c9b9dc;background:#f7f2fb;color:#684985}.copy-plan-button:hover{background:#eee4f6;border-color:#ad8bc7}.save-plan-trigger.is-saved{border:1px solid #e7a8c1;background:#fce8f1;color:#99466b;box-shadow:0 5px 14px rgba(167,70,111,.12)}.save-plan-trigger.is-saved:hover{background:#f8dbe8}
.save-plan-dialog{width:min(520px,calc(100% - 30px));padding:0;border:0;border-radius:20px;background:#fff;color:var(--ink);box-shadow:0 24px 80px rgba(19,55,75,.28)}.save-plan-dialog::backdrop{background:rgba(15,43,58,.55);backdrop-filter:blur(3px)}.save-plan-dialog-head{display:grid;grid-template-columns:46px minmax(0,1fr) 34px;gap:12px;align-items:center;padding:21px 23px;background:linear-gradient(120deg,#fff1f6,#f7f0fb)}.save-plan-dialog-head>span{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#f9dce8;color:#a34870;font-size:1.35rem}.save-plan-dialog-head h2,.save-plan-dialog-head p{margin:0}.save-plan-dialog-head h2{color:#673d58;font-size:1.25rem}.save-plan-dialog-head p{margin-top:3px;color:#876f7d;font-size:.82rem}.save-plan-dialog-head>button{display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.8);color:#8a6176;font:700 1.3rem/1 sans-serif;cursor:pointer}.save-plan-dialog>form{display:grid;gap:13px;padding:20px 23px 23px}.save-plan-dialog label{font-weight:800}.save-plan-dialog label .field{margin-top:5px}.save-plan-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:3px}.save-confirm-button{border:0;background:#c35482;color:#fff}.save-confirm-button:hover{background:#aa426e}.saved-plan-state{display:grid;gap:2px;margin:17px 23px 0;padding:11px 13px;border:1px solid #f0bfd2;border-radius:12px;background:#fff5f8;color:#944366}.saved-plan-state small{color:#8c6c7b}
.existing-media-editor{display:grid;gap:8px;margin-top:15px;padding-top:14px;border-top:1px dashed #cbdde4}.existing-media-editor>div>b,.existing-media-editor>div>small{display:block}.existing-media-editor>div>small{color:var(--muted);font-size:.76rem}.existing-media-editor>label{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 12px;border:1px solid #d6e3e8;border-radius:11px;background:#fff}.existing-media-editor>label>a{display:flex;gap:9px;align-items:center;min-width:0}.existing-media-editor>label>a>span:first-child{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:9px;background:#e7f3f8;color:#17688c}.existing-media-editor>label>a b,.existing-media-editor>label>a small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.existing-media-editor>label>a small{color:var(--muted);font-size:.7rem}.remove-media-choice{display:flex;gap:6px;align-items:center;color:#9a4b4b;font-size:.78rem;font-weight:800;white-space:nowrap}.remove-media-choice input{width:17px;height:17px;accent-color:#b55252}
@media(max-width:700px){.save-plan-dialog-head{padding:17px}.save-plan-dialog>form{padding:17px}.saved-plan-state{margin:14px 17px 0}.save-plan-dialog-actions{display:grid;grid-template-columns:1fr 1fr}.existing-media-editor>label{grid-template-columns:1fr}.remove-media-choice{padding-top:8px;border-top:1px dashed #e1e8eb}}

/* One consistent confirmation modal across the system */
.system-confirm-dialog{width:min(500px,calc(100% - 30px));padding:0;overflow:hidden;border:0;border-radius:22px;background:#fff;color:var(--ink);box-shadow:0 28px 90px rgba(15,43,58,.34)}.system-confirm-dialog::backdrop{background:rgba(11,34,47,.58);backdrop-filter:blur(4px)}.system-confirm-head{display:grid;grid-template-columns:52px minmax(0,1fr) 34px;gap:14px;align-items:center;padding:23px 24px;background:linear-gradient(120deg,#eef8fb,#f4f9f6)}.system-confirm-head>span{display:grid;place-items:center;width:50px;height:50px;border-radius:16px;background:#dceff5;color:#176789;font-size:1.45rem;font-weight:900;box-shadow:inset 0 0 0 1px rgba(23,103,137,.08)}.system-confirm-head small,.system-confirm-head h2{display:block;margin:0}.system-confirm-head small{margin-bottom:2px;color:#6e8692;font-size:.72rem;font-weight:800}.system-confirm-head h2{color:#173f57;font-size:1.25rem;line-height:1.3}.system-confirm-head>button{display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.85);color:#607b89;font:700 1.3rem/1 sans-serif;cursor:pointer}.system-confirm-body{display:grid;gap:11px;padding:21px 24px 8px}.system-confirm-body>p{margin:0;color:#294d60;font-size:.98rem;line-height:1.7}.system-confirm-note{padding:10px 12px;border-left:4px solid #6fa7bb;border-radius:0 9px 9px 0;background:#f2f8fa;color:#607985;font-size:.78rem;line-height:1.55}.system-confirm-actions{display:flex;justify-content:flex-end;gap:9px;padding:18px 24px 23px}.system-confirm-submit{border:0;background:#176f8e;color:#fff}.system-confirm-submit:hover{background:#125d78}
.system-confirm-dialog[data-variant="copy"] .system-confirm-head{background:linear-gradient(120deg,#f3ecfa,#f8f4fb)}.system-confirm-dialog[data-variant="copy"] .system-confirm-head>span{background:#e9dcf4;color:#765096}.system-confirm-dialog[data-variant="copy"] .system-confirm-head h2{color:#5d3e73}.system-confirm-dialog[data-variant="copy"] .system-confirm-note{border-left-color:#9a79b5;background:#f8f4fb}.system-confirm-dialog[data-variant="copy"] .system-confirm-submit{background:#765096}.system-confirm-dialog[data-variant="copy"] .system-confirm-submit:hover{background:#62417e}
.system-confirm-dialog[data-variant="danger"] .system-confirm-head{background:linear-gradient(120deg,#fff0f0,#fff7f4)}.system-confirm-dialog[data-variant="danger"] .system-confirm-head>span{background:#f9dddd;color:#a74141}.system-confirm-dialog[data-variant="danger"] .system-confirm-head h2{color:#843b3b}.system-confirm-dialog[data-variant="danger"] .system-confirm-note{border-left-color:#d37a7a;background:#fff5f5;color:#8a5555}.system-confirm-dialog[data-variant="danger"] .system-confirm-submit{background:#b84b4b}.system-confirm-dialog[data-variant="danger"] .system-confirm-submit:hover{background:#9f3d3d}
@media(max-width:560px){.system-confirm-head{grid-template-columns:44px minmax(0,1fr) 30px;padding:18px}.system-confirm-head>span{width:42px;height:42px;border-radius:13px}.system-confirm-body{padding:18px 18px 6px}.system-confirm-actions{display:grid;grid-template-columns:1fr 1fr;padding:15px 18px 19px}.system-confirm-actions .button{width:100%}}

/* Dashboard: teacher-owned plans and saved plans share one readable row system */
.dashboard-count-badge{align-self:center;padding:7px 11px;border:1px solid #c7dce5;border-radius:999px;background:#f2f8fa;color:#28627d;font-size:.75rem;font-weight:900;white-space:nowrap}.dashboard-count-badge.saved-count{border-color:#dfd0e9;background:#f7f2fa;color:#74528e}.collection-rows-section .dashboard-plan-icon{background:#eee5f7;color:#765096}.collection-rows-section .dashboard-plan-main>small{color:#765f84}.collection-rows-section .dashboard-plan-row:hover{background:#faf7fc}
@media(max-width:600px){.dashboard-count-badge{margin-left:49px}.dashboard-section-head .dashboard-count-badge{width:auto}}

/* Editable offline lesson-plan template */
.template-download-button{border:1px solid #e2c77f;background:#fff8df;color:#795d19}.template-download-button:hover{border-color:#cba94e;background:#ffefbd;color:#624a10}

/* Friendly pre-teaching supervision: short notes, not an approval workflow */
.supervision-head{display:flex;justify-content:space-between;gap:24px;align-items:center;background:linear-gradient(120deg,#f4fbf7,#f0f8fc)}.supervision-head>span{padding:8px 12px;border:1px solid #bfe1ce;border-radius:999px;background:#fff;color:#287653;font-size:.78rem;font-weight:900;white-space:nowrap}
.supervision-board{margin-top:18px;padding:22px;border-top:5px solid #3c9b73}.supervision-search{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:9px;align-items:end;margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--line)}.supervision-search label{font-weight:800}.supervision-search .field{margin-top:5px}
.supervision-plan-list{display:grid;gap:11px}.supervision-plan-row{display:grid;grid-template-columns:46px minmax(0,1fr) 130px 175px;gap:14px;align-items:start;padding:16px;border:1px solid #d8e5e9;border-radius:15px;background:#fff;transition:.16s}.supervision-plan-row:hover{border-color:#aacfd0;box-shadow:0 9px 22px rgba(27,72,83,.07)}.supervision-plan-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#e2f3f8;color:#187493;font-weight:900}.supervision-plan-main h2,.supervision-plan-main p{margin:0}.supervision-plan-main h2{font-size:1.03rem}.supervision-plan-main>p{margin-top:3px;color:#617b89;font-size:.83rem}.supervision-plan-main>small{display:block;margin-top:5px;color:#82949c;font-size:.72rem}.supervision-plan-main blockquote{margin:10px 0 0;padding:9px 11px;border-left:4px solid #55a57d;border-radius:0 9px 9px 0;background:#f3faf6}.supervision-plan-main blockquote b,.supervision-plan-main blockquote p,.supervision-plan-main blockquote small{display:block;margin:0}.supervision-plan-main blockquote b{color:#2d7655;font-size:.75rem}.supervision-plan-main blockquote p{margin:3px 0;color:#385c4a;font-size:.82rem;line-height:1.55}.supervision-plan-main blockquote small{color:#769081;font-size:.68rem}.supervision-plan-meta{display:grid;gap:4px}.supervision-plan-meta b{font-size:1rem}.supervision-plan-meta span,.supervision-plan-meta small{color:#6f858f;font-size:.73rem}.supervision-plan-actions{display:grid;gap:7px}.supervision-plan-actions>.button,.supervision-plan-actions summary{width:100%;text-align:center}.supervision-plan-actions details{position:relative}.supervision-plan-actions summary{list-style:none}.supervision-plan-actions summary::-webkit-details-marker{display:none}.supervision-plan-actions details form{position:absolute;z-index:15;right:0;top:calc(100% + 6px);width:min(370px,80vw);padding:13px;border:1px solid #c7ded1;border-radius:13px;background:#fff;box-shadow:0 16px 38px rgba(25,64,48,.18)}.supervision-plan-actions textarea,.supervision-note-form textarea{width:100%;padding:10px 12px;border:1px solid #cbdde4;border-radius:10px;background:#fff;color:var(--ink);font:inherit;resize:vertical}.supervision-plan-actions details form .button{width:100%;margin-top:7px}
.supervision-note-button{border:1px solid #a9d7bd;background:#edf9f2;color:#287653}.supervision-note-button:hover{border-color:#7cbd99;background:#dff3e7;color:#1d6243}.supervision-note-section{padding:22px;border-top:5px solid #3b9970;background:linear-gradient(120deg,#fff,#f6fcf8)}.supervision-note-section .section-title{align-items:center}.friendly-supervision-badge{margin-left:auto;padding:6px 10px;border:1px solid #bde0ca;border-radius:999px;background:#fff;color:#2b7856;font-size:.72rem;font-weight:900}.supervision-note-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin-top:16px;padding:15px;border-radius:14px;background:#edf8f2}.supervision-note-form label{font-weight:800}.supervision-note-form textarea{display:block;margin-top:5px}.supervision-note-form>.button{margin-bottom:1px}.supervision-note-feed{display:grid;gap:10px;margin-top:17px;padding-top:16px;border-top:1px dashed #c6dcd0}.supervision-note-feed article{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px}.supervision-note-feed article>span{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#dff2e7;color:#2c7755;font-weight:900}.supervision-note-feed b,.supervision-note-feed p,.supervision-note-feed time{display:block;margin:0}.supervision-note-feed b{font-size:.86rem}.supervision-note-feed b small{margin-left:5px;color:#778c81;font-weight:500}.supervision-note-feed p{margin:3px 0;color:#294e3b;line-height:1.65}.supervision-note-feed time{color:#84968d;font-size:.7rem}.supervision-note-empty{margin:15px 0 0;padding:12px;border:1px dashed #c7ddd1;border-radius:11px;color:#71867a;text-align:center}
@media(max-width:900px){.supervision-plan-row{grid-template-columns:42px minmax(0,1fr) 120px}.supervision-plan-actions{grid-column:2/-1;grid-template-columns:1fr 1fr}.supervision-note-form{grid-template-columns:1fr}.supervision-note-form>.button{width:100%}}
@media(max-width:650px){.supervision-head{align-items:flex-start;flex-direction:column}.supervision-search{grid-template-columns:1fr}.supervision-search .button{width:100%}.supervision-plan-row{grid-template-columns:38px minmax(0,1fr)}.supervision-plan-meta{grid-column:2}.supervision-plan-actions{grid-column:1/-1}.supervision-plan-actions details form{position:static;width:100%;margin-top:7px;box-shadow:none}.friendly-supervision-badge{display:none}.supervision-note-section{padding:17px}.supervision-note-section .section-title{align-items:flex-start}}

/* Collapsible Short Note lists with focused add-note dialogs */
.short-note-section,.short-note-section.supervision-note-section{margin-top:16px;padding:0;overflow:hidden;border-top:0;background:#fff}.short-note-layout{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start}.short-note-details{min-width:0}.short-note-details>summary{display:grid;grid-template-columns:42px minmax(0,1fr) auto 28px;gap:12px;align-items:center;padding:16px 18px;cursor:pointer;list-style:none}.short-note-details>summary::-webkit-details-marker{display:none}.short-note-details>summary:hover{background:#f8fbfc}.short-note-details[open]>summary{border-bottom:1px solid var(--line);background:#f8fbfc}.short-note-details>summary i{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#edf3f5;color:#58717e;font-style:normal;font-weight:900;transition:transform .18s}.short-note-details[open]>summary i{transform:rotate(45deg)}.short-note-title h2,.short-note-title small{display:block;margin:0}.short-note-title h2{font-size:1rem}.short-note-title small{margin-top:2px;color:var(--muted);font-size:.73rem}.short-note-count{display:grid;place-items:center;min-width:28px;height:28px;padding:0 8px;border-radius:999px;background:#e9f3f7;color:#23627e;font-size:.75rem;font-weight:900}.supervision-note-section .short-note-count{background:#e7f5ed;color:#2d7655}.short-note-add{margin:15px 18px 0 12px;white-space:nowrap}.short-note-body{padding:0 18px 18px}.short-note-body .supervision-note-feed,.short-note-body .notes-feed{margin:0;padding-top:16px}.short-note-body .supervision-note-feed{border-top:0}.short-note-empty{margin:16px 0 0;padding:12px;border:1px dashed #cbdde4;border-radius:11px;color:var(--muted);text-align:center}
.short-note-dialog{width:min(590px,calc(100% - 30px));padding:0;overflow:hidden;border:0;border-radius:22px;background:#fff;color:var(--ink);box-shadow:0 28px 90px rgba(15,43,58,.34)}.short-note-dialog::backdrop{background:rgba(11,34,47,.58);backdrop-filter:blur(4px)}.short-note-dialog-head{display:grid;grid-template-columns:48px minmax(0,1fr) 34px;gap:13px;align-items:center;padding:21px 23px;background:linear-gradient(120deg,#eef8fb,#f5fafc)}.supervision-dialog .short-note-dialog-head{background:linear-gradient(120deg,#edf8f2,#f7fcf9)}.short-note-dialog-head>span{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#dceff5;color:#176789;font-size:1.3rem;font-weight:900}.supervision-dialog .short-note-dialog-head>span{background:#dff2e7;color:#2c7755}.short-note-dialog-head small,.short-note-dialog-head h2{display:block;margin:0}.short-note-dialog-head small{margin-bottom:2px;color:#728793;font-size:.72rem;font-weight:800}.short-note-dialog-head h2{color:#173f57;font-size:1.2rem}.supervision-dialog .short-note-dialog-head h2{color:#285f47}.short-note-dialog-head>button{display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.85);color:#607b89;font:700 1.3rem/1 sans-serif;cursor:pointer}.short-note-dialog>form{display:grid;gap:15px;padding:21px 23px 23px}.short-note-dialog label{font-weight:800}.short-note-dialog textarea{display:block;width:100%;margin-top:5px;padding:11px 12px;border:1px solid #cbdde4;border-radius:11px;background:#fff;color:var(--ink);font:inherit;resize:vertical}.short-note-dialog-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.short-note-dialog-grid .wide{grid-column:1/-1}.short-note-dialog-actions{display:flex;justify-content:flex-end;gap:9px}.short-note-dialog-actions .button{min-width:120px}
@media(max-width:650px){.short-note-layout{grid-template-columns:1fr}.short-note-details>summary{grid-template-columns:38px minmax(0,1fr) auto 26px;padding:14px}.short-note-add{width:calc(100% - 28px);margin:0 14px 14px}.short-note-body{padding:0 14px 14px}.short-note-dialog-head{grid-template-columns:43px minmax(0,1fr) 30px;padding:17px}.short-note-dialog-head>span{width:41px;height:41px}.short-note-dialog>form{padding:17px}.short-note-dialog-grid{grid-template-columns:1fr}.short-note-dialog-grid .wide{grid-column:auto}.short-note-dialog-actions{display:grid;grid-template-columns:1fr 1fr}.short-note-dialog-actions .button{min-width:0;width:100%}}

/* Jitsuksa media library board */
.media-library-hero{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:22px;align-items:center;padding:25px 27px;border-top:5px solid #258caf;background:linear-gradient(120deg,#f8fdff,#edf8fb 62%,#eff8f3)}.media-library-hero h1{margin:2px 0 5px;font-size:clamp(1.7rem,3vw,2.25rem)}.media-library-hero p{margin:0;color:var(--muted)}.media-library-stats{display:flex;gap:7px}.media-library-stats span{display:grid;min-width:84px;padding:9px 11px;border:1px solid #d2e3ea;border-radius:12px;background:#fff;color:var(--muted);font-size:.7rem;text-align:center}.media-library-stats b{color:#176486;font-size:1.15rem}.media-library-filter{display:grid;grid-template-columns:minmax(240px,1fr) 190px auto auto;gap:10px;align-items:end;margin-top:16px;padding:17px 19px}.media-library-filter .field{margin-top:4px}.media-board{margin-top:16px;overflow:hidden;border-radius:15px}.media-board-columns,.media-board-row{display:grid;grid-template-columns:minmax(0,1fr) 145px 90px 190px;align-items:center}.media-board-columns{padding:9px 15px;background:linear-gradient(110deg,#176b91,#258c82);color:#fff;font-size:.76rem;font-weight:900}.media-board-columns span:not(:first-child){text-align:center}.media-board-row{min-height:92px;padding:11px 15px;border-bottom:1px solid #cfdee5;background:#f8fbfc}.media-board-row:nth-child(odd){background:#eef5f8}.media-board-row:last-child{border-bottom:0}.media-board-row:hover{background:#fff}.media-board-topic{display:flex;align-items:center;gap:12px;min-width:0;padding-right:15px}.media-board-topic>img,.media-board-icon{width:54px;height:54px;flex:0 0 54px;border-radius:12px}.media-board-topic>img{object-fit:cover}.media-board-icon{display:grid;place-items:center;border:1px solid #a9cad8;background:#fff;color:#176486;font-size:1.45rem}.media-board-topic>span:last-child{min-width:0}.media-board-topic b,.media-board-topic small,.media-board-topic em{display:block}.media-board-topic b{color:#124d70;font-size:.94rem}.media-board-topic small{margin-top:2px;color:#6b818d;font-size:.7rem}.media-board-topic em{margin-top:3px;overflow:hidden;color:#526d7c;font-size:.72rem;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.media-kind{display:inline-flex;justify-self:center;padding:5px 9px;border-radius:999px;background:#e6f2f7;color:#246783;font-size:.72rem;font-weight:900;white-space:nowrap}.media-kind.knowledge{background:#e4f5eb;color:#287856}.media-views,.media-latest{display:grid;text-align:center}.media-views b{color:#176486;font-size:1.05rem}.media-views small,.media-latest small{color:var(--muted);font-size:.68rem}.media-latest b{font-size:.78rem}.media-board-empty{margin:18px}.media-detail-page{display:grid;gap:16px}.media-detail-top{display:flex;justify-content:space-between;align-items:center}.media-detail-actions{display:flex;gap:8px}.media-detail-actions form{margin:0}.danger-button{border-color:#e0b4b4;background:#fff3f3;color:#a13d3d}.media-detail-head{padding:27px;border-top:5px solid #258caf}.media-detail-head .media-kind{justify-self:start}.media-detail-head h1{margin:12px 0 8px;font-size:clamp(1.65rem,3.4vw,2.45rem)}.media-detail-meta{display:flex;flex-wrap:wrap;gap:8px 18px;color:var(--muted);font-size:.8rem}.media-detail-image{padding:14px;text-align:center}.media-detail-image img{display:block;max-width:100%;max-height:72vh;margin:auto;border-radius:12px;object-fit:contain}.media-detail-description{padding:23px}.media-detail-description h2{margin-bottom:8px}.media-detail-description p{margin:0;white-space:normal}.media-detail-link{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 22px;border-left:5px solid #2f8a68}.media-detail-link>div{display:flex;align-items:center;gap:13px;min-width:0}.media-detail-link>div>span{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:12px;background:#e3f4eb;color:#287856;font-size:1.2rem}.media-detail-link h2,.media-detail-link p{margin:0}.media-detail-link p{max-width:720px;overflow:hidden;color:var(--muted);font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.media-form-head{padding:22px;border-radius:16px;background:linear-gradient(120deg,#eaf7fc,#f0f8f4)}.media-library-form{padding:24px;border-top:5px solid #258caf}.media-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.media-form-grid .wide{grid-column:1/-1}.media-form-grid em{color:#c34848}.media-form-preview{display:inline-grid;gap:5px;margin-top:16px;padding:8px;border:1px solid var(--line);border-radius:12px;background:#f8fbfc}.media-form-preview img{width:min(260px,100%);max-height:180px;border-radius:8px;object-fit:cover}.media-form-preview span{color:var(--muted);font-size:.72rem}.media-form-note{margin:17px 0 0;padding:10px 12px;border-radius:10px;background:#fff8e5;color:#74591c;font-size:.8rem}
@media(max-width:900px){.media-library-hero{grid-template-columns:1fr}.media-library-stats{flex-wrap:wrap}.media-library-hero>.button{width:max-content}.media-board-columns,.media-board-row{grid-template-columns:minmax(0,1fr) 120px 70px}.media-board-columns span:last-child{display:none}.media-board-row>.media-latest{display:none}.media-library-filter{grid-template-columns:1fr 180px}.media-library-filter .button{width:100%}}
@media(max-width:650px){.media-library-filter,.media-form-grid{grid-template-columns:1fr}.media-form-grid .wide{grid-column:auto}.media-board-columns{display:none}.media-board-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.media-board-row>.media-kind{align-self:start}.media-board-row>.media-views{grid-column:2}.media-board-topic{grid-row:1/3;padding-right:0}.media-board-topic>img,.media-board-icon{width:46px;height:46px;flex-basis:46px}.media-detail-top,.media-detail-link{align-items:stretch;flex-direction:column}.media-detail-actions{display:grid;grid-template-columns:1fr 1fr}.media-detail-actions .button{width:100%}.media-detail-link>.button{width:100%}.media-library-hero{padding:20px}.media-library-stats span{min-width:74px}}
.media-form-preview label{display:flex;align-items:center;gap:6px;padding:6px 3px 2px;color:#9b4141;font-size:.75rem;font-weight:800}

/* School Jitsuksa identity mark */
.brand-mark{display:block;width:48px;height:48px;flex:0 0 48px;overflow:visible;border-radius:0;background:transparent;box-shadow:none}.brand-mark img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 5px 7px rgba(13,89,151,.2))}

/* Compact lesson-plan heading */
.plan-page .plan-hero{padding:17px 22px}.plan-page .plan-heading{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:7px;align-items:center;max-width:none}.plan-page .plan-heading>h1{margin:0 0 0 7px;font-size:clamp(1.55rem,3vw,2.2rem);line-height:1.2}.plan-page .plan-goal-inline{grid-column:1/-1;display:flex;align-items:flex-start;gap:10px;max-width:none;margin:4px 0 0;padding:8px 12px}.plan-page .plan-goal-inline small{flex:0 0 auto;padding-top:2px;white-space:nowrap}.plan-page .plan-goal-inline b{margin:0;font-size:.94rem;line-height:1.45}.plan-page .plan-heading>p{grid-column:1/-1;margin:0!important}.plan-page .behavior-tag-display{grid-column:1/-1;margin-top:1px;gap:5px}.plan-page .behavior-tag-display small{width:auto;margin-right:3px;white-space:nowrap}.plan-page .behavior-tag-display span{padding:3px 8px;font-size:.75rem}.plan-page .plan-creator{grid-column:1/-1;margin-top:0;font-size:.74rem}
@media(max-width:600px){.plan-page .plan-hero{padding:15px 16px}.plan-page .plan-heading>h1{grid-column:1/-1;margin:2px 0 0}.plan-page .plan-goal-inline{gap:7px}.plan-page .behavior-tag-display{align-items:flex-start}}

/* Keep each question's thinking lens beside its label */
.plan-page .question-list article>div{display:flex;justify-content:flex-start;align-items:baseline;gap:6px;flex-wrap:wrap}.plan-page .question-list article>div small,.question-editor-list label>small{margin-left:0}.plan-page .question-list article>div small:before,.question-editor-list label>small:before{content:"("}.plan-page .question-list article>div small:after,.question-editor-list label>small:after{content:")"}

/* Keep step purposes beside their headings */
.plan-page .apply-substep h3{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.plan-page .apply-substep h3 small,.activity-editor.apply>h3 small,.activity-editor.close>h3 small{color:#758a95;font-size:.72rem;font-weight:500;line-height:1.45}.activity-editor.apply>h3,.activity-editor.close>h3{flex-wrap:wrap}.plan-page .lesson-step:nth-child(3) .step-body h2 small{display:inline;margin:0 0 0 5px}.plan-page .lesson-step:nth-child(3) .step-body h2 small:before{content:"("}.plan-page .lesson-step:nth-child(3) .step-body h2 small:after{content:")"}.plan-page .assessment .section-title>div{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.plan-page .assessment .section-title p{font-size:.78rem}.plan-page .assessment .section-title p:before{content:"("}.plan-page .assessment .section-title p:after{content:")"}

/* Plan heading metadata and higher-contrast reading boxes */
.plan-page .plan-heading{grid-template-columns:minmax(0,1fr) auto auto}.plan-page .plan-heading>h1{grid-column:auto;margin:0 8px 0 0}.plan-context-line{grid-column:1/-1;display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:1px;color:#6d8491;font-size:.82rem}.plan-story-context{white-space:nowrap}.plan-context-divider{color:#2e91b6;font-size:.62rem}.plan-context-line .behavior-tag-display{display:flex;min-width:0;margin:0;gap:5px}.plan-context-line .behavior-tag-display small{margin-right:2px}.plan-page .plan-creator{margin-top:1px}.plan-page .teacher-script,.plan-page .lesson-step:nth-child(3)>.step-body>.teacher-script,.plan-page .assessment>.teacher-script{border-left-color:#dfa93c;background:#fff8df;box-shadow:inset 0 0 0 1px #f1e1aa;color:#2f3e45}
@media(max-width:600px){.plan-page .plan-heading{grid-template-columns:minmax(0,1fr) auto auto}.plan-page .plan-heading>h1{grid-column:auto;margin-right:4px;font-size:1.45rem}.plan-page .grade-chip,.plan-page .time-chip{padding:3px 6px;font-size:.68rem}.plan-story-context{white-space:normal}.plan-context-line{align-items:flex-start}.plan-context-divider{margin-top:5px}}

/* Softer stage colors and boxed self-connection questions */
.plan-page .lesson-step:nth-child(1) .step-body h2 small,.plan-page .lesson-step:nth-child(2) .step-body h2 small{display:inline;margin:0 0 0 5px}.plan-page .lesson-step:nth-child(1) .step-body h2 small:before,.plan-page .lesson-step:nth-child(2) .step-body h2 small:before{content:"("}.plan-page .lesson-step:nth-child(1) .step-body h2 small:after,.plan-page .lesson-step:nth-child(2) .step-body h2 small:after{content:")"}.activity-editor.prepare>h3,.activity-editor.featured>h3{flex-wrap:wrap}.activity-editor.prepare>h3 small,.activity-editor.featured>h3 small{color:#758a95;font-size:.72rem;font-weight:500;line-height:1.45}
.plan-page .lesson-step:nth-child(1)>.step-body>.teacher-script{border-left-color:#72b2cf;background:#f3fafe;box-shadow:inset 0 0 0 1px #d5eaf3}.plan-page .lesson-step:nth-child(2) .teacher-script{border-left-color:#d68ba9;background:#fff5f8;box-shadow:inset 0 0 0 1px #f0d9e2}.plan-page .lesson-step:nth-child(3)>.step-body>.teacher-script{border-left-color:#75ad8e;background:#f3faf6;box-shadow:inset 0 0 0 1px #d6eadf}.plan-page .assessment>.teacher-script{border-left-color:#9b7ab7;background:#faf6fd;box-shadow:inset 0 0 0 1px #e6dcec}
.plan-page .question-list article{margin:5px 0!important;padding:13px 14px 12px 48px!important;border:1px solid #cfe4ef!important;border-left:4px solid #67a9c7!important;border-radius:12px!important;background:#f4faff!important;box-shadow:0 4px 11px rgba(31,87,113,.04)!important}.plan-page .question-list article:nth-child(2){border-color:#e5d4ec!important;border-left-color:#9a76b4!important;background:#fcf7fe!important}.plan-page .question-list article:nth-child(3){border-color:#efdfb8!important;border-left-color:#d1a14a!important;background:#fffbf1!important}.plan-page .question-list article:nth-child(4){border-color:#d0e6d8!important;border-left-color:#65a77e!important;background:#f4fbf6!important}

/* Unified pale-yellow activity boxes; color only the question text in 2.2.1 */
.plan-page .lesson-step:nth-child(1)>.step-body>.teacher-script,.plan-page .lesson-step:nth-child(2) .teacher-script{border-left-color:#d8bf82;background:#fffdfa;box-shadow:inset 0 0 0 1px #eee5d1}.plan-page .lesson-step:nth-child(3)>.step-body>.teacher-script{border-left-color:#58a781;background:#f6fbf8;box-shadow:none}.plan-page .assessment>.teacher-script{border-left-color:#7d63a0;background:#faf8fc;box-shadow:none}
.plan-page .question-list article,.plan-page .question-list article:nth-child(2),.plan-page .question-list article:nth-child(3),.plan-page .question-list article:nth-child(4){margin:0!important;padding:13px 0 12px 48px!important;border:0!important;border-bottom:1px dashed var(--line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.plan-page .question-list article>.teacher-question{margin:6px 0!important;padding:9px 12px!important;border:1px solid #eee5d1;border-left:4px solid #d8bf82;border-radius:9px;background:#fffdfa}

/* Balanced warm highlight and clearer skill badges */
.plan-page .lesson-step:nth-child(1)>.step-body>.teacher-script,.plan-page .lesson-step:nth-child(2) .teacher-script{border-left-color:#d5ad58;background:#fff9e9;box-shadow:inset 0 0 0 1px #eddcb3}.plan-page .question-list article>.teacher-question{border-color:#eddcb3;border-left-color:#d5ad58;background:#fff9e9}
.plan-page .tag-row{gap:5px!important}.plan-page .tag-row:before{color:#6d7f88;font-size:.67rem;font-weight:800}.plan-page .tag-row>span{padding:3px 7px;border-color:#cfe2ea;background:#edf6fa;color:#46697a;font-size:.68rem;font-weight:650;box-shadow:0 1px 2px rgba(32,80,101,.05)}.plan-page .tag-row>span b{color:#2e6078;font-size:.67rem}.plan-page .tag-row>span.self{border-color:#e1d2e9;background:#f6f0f9;color:#705780}.plan-page .tag-row>span.self b{color:#684b78}.plan-page .tag-row>span.sel{border-color:#cee5d7;background:#eef8f2;color:#49725c}.plan-page .tag-row>span.sel b{color:#35694d}

/* Display every selected plan goal on its own row */
.plan-goal-list{display:grid;flex:1;gap:2px;min-width:0}.plan-page .plan-goal-list b{position:relative;display:block;margin:0;padding:3px 0 3px 16px;border-bottom:1px dashed #cfe1e8}.plan-page .plan-goal-list b:last-child{border-bottom:0}.plan-page .plan-goal-list b:before{content:"•";position:absolute;left:2px;top:2px;color:#2e91b6;font-size:1rem}

/* Skill badges reduced roughly 30% in visual emphasis */
.plan-page .tag-row:before{color:#89979e;font-size:.63rem;font-weight:700}.plan-page .tag-row>span{padding:2px 6px;border-color:#dce9ee;background:#f5f9fb;color:#687f8a;font-size:.64rem;font-weight:600;box-shadow:none}.plan-page .tag-row>span b{color:#587482;font-size:.63rem}.plan-page .tag-row>span.self{border-color:#eadff0;background:#faf7fb;color:#806e88}.plan-page .tag-row>span.self b{color:#76647f}.plan-page .tag-row>span.sel{border-color:#dcebe2;background:#f7faf8;color:#657a6c}.plan-page .tag-row>span.sel b{color:#5c7464}

/* Purple plan title with a leading visual marker */
.plan-page .plan-hero h1{display:flex;align-items:center;gap:9px;color:#6f4f92}.plan-title-icon{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:9px;background:#eee5f6;color:#76529a;font-size:.9rem;box-shadow:inset 0 0 0 1px #ded0e9}

/* Copy a Facebook-ready plain-text version of the plan */
.share-plan-button{border-color:#b9d7e4;background:#f1f8fb;color:#22647f}.share-plan-button:hover{border-color:#82b6ca;background:#e5f3f8}.share-plan-button.is-copied{border-color:#9bcdb0;background:#eaf7ef;color:#287653}.share-plan-button.copy-failed{border-color:#e0b4b4;background:#fff3f3;color:#a13d3d}

/* Compact category rows and type-to-search */
.category-quick-row{grid-template-columns:minmax(0,1fr) auto}.topic-row{min-height:78px;padding:9px 16px}.topic-main p{margin:1px 0}.topic-frameworks{margin-top:3px}.topic-updated{padding-left:12px}

/* Quick search integrated into the category result heading */
.category-results-head{align-items:flex-end;gap:22px;padding:0 2px}.category-results-head .results-heading{min-width:0}.category-inline-search{display:grid;grid-template-columns:30px minmax(190px,330px) 30px;align-items:center;width:min(410px,100%);min-height:44px;padding:0 7px;border:1px solid #c8dce5;border-radius:13px;background:#fff;box-shadow:0 7px 18px rgba(25,70,92,.07);transition:border-color .16s,box-shadow .16s}.category-inline-search:focus-within{border-color:#9474b1;box-shadow:0 0 0 3px rgba(138,102,166,.12),0 8px 20px rgba(25,70,92,.08)}.category-inline-search-icon{display:grid;place-items:center;color:#76529a;font-size:1.05rem;font-weight:900}.category-inline-search input{width:100%;min-width:0;padding:9px 5px;border:0;background:transparent;outline:0;color:var(--ink)}.category-inline-search input::placeholder{color:#82939d}.category-inline-clear{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;color:#78909d;font-size:1.15rem;font-weight:700;line-height:1}.category-inline-clear:hover{background:#f0eaf5;color:#6f4f92}
@media(max-width:700px){.category-results-head{align-items:stretch;flex-direction:column;gap:10px}.category-inline-search{width:100%;grid-template-columns:30px minmax(0,1fr) 30px}}

/* School-wide teacher tracking and friendly supervision */
.supervision-stat-grid{grid-template-columns:repeat(4,1fr)}.supervision-stat-grid .needs-attention{border-color:#ead5a8;background:#fffaf0}.supervision-stat-grid .needs-attention>span{background:#fff0cb;color:#9a6818}
.supervision-teachers{margin-top:18px;padding:22px;border-top:5px solid #7f62a3}.supervision-section-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:15px}.supervision-section-head h2,.supervision-section-head p{margin:0}.supervision-section-head>small{padding:6px 10px;border-radius:999px;background:#f2edf7;color:#70518f;font-weight:800;white-space:nowrap}.supervision-teacher-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.supervision-teacher-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:11px;align-items:center;padding:12px 13px;border:1px solid #d7e3e9;border-radius:13px;background:#fbfdfe;transition:.16s}.supervision-teacher-card:hover{border-color:#ae96c3;background:#fcf9fe;box-shadow:0 8px 20px rgba(70,48,91,.08);transform:translateY(-1px)}.supervision-teacher-card.active{border-color:#8161a2;background:#f7f1fa;box-shadow:0 0 0 3px rgba(127,98,163,.1)}.teacher-avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:linear-gradient(145deg,#e6f4f8,#eee6f5);color:#5d4b78;font-weight:900}.teacher-card-main{min-width:0}.teacher-card-main b,.teacher-card-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teacher-card-main b{font-size:.91rem}.teacher-card-main small{color:#718690;font-size:.69rem}.teacher-card-numbers{display:flex;gap:5px}.teacher-card-numbers>span{display:grid;min-width:48px;padding:5px 6px;border-radius:9px;background:#eef5f7;text-align:center}.teacher-card-numbers b,.teacher-card-numbers small{display:block}.teacher-card-numbers b{font-size:.86rem}.teacher-card-numbers small{color:#738791;font-size:.6rem}.teacher-card-numbers .waiting{background:#fff2d5;color:#936216}.teacher-card-numbers .complete{background:#e8f6ee;color:#287653}
.supervision-board{border-top-color:#348bb0}.supervision-list-head h2 span{margin-left:5px;color:#748995;font-size:.78rem;font-weight:700}.supervision-legend{display:flex;flex-wrap:wrap;gap:7px}.supervision-legend span,.review-state{padding:4px 8px;border-radius:999px;font-size:.68rem;font-weight:900;white-space:nowrap}.supervision-legend .waiting,.review-state.waiting{background:#fff0cf;color:#946316}.supervision-legend .reviewed,.review-state.reviewed{background:#e7f5ed;color:#287653}
.supervision-search{grid-template-columns:minmax(220px,1.6fr) repeat(4,minmax(112px,.62fr)) auto auto}.supervision-search label{min-width:0}.supervision-search select.field{padding-right:30px}.supervision-search .button{white-space:nowrap}
.supervision-plan-row{grid-template-columns:46px minmax(0,1fr) 180px 175px;gap:13px;padding:14px 15px}.supervision-plan-row.is-waiting{border-left:4px solid #dfad4e}.supervision-plan-row.is-reviewed{border-left:4px solid #58a57d}.supervision-plan-title{display:flex;align-items:center;gap:8px;min-width:0}.supervision-plan-title h3{min-width:0;margin:0;font-size:1rem}.supervision-plan-title h3 a{color:#14547a}.supervision-plan-title h3 a:hover{text-decoration:underline}.supervision-plan-byline{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:5px;color:#758a95;font-size:.7rem}.supervision-plan-byline b{color:#365e73}.supervision-plan-byline i{color:#a6b5bd;font-style:normal}.supervision-plan-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;align-content:start}.supervision-plan-progress>span{display:grid;padding:6px 4px;border-radius:9px;background:#f1f6f8;text-align:center}.supervision-plan-progress b,.supervision-plan-progress small{display:block}.supervision-plan-progress b{font-size:.88rem}.supervision-plan-progress small{color:#718690;font-size:.61rem}.supervision-plan-progress .grade{background:#eaf4f8;color:#225f7a}.supervision-plan-progress .plan-status,.supervision-plan-progress .last-taught{grid-column:1/-1;text-align:center}.supervision-plan-progress .plan-status{margin-top:2px;padding:4px 7px;border-radius:7px;background:#eef3f5;color:#627b88;font-weight:800}.supervision-plan-progress .plan-status.published{background:#e8f6ee;color:#287653}.supervision-plan-progress .plan-status.draft{background:#fff2d8;color:#8f621d}.supervision-plan-progress .last-taught{color:#718690}.supervision-plan-main blockquote{max-width:720px}.supervision-plan-main blockquote p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.supervision-plan-actions .button{min-height:40px;padding:7px 10px;font-size:.78rem}
@media(max-width:1050px){.supervision-stat-grid{grid-template-columns:repeat(2,1fr)}.supervision-search{grid-template-columns:repeat(2,minmax(0,1fr))}.supervision-search-keyword{grid-column:1/-1}.supervision-plan-row{grid-template-columns:42px minmax(0,1fr) 175px}.supervision-plan-actions{grid-column:2/-1;grid-template-columns:1fr 1fr}.supervision-plan-actions details form{right:0}}
@media(max-width:720px){.supervision-teacher-grid{grid-template-columns:1fr}.supervision-section-head{align-items:flex-start;flex-direction:column}.supervision-section-head>small{white-space:normal}.supervision-search{grid-template-columns:1fr}.supervision-search-keyword{grid-column:auto}.supervision-plan-row{grid-template-columns:38px minmax(0,1fr)}.supervision-plan-progress{grid-column:2}.supervision-plan-actions{grid-column:1/-1}.supervision-plan-title{align-items:flex-start;flex-direction:column;gap:5px}.supervision-legend{width:100%}}
@media(max-width:520px){.supervision-stat-grid{grid-template-columns:1fr 1fr}.supervision-stat-grid article{padding:12px}.supervision-stat-grid article>span{width:36px;height:36px}.supervision-teacher-card{grid-template-columns:40px minmax(0,1fr)}.teacher-card-numbers{grid-column:1/-1}.teacher-card-numbers>span{flex:1}.supervision-teachers,.supervision-board{padding:16px}.supervision-plan-actions{grid-template-columns:1fr}}

/* Owner links and authenticated creator catalogue */
.topic-owner-link{color:#14547a;font-weight:900;text-decoration:underline;text-decoration-color:#9fc4d5;text-underline-offset:2px}.topic-owner-link:hover{color:#0d709b;text-decoration-color:currentColor}
.creator-plans-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:center;padding:24px;border-top:5px solid #268cb0;background:linear-gradient(120deg,#fff,#f0f9fc 62%,#f3eef8)}.creator-plans-head h1,.creator-plans-head p{margin:0}.creator-plans-head>div:nth-child(2)>p:not(.kicker),.creator-plans-head>div:nth-child(2)>small{color:var(--muted)}.creator-plans-avatar{display:grid;place-items:center;width:76px;height:76px;overflow:hidden;border-radius:21px;background:linear-gradient(145deg,#dff3fb,#eee5f7);color:#176486;font-size:1.7rem;font-weight:900}.creator-plans-avatar img{width:100%;height:100%;object-fit:cover}.creator-plans-summary{display:grid;min-width:170px;padding:13px 17px;border:1px solid #cbdfe7;border-radius:14px;background:rgba(255,255,255,.84);text-align:center}.creator-plans-summary b{color:#176486;font-size:1.65rem}.creator-plans-summary span{font-size:.78rem;font-weight:900}.creator-plans-summary small{color:var(--muted)}.creator-plans-list{margin-top:16px}.creator-plans-list .section-title{padding:22px 22px 0}.creator-plans-list .section-title .button{margin-left:auto}.creator-plans-list .dashboard-plan-list{padding:0 22px 22px}
@media(max-width:700px){.creator-plans-head{grid-template-columns:auto 1fr}.creator-plans-summary{grid-column:1/-1}.creator-plans-list .section-title{align-items:flex-start;flex-wrap:wrap}.creator-plans-list .section-title .button{width:100%;margin-left:0}.creator-plans-list .dashboard-plan-list{padding:0 14px 14px}}

/* Five-day supervision workspace */
.supervision-readiness-board{margin-top:18px;padding:22px;border-top:5px solid #176f67}.supervision-section-head>div>p:not(.kicker){margin-top:3px;color:var(--muted);font-size:.78rem}.supervision-readiness-scroll{overflow-x:auto;border:1px solid #d9e5e9;border-radius:14px}.supervision-readiness-table{width:100%;min-width:920px;border-collapse:collapse}.supervision-readiness-table th{padding:9px 8px;border-bottom:1px solid #d9e5e9;background:#f6f9fa;color:#627b87;font-size:.68rem;text-align:center}.supervision-readiness-table th:first-child{min-width:230px;padding-left:13px;text-align:left}.supervision-readiness-table th b,.supervision-readiness-table th small{display:block}.supervision-readiness-table th b{color:#365e6f;font-size:.75rem}.supervision-readiness-table th small{margin-top:1px;color:#84969e;font-weight:600}.supervision-readiness-table td{padding:9px 7px;border-bottom:1px solid #e7eef1;text-align:center}.supervision-readiness-table tbody tr:last-child td{border-bottom:0}.supervision-readiness-table tbody tr{transition:background .15s}.supervision-readiness-table tbody tr:hover{background:#f7fbfa}.supervision-readiness-table tbody tr.is-focused{background:#edf8f4}.supervision-readiness-table tbody tr.is-focused td:first-child{box-shadow:inset 4px 0 #2e8b73}.supervision-teacher-link{display:grid;grid-template-columns:38px minmax(0,1fr);gap:9px;align-items:center;color:var(--ink);text-align:left}.supervision-teacher-link>img,.supervision-teacher-link>span:first-child{display:grid;place-items:center;width:38px;height:38px;overflow:hidden;border-radius:11px;background:linear-gradient(145deg,#dff2ed,#e9e3f4);color:#416c64;font-size:.86rem;font-weight:900;object-fit:cover}.supervision-teacher-link>span:last-child{min-width:0}.supervision-teacher-link b,.supervision-teacher-link small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.supervision-teacher-link b{font-size:.82rem}.supervision-teacher-link small{margin-top:2px;color:#758992;font-size:.64rem}.readiness-day{display:grid;place-items:center;min-width:46px;min-height:39px;padding:4px;border-radius:9px}.readiness-day b,.readiness-day small{display:block}.readiness-day b{font-size:.85rem}.readiness-day small{max-width:50px;overflow:hidden;text-overflow:ellipsis;color:inherit;font-size:.59rem;white-space:nowrap}.readiness-day.is-ready{background:#e5f5ed;color:#277453}.readiness-day.is-ready:hover{background:#d3eddf}.readiness-day.is-empty{background:#f2f5f6;color:#90a0a7}.readiness-count{display:grid;min-width:48px;padding:5px;border-radius:9px;background:#edf4f7;color:#315f72}.readiness-count b,.readiness-count small{display:block}.readiness-count b{font-size:.9rem}.readiness-count small{font-size:.58rem}.readiness-count.hand{background:#e6f4ef;color:#276f5b}.readiness-count.interest{background:#f2ecf7;color:#70518f}.supervision-readiness-legend{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding-top:11px;color:#667d87;font-size:.7rem}.supervision-readiness-legend span{display:flex;align-items:center}.supervision-readiness-legend i{width:8px;height:8px;margin-right:5px;border-radius:50%}.supervision-readiness-legend i.ready{background:#3e9875}.supervision-readiness-legend i.empty{background:#aab7bd}.supervision-readiness-legend small{margin-left:auto;color:#82939b}

.supervision-teacher-focus{margin-top:18px;overflow:hidden;border-top:5px solid #7e60a0}.teacher-focus-profile{display:grid;grid-template-columns:minmax(240px,1fr) minmax(210px,.8fr) auto;gap:20px;align-items:center;padding:18px 20px;border-bottom:1px solid #dbe6ea;background:linear-gradient(120deg,#fbf9fd,#f3faf8)}.teacher-focus-identity{display:flex;align-items:center;gap:12px}.teacher-focus-identity>img,.teacher-focus-identity>span{display:grid;place-items:center;width:52px;height:52px;overflow:hidden;border-radius:15px;background:linear-gradient(145deg,#dff2ed,#ebe2f4);color:#645078;font-size:1.1rem;font-weight:900;object-fit:cover}.teacher-focus-identity h2,.teacher-focus-identity p{margin:0}.teacher-focus-identity small{color:var(--muted)}.teacher-focus-progress>div{display:flex;justify-content:space-between;gap:10px;margin-bottom:7px;font-size:.75rem}.teacher-focus-progress>div span{color:#617883}.teacher-focus-progress>span{display:block;height:9px;overflow:hidden;border-radius:999px;background:#dfe8eb}.teacher-focus-progress>span i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2c8a70,#65b992)}.teacher-focus-counts{display:flex;gap:6px}.teacher-focus-counts>span{display:grid;min-width:72px;padding:7px 9px;border:1px solid #d8e4e8;border-radius:10px;background:#fff;text-align:center}.teacher-focus-counts b,.teacher-focus-counts small{display:block}.teacher-focus-counts b{font-size:1rem}.teacher-focus-counts small{color:#718690;font-size:.61rem}.teacher-focus-columns{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:0}.teacher-focus-columns>section{min-width:0;padding:17px 18px}.teacher-focus-columns>section+section{border-left:1px solid #e1e9ec}.teacher-focus-heading{display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;align-items:center;margin-bottom:11px}.teacher-focus-heading>span{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#edf5f7;color:#276579;font-weight:900}.teacher-focus-columns>section:nth-child(2) .teacher-focus-heading>span{background:#e7f5ed;color:#287653}.teacher-focus-columns>section:nth-child(3) .teacher-focus-heading>span{background:#f2ebf7;color:#735390}.teacher-focus-heading h3,.teacher-focus-heading p{margin:0}.teacher-focus-heading h3{font-size:.88rem}.teacher-focus-heading p{margin-top:1px;color:var(--muted);font-size:.66rem}.teacher-focus-list{display:grid}.teacher-focus-list article{display:flex;min-width:0;padding:9px 0;border-bottom:1px dashed #dce6ea}.teacher-focus-list article:last-child{border-bottom:0}.teacher-focus-list article>div{min-width:0}.teacher-focus-list article a,.teacher-focus-list article b,.teacher-focus-list article small{display:block}.teacher-focus-list article a,.teacher-focus-list article b{overflow:hidden;color:#225b76;font-size:.78rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.teacher-focus-list article a:hover{text-decoration:underline}.teacher-focus-list article small{margin-top:2px;color:#788c95;font-size:.62rem;line-height:1.35}.teacher-focus-list.schedule-list article{display:grid;grid-template-columns:48px minmax(0,1fr);gap:9px}.teacher-focus-list.schedule-list time{display:grid;place-items:center;align-content:center;min-height:42px;border-radius:9px;background:#e8f5ef;color:#287454;font-size:.73rem;font-weight:900}.teacher-focus-list.schedule-list time small{display:block;margin:0;color:inherit;font-size:.57rem;font-weight:600}.teacher-focus-list.schedule-list article.no-plan time{background:#f0f3f5;color:#81929a}.teacher-focus-list.schedule-list article.no-plan b{color:#738791}.teacher-focus-empty{padding:18px 8px;border:1px dashed #cddde3;border-radius:10px;color:#7c8f98;font-size:.72rem;text-align:center}

@media(max-width:1050px){.teacher-focus-profile{grid-template-columns:1fr 1fr}.teacher-focus-counts{grid-column:1/-1}.teacher-focus-counts>span{flex:1}.teacher-focus-columns{grid-template-columns:1fr 1fr}.teacher-focus-columns>section:first-child{grid-column:1/-1}.teacher-focus-columns>section:nth-child(2){border-left:0;border-top:1px solid #e1e9ec}.teacher-focus-columns>section:nth-child(3){border-top:1px solid #e1e9ec}}
@media(max-width:720px){.supervision-readiness-board{padding:16px}.supervision-readiness-scroll{margin-right:-16px;border-right:0;border-radius:12px 0 0 12px}.supervision-readiness-legend small{width:100%;margin-left:0}.teacher-focus-profile{grid-template-columns:1fr;padding:15px}.teacher-focus-counts{grid-column:auto;overflow-x:auto}.teacher-focus-columns{grid-template-columns:1fr}.teacher-focus-columns>section,.teacher-focus-columns>section:first-child{grid-column:auto}.teacher-focus-columns>section+section{border-top:1px solid #e1e9ec;border-left:0}}
@media(max-width:520px){.supervision-readiness-board,.supervision-teacher-focus,.supervision-board{border-radius:14px}.teacher-focus-counts>span{min-width:86px}.teacher-focus-columns>section{padding:15px}.supervision-stat-grid{gap:8px}.supervision-stat-grid article small{font-size:.66rem}}

.supervision-teacher-page-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.supervision-teacher-page-actions{display:flex;gap:8px;flex-wrap:wrap}.supervision-teacher-detail-page{margin-top:18px}.supervision-pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:16px;padding-top:15px;border-top:1px solid var(--line);color:#718690;font-size:.75rem}.supervision-pagination>div{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.supervision-pagination a{display:grid;place-items:center;min-width:34px;min-height:34px;padding:6px 10px;border:1px solid #d1e0e5;border-radius:9px;background:#fff;color:#376477;font-weight:800}.supervision-pagination a:hover{border-color:#91bdc9;background:#f2f8fa}.supervision-pagination a.active{border-color:#287765;background:#e7f5ef;color:#256b59}.supervision-pagination a[aria-current="page"]{pointer-events:none}
@media(max-width:720px){.supervision-teacher-page-head{align-items:flex-start;flex-direction:column}.supervision-teacher-page-actions{width:100%}.supervision-teacher-page-actions .button{flex:1}.supervision-pagination{align-items:flex-start;flex-direction:column}.supervision-pagination>div{width:100%}}

.supervision-teacher-workspace-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px;border-top:5px solid #7e60a0;background:linear-gradient(120deg,#fff,#f4faf8 60%,#f4eff8)}.supervision-teacher-workspace-head h1,.supervision-teacher-workspace-head p{margin:0}.supervision-teacher-workspace-head .teacher-focus-identity>img,.supervision-teacher-workspace-head .teacher-focus-identity>span{width:64px;height:64px;border-radius:18px}.supervision-teacher-stat-grid{grid-template-columns:repeat(4,1fr)}.supervision-readonly-schedule{border-top-color:#2e8b73}.supervision-created-plans{border-top-color:#258caf}.supervision-interested-plans{border-top-color:#8a65ad}.supervision-plan-section-controls{display:flex;align-items:flex-end;gap:7px;margin-left:auto}.supervision-plan-section-controls label{color:#6c808a;font-size:.68rem;font-weight:800}.supervision-plan-section-controls .field{width:105px;margin-top:4px;padding:7px 28px 7px 9px}.supervision-plan-section-controls .button{min-height:38px;padding:7px 11px}.supervision-created-plans .supervision-pagination{margin-top:14px}.supervision-section-footer{display:flex;justify-content:flex-end;margin-top:13px}
@media(max-width:900px){.supervision-teacher-workspace-head{align-items:flex-start;flex-direction:column}.supervision-teacher-page-actions{width:100%}.supervision-teacher-stat-grid{grid-template-columns:repeat(2,1fr)}.supervision-plan-section-controls{width:100%;margin-left:0}.supervision-plan-section-controls label{flex:1}.supervision-plan-section-controls .field{width:100%}}
@media(max-width:600px){.supervision-teacher-workspace-head{padding:17px}.supervision-teacher-page-actions{display:grid;grid-template-columns:1fr}.supervision-teacher-stat-grid{grid-template-columns:1fr}.supervision-plan-section-controls{align-items:stretch;flex-direction:column}.supervision-plan-section-controls .button{width:100%}.supervision-created-plans .dashboard-section-head{align-items:flex-start;flex-wrap:wrap}}

.supervision-created-plans .dashboard-plan-list{overflow:visible}.dashboard-plan-row.has-supervision-actions{grid-template-columns:44px minmax(230px,1fr) 125px 110px 190px}.dashboard-plan-supervision-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px}.dashboard-plan-supervision-actions>details{position:relative}.dashboard-plan-supervision-actions>details>summary{min-height:34px;padding:6px 9px;list-style:none;white-space:nowrap}.dashboard-plan-supervision-actions>details>summary::-webkit-details-marker{display:none}.dashboard-plan-supervision-actions>details>form{position:absolute;z-index:20;right:0;top:calc(100% + 7px);display:grid;width:min(370px,80vw);gap:9px;padding:13px;border:1px solid #c7ded1;border-radius:13px;background:#fff;box-shadow:0 16px 38px rgba(25,64,48,.18)}.dashboard-plan-supervision-actions label{font-size:.78rem;font-weight:900}.dashboard-plan-supervision-actions textarea{display:block;width:100%;margin-top:5px;padding:10px 12px;border:1px solid #cbdde4;border-radius:10px;background:#fff;color:var(--ink);font:inherit;resize:vertical}.dashboard-plan-supervision-actions form .button{width:100%}
@media(max-width:850px){.dashboard-plan-row.has-supervision-actions{grid-template-columns:44px minmax(0,1fr) 105px 90px}.dashboard-plan-supervision-actions{grid-column:2/-1;justify-content:flex-start;padding-top:8px;border-top:1px dashed #d5e2e7}.dashboard-plan-supervision-actions .dashboard-plan-open{grid-column:auto;padding-top:0;border-top:0}}
@media(max-width:600px){.dashboard-plan-row.has-supervision-actions{grid-template-columns:38px minmax(0,1fr) 68px}.dashboard-plan-supervision-actions{grid-column:1/-1}.dashboard-plan-supervision-actions>details{flex:1}.dashboard-plan-supervision-actions>details>summary{width:100%;text-align:center}.dashboard-plan-supervision-actions>details>form{position:static;width:100%;margin-top:7px;box-shadow:none}.dashboard-plan-supervision-actions .dashboard-plan-open{flex:1;text-align:center}}

.supervision-teacher-overview{margin-top:18px;padding:22px;border-top:5px solid #176f67}.supervision-teacher-overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.supervision-teacher-overview-card{display:grid;gap:12px;min-width:0;padding:14px;border:1px solid #d6e3e7;border-radius:14px;background:#fff;color:var(--ink);transition:border-color .16s,background .16s,box-shadow .16s,transform .16s}.supervision-teacher-overview-card:hover{border-color:#8fc1b2;background:#f6fbf9;box-shadow:0 9px 22px rgba(29,83,68,.08);transform:translateY(-1px)}.supervision-teacher-card-head{display:grid;grid-template-columns:42px minmax(0,1fr) 20px;gap:10px;align-items:center}.supervision-teacher-card-head>img,.supervision-teacher-card-head>span{display:grid;place-items:center;width:42px;height:42px;overflow:hidden;border-radius:12px;background:linear-gradient(145deg,#dff2ed,#e9e3f4);color:#416c64;font-weight:900;object-fit:cover}.supervision-teacher-card-head>div{min-width:0}.supervision-teacher-card-head b,.supervision-teacher-card-head small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.supervision-teacher-card-head b{font-size:.88rem}.supervision-teacher-card-head small{margin-top:2px;color:#758992;font-size:.67rem}.supervision-teacher-card-head i{color:#2d7b67;font-size:1.05rem;font-style:normal;font-weight:900}.supervision-teacher-card-counts{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.supervision-teacher-card-counts>span{display:grid;padding:7px 5px;border-radius:9px;background:#e9f5f1;text-align:center}.supervision-teacher-card-counts>span:nth-child(2){background:#edf4f7}.supervision-teacher-card-counts>span:nth-child(3){background:#f3ecf7}.supervision-teacher-card-counts b,.supervision-teacher-card-counts small{display:block}.supervision-teacher-card-counts b{font-size:.95rem;color:#276f5b}.supervision-teacher-card-counts>span:nth-child(2) b{color:#315f72}.supervision-teacher-card-counts>span:nth-child(3) b{color:#70518f}.supervision-teacher-card-counts small{color:#718690;font-size:.59rem}
@media(max-width:1000px){.supervision-teacher-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.supervision-teacher-overview{padding:16px}.supervision-teacher-overview-grid{grid-template-columns:1fr}}

/* Compact each teacher into one horizontal row */
.supervision-teacher-overview-card{grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:9px 10px}.supervision-teacher-card-head{grid-template-columns:34px minmax(0,1fr) 14px;gap:7px}.supervision-teacher-card-head>img,.supervision-teacher-card-head>span{width:34px;height:34px;border-radius:10px;font-size:.76rem}.supervision-teacher-card-head b{font-size:.79rem}.supervision-teacher-card-head small{font-size:.6rem}.supervision-teacher-card-head i{font-size:.86rem}.supervision-teacher-card-counts{grid-template-columns:repeat(3,44px);gap:4px}.supervision-teacher-card-counts>span{padding:4px 2px;border-radius:8px}.supervision-teacher-card-counts b{font-size:.79rem}.supervision-teacher-card-counts small{font-size:.54rem}

/* Join the original full-width statistics strip to the teacher header */
.supervision-teacher-workspace-head{border-radius:18px 18px 0 0;box-shadow:none}.supervision-teacher-stat-grid{grid-template-columns:repeat(4,1fr);width:100%;max-width:none;gap:0;margin-top:-1px;border:1px solid var(--line);border-top:0;border-radius:0 0 17px 17px;background:#fff;box-shadow:var(--shadow)}.supervision-teacher-stat-grid article{border:0;border-radius:0;background:transparent}.supervision-teacher-stat-grid article+article{border-left:1px solid #dfebef}
@media(max-width:900px){.supervision-teacher-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}}
@media(max-width:600px){.supervision-teacher-stat-grid{grid-template-columns:1fr}.supervision-teacher-stat-grid article+article{border-top:1px solid #dfebef;border-left:0}}

/* Compact horizontal rows for general search results */
.search-plan-list{overflow:hidden;border:1px solid #d3e2e8;border-radius:15px;background:#fff;box-shadow:0 10px 26px rgba(28,73,94,.06)}.search-plan-row{display:grid;grid-template-columns:42px minmax(240px,1fr) 105px 170px 105px;gap:13px;align-items:center;min-height:84px;padding:12px 16px;border-bottom:1px solid #dce7ec;background:#fff;transition:background .15s}.search-plan-row:last-child{border-bottom:0}.search-plan-row:nth-child(even){background:#f7fafb}.search-plan-row:hover{background:#eef7fa}.search-plan-icon{display:grid;place-items:center;width:38px;height:40px;border-radius:10px;font-weight:900}.search-plan-main{min-width:0}.search-plan-main h3,.search-plan-main p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-plan-main h3{color:#124f72;font-size:.96rem}.search-plan-main p{margin-top:2px;color:var(--muted);font-size:.77rem}.search-plan-meta{display:grid;gap:2px}.search-plan-meta b{color:#245f79}.search-plan-meta span{color:var(--muted);font-size:.72rem}.search-plan-frameworks{display:flex;gap:5px;flex-wrap:wrap}.search-plan-frameworks span{padding:3px 7px;border-radius:7px;background:#edf5f8;color:#3e6c7f;font-size:.66rem;font-weight:800}.search-plan-open{color:#17688d;font-size:.79rem;text-align:right;white-space:nowrap}
@media(max-width:850px){.search-plan-row{grid-template-columns:38px minmax(0,1fr) 90px}.search-plan-meta{grid-column:3;grid-row:1}.search-plan-frameworks{grid-column:2}.search-plan-open{grid-column:3;grid-row:2}}
@media(max-width:560px){.search-plan-row{grid-template-columns:34px minmax(0,1fr);gap:9px;padding:11px 12px}.search-plan-icon{width:32px;height:36px}.search-plan-meta{grid-column:2;grid-row:auto;display:flex;gap:8px}.search-plan-frameworks{grid-column:2}.search-plan-open{grid-column:2;grid-row:auto;padding-top:6px;border-top:1px dashed #d7e3e8;text-align:left}}

/* Read-only member profile opened from the member list */
.member-profile-link{color:var(--ink);text-decoration:none}.member-profile-link b,.member-profile-link.member-display-name{color:#124f72}.member-profile-link:hover b,.member-profile-link.member-display-name:hover{color:#0d789f;text-decoration:underline;text-underline-offset:3px}.member-view-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px;border-top:5px solid #2d9775;background:linear-gradient(120deg,#fff,#f2faf7 62%,#f4eef8)}.member-view-identity{display:flex;align-items:center;gap:15px;min-width:0}.member-view-identity>img,.member-view-identity>span{display:grid;place-items:center;width:72px;height:72px;flex:0 0 72px;overflow:hidden;border:3px solid #fff;border-radius:20px;background:linear-gradient(145deg,#dff2ed,#e9e3f4);box-shadow:0 7px 18px rgba(30,77,66,.12);color:#416c64;font-size:1.45rem;font-weight:900;object-fit:cover}.member-view-identity h1,.member-view-identity p{margin:0}.member-view-identity h1{font-size:1.65rem}.member-view-identity>div>p:not(.kicker){color:#516e7b}.member-view-states{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.member-view-states span{padding:4px 8px;border-radius:999px;font-size:.68rem;font-weight:900}.member-view-states .ok{background:#def3e7;color:#247653}.member-view-states .pending{background:#fff0cf;color:#8b6114}.member-view-states .off{background:#f7e5e5;color:#9a4242}.member-view-actions{display:flex;gap:8px;flex-wrap:wrap}.member-view-stats{grid-template-columns:repeat(4,1fr);width:100%;max-width:none;margin-top:14px}.member-view-details,.member-view-plans{margin-top:18px}.member-view-details{padding:22px}.member-view-details dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:16px 0 0;border:1px solid #d8e5ea;border-radius:14px;background:#fbfdfe;overflow:hidden}.member-view-details dl>div{display:grid;grid-template-columns:minmax(120px,.72fr) minmax(0,1.28fr);gap:12px;padding:13px 15px;border-bottom:1px solid #e1eaee}.member-view-details dl>div:nth-child(odd){border-right:1px solid #e1eaee}.member-view-details dl>div:nth-last-child(-n+2){border-bottom:0}.member-view-details dt{color:#6c818b;font-size:.72rem;font-weight:800}.member-view-details dd{min-width:0;margin:0;overflow-wrap:anywhere;color:#143e53;font-size:.82rem;font-weight:800}.member-view-plans .dashboard-section-head .button{margin-left:auto}.member-view-plans .dashboard-plan-list{padding:0 22px 22px}
@media(max-width:800px){.member-view-hero{align-items:flex-start;flex-direction:column}.member-view-actions{width:100%}.member-view-actions .button{flex:1;text-align:center}.member-view-stats{grid-template-columns:repeat(2,1fr)}.member-view-details dl{grid-template-columns:1fr}.member-view-details dl>div,.member-view-details dl>div:nth-child(odd){border-right:0;border-bottom:1px solid #e1eaee}.member-view-details dl>div:last-child{border-bottom:0}}
@media(max-width:560px){.member-view-hero{padding:17px}.member-view-identity{align-items:flex-start}.member-view-identity>img,.member-view-identity>span{width:58px;height:58px;flex-basis:58px;border-radius:16px}.member-view-identity h1{font-size:1.3rem}.member-view-actions{display:grid;grid-template-columns:1fr}.member-view-stats{grid-template-columns:1fr 1fr;gap:8px}.member-view-details{padding:16px}.member-view-details dl>div{grid-template-columns:1fr;gap:3px}.member-view-plans .dashboard-section-head{align-items:flex-start;flex-wrap:wrap}.member-view-plans .dashboard-section-head .button{width:100%;margin-left:0}.member-view-plans .dashboard-plan-list{padding:0 14px 14px}}

/* Teacher workspace shortcut and plan-based star level */
.member-star-level{display:flex;align-items:center;gap:2px;margin-top:9px}.member-star-level>span{font-size:1.05rem;letter-spacing:1px}.member-star-level .earned{color:#dfa31b;text-shadow:0 1px 1px rgba(124,84,4,.18)}.member-star-level .empty{color:#bdc9ce}.member-star-level small{margin-left:7px;color:#687f89;font-size:.67rem;font-weight:800}.teacher-space-button{border-color:#75b7a2;background:#e8f6f0;color:#246e59}.teacher-space-button:hover{border-color:#3d9578;background:#d9f0e7}.member-view-stats .member-star-stat{background:#fffaf0}.member-view-stats .member-star-stat>span{background:#fff0c9;color:#a9700c}
@media(max-width:560px){.member-star-level{align-items:flex-start;flex-wrap:wrap}.member-star-level small{width:100%;margin-left:0}}

.teacher-profile-button{border-color:#cbb9dc;background:#f4eef8;color:#6f4f91}.teacher-profile-button:hover{border-color:#9b7bb7;background:#ebe0f2}

/* Catalogue shortcut at the right edge of the teacher statistics strip */
.dashboard-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(210px,.85fr)}.dashboard-stat-grid .dashboard-catalog-stat{padding:0;background:linear-gradient(135deg,#e8f7f2,#eef6fb)}.dashboard-catalog-stat>a{display:flex;align-items:center;gap:11px;width:100%;min-height:76px;padding:14px 17px;color:#174e65;transition:background .16s}.dashboard-catalog-stat>a:hover{background:rgba(255,255,255,.58)}.dashboard-catalog-stat>a>span{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:12px;background:#d7eee7;color:#24765e;font-size:1.1rem;font-weight:900}.dashboard-catalog-stat>a>div{min-width:0}.dashboard-catalog-stat>a b{font-size:.96rem}.dashboard-catalog-stat>a small{font-size:.68rem}.dashboard-catalog-stat>a i{margin-left:auto;color:#24765e;font-size:1.1rem;font-style:normal;font-weight:900}
@media(max-width:900px){.dashboard-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-stat-grid article:nth-child(3){border-top:1px solid #dfebef;border-left:0}.dashboard-stat-grid article:nth-child(4){border-top:1px solid #dfebef}}
@media(max-width:600px){.dashboard-stat-grid{grid-template-columns:1fr}.dashboard-stat-grid article:nth-child(3),.dashboard-stat-grid article:nth-child(4){border-left:0}.dashboard-catalog-stat>a{min-height:68px}}

/* Practical EF, SELF and SEL guide in the plan editor */
.reference-card>.reference-guide{display:grid;gap:11px;max-height:76vh;padding:0 12px 13px}.reference-guide-tip{padding:11px 12px;border:1px solid #ead9ad;border-radius:12px;background:#fffaf0;color:#5e5237}.reference-guide-tip>b{display:block;margin-bottom:5px;color:#8a6415;font-size:.82rem}.reference-guide-tip ol{margin:0;padding-left:18px;font-size:.69rem;line-height:1.55}.reference-framework{overflow:hidden;border:1px solid #d8e4e9;border-radius:13px;background:#fff}.reference-framework-self{border-color:#dbc8e8;background:#fdfaff}.reference-framework-ef{border-color:#c7dfeb;background:#f9fdff}.reference-framework-sel{border-color:#cce4d5;background:#f9fdfa}.reference-framework-head{display:grid;grid-template-columns:40px minmax(0,1fr);gap:9px;align-items:start;padding:11px}.reference-framework-head>span{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:#eee5f6;color:#704d90;font-size:.69rem;font-weight:900}.reference-framework-ef .reference-framework-head>span{background:#e3f2f8;color:#236c8a}.reference-framework-sel .reference-framework-head>span{background:#e5f4eb;color:#2c7557}.reference-framework-head h3,.reference-framework-head p{margin:0}.reference-framework-head h3{font-size:.83rem}.reference-framework-head p{padding:1px 0 0;border:0;color:#657d88;font-size:.65rem;line-height:1.45}.reference-framework-head em{grid-column:1/-1;justify-self:start;padding:3px 7px;border-radius:999px;background:#f1e9f7;color:#704f8c;font-size:.6rem;font-style:normal;font-weight:900}.reference-framework-ef .reference-framework-head em{background:#e8f4f9;color:#286e88}.reference-framework-sel .reference-framework-head em{background:#e8f5ed;color:#2d7458}.reference-skill-list{border-top:1px solid #e1e9ed}.reference-skill-list article{padding:10px 11px;border-bottom:1px dashed #dce6ea}.reference-skill-list article:last-child{border-bottom:0}.reference-skill-title{display:grid;grid-template-columns:25px minmax(0,1fr);gap:7px;align-items:start}.reference-skill-title>span{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:#f0e9f6;color:#73518f;font-size:.65rem;font-weight:900}.reference-framework-ef .reference-skill-title>span{background:#e8f4f9;color:#28708d}.reference-framework-sel .reference-skill-title>span{background:#e8f5ed;color:#2d7659}.reference-skill-title b,.reference-skill-title small{display:block}.reference-skill-title b{font-size:.76rem}.reference-skill-title small{color:#728690;font-size:.58rem;line-height:1.35}.reference-skill-list article>p{margin:6px 0 0;padding:0;border:0;color:#58717d;font-size:.67rem;line-height:1.5}.reference-skill-list article>p strong{color:#294f61}.reference-skill-list ul{display:grid;gap:3px;margin:7px 0 0;padding:7px 8px 7px 24px;border-radius:9px;background:#f7f2fa;color:#654f70;font-size:.64rem;line-height:1.4}.reference-skill-list li::marker{color:#8a65a7}
@media(max-width:700px){.reference-card>.reference-guide{max-height:none}.reference-framework-head{grid-template-columns:42px minmax(0,1fr)}.reference-skill-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.reference-skill-list article:nth-child(odd){border-right:1px dashed #dce6ea}}
@media(max-width:480px){.reference-skill-list{grid-template-columns:1fr}.reference-skill-list article:nth-child(odd){border-right:0}}

/* Reader reactions and quality badges on plan pages */
.plan-page .plan-hero.has-quality-badge{position:relative;padding-bottom:72px}.plan-quality-badge{position:absolute;right:18px;bottom:14px;display:flex;align-items:center;gap:9px;min-width:172px;padding:9px 12px;border:1px solid #e6c66e;border-radius:13px;background:linear-gradient(135deg,#fff8d9,#fffdf5);box-shadow:0 8px 20px rgba(112,78,10,.11);color:#7c5a0e}.plan-quality-badge>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#f7d66f;color:#8a6000;font-size:1.2rem}.plan-quality-badge b,.plan-quality-badge small{display:block}.plan-quality-badge b{font-size:.82rem}.plan-quality-badge small{color:#88723e;font-size:.62rem}.plan-quality-badge.good{border-color:#b8d9c6;background:linear-gradient(135deg,#eaf7ef,#fbfefc);color:#286e54}.plan-quality-badge.good>span{background:#ccead8;color:#2b7959}.plan-quality-badge.good small{color:#628273}
.plan-reaction-section{margin-top:16px;padding:20px 22px;border-top:4px solid #e0a72f;background:linear-gradient(135deg,#fff,#fffdf7)}.plan-reaction-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.plan-reaction-head h2,.plan-reaction-head p{margin:0}.plan-reaction-head>div:first-child>p:last-child{color:var(--muted);font-size:.77rem}.plan-reaction-score{display:grid;grid-template-columns:auto auto;align-items:end;gap:0 7px;min-width:150px;padding:9px 12px;border-radius:12px;background:#fff7dd}.plan-reaction-score b{grid-row:1/3;color:#8e650e;font-size:1.7rem;line-height:1}.plan-reaction-score small{color:#775d25;font-weight:900}.plan-reaction-score span{grid-column:1/-1;margin-top:4px;color:#877850;font-size:.62rem}.plan-reaction-buttons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:15px}.plan-reaction-buttons>form{margin:0}.reaction-button{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:8px;align-items:center;width:100%;min-height:62px;padding:9px 10px;border:1px solid #d5e1e6;border-radius:12px;background:#fff;color:#244b5e;font:inherit;text-align:left;cursor:pointer;transition:border-color .15s,background .15s,transform .15s,box-shadow .15s}.reaction-button:hover{border-color:#8fb8c8;background:#f5fbfd;box-shadow:0 6px 15px rgba(29,75,95,.08);transform:translateY(-1px)}.reaction-button>span:first-child{font-size:1.35rem;text-align:center}.reaction-button b,.reaction-button small{display:block}.reaction-button b{font-size:.75rem}.reaction-button small{color:#7a8c94;font-size:.58rem}.reaction-button strong{display:grid;place-items:center;min-width:25px;height:25px;padding:0 5px;border-radius:8px;background:#edf4f7;color:#315f72;font-size:.7rem}.reaction-button.active,.reaction-feedback-box.active>summary{border-color:#d5a42e;background:#fff8df;box-shadow:0 0 0 2px rgba(213,164,46,.12)}.reaction-love.active{border-color:#e18a99;background:#fff3f5}.reaction-useful.active{border-color:#7eb2d2;background:#f0f8fd}.reaction-smile.active{border-color:#d8b658;background:#fff9e8}.reaction-button.readonly{cursor:default}.reaction-button.readonly:hover{border-color:#d5e1e6;background:#fff;box-shadow:none;transform:none}.reaction-feedback-box{min-width:0}.reaction-feedback-box>summary{list-style:none}.reaction-feedback-box>summary::-webkit-details-marker{display:none}.reaction-feedback-box[open]{grid-column:1/-1;padding:0 0 13px;border:1px solid #d5e1e6;border-radius:13px;background:#f9fcfd}.reaction-feedback-box[open]>summary{border:0;border-bottom:1px solid #dce7eb;border-radius:12px 12px 0 0;box-shadow:none;transform:none}.reaction-feedback-box>form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;padding:12px}.reaction-feedback-box label{font-size:.75rem;font-weight:900}.reaction-feedback-box textarea{display:block;width:100%;margin-top:5px;padding:10px 11px;border:1px solid #cbdde4;border-radius:10px;background:#fff;color:var(--ink);font:inherit;resize:vertical}.reaction-feedback-box .button{min-height:42px}.reaction-access-note{display:flex;align-items:center;gap:9px;margin-top:11px;padding:9px 11px;border-radius:11px;background:#f1f6f8;color:#5e7580;font-size:.72rem}.reaction-access-note>span{font-size:1rem}.reaction-access-note p{flex:1;margin:0}.reaction-access-note.owner{background:#eef7f2;color:#497261}.reaction-remove-form{display:flex;justify-content:flex-end;margin:9px 0 0}.reaction-remove-form button{padding:3px 0;border:0;background:transparent;color:#8b5d5d;font:inherit;font-size:.67rem;font-weight:800;cursor:pointer}.reaction-remove-form button:hover{text-decoration:underline}.reaction-feedback-feed{margin-top:12px;border:1px solid #d9e4e8;border-radius:11px;background:#fff}.reaction-feedback-feed>summary{padding:10px 12px;color:#5b4768;font-size:.75rem;font-weight:900;cursor:pointer}.reaction-feedback-feed>div{padding:0 12px 10px}.reaction-feedback-feed article{display:flex;gap:9px;padding:10px 0;border-top:1px dashed #dce6ea}.reaction-feedback-feed article>span{display:grid;place-items:center;width:32px;height:32px;flex:0 0 32px;border-radius:9px;background:#eee5f5;color:#71518a;font-weight:900}.reaction-feedback-feed article b,.reaction-feedback-feed article small{display:block}.reaction-feedback-feed article p{margin:3px 0;color:#405d6b;font-size:.75rem}.reaction-feedback-feed article small{color:#7c8e96;font-size:.62rem}
@media(max-width:900px){.plan-reaction-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.plan-page .plan-hero.has-quality-badge{padding-bottom:76px}.plan-quality-badge{right:12px;bottom:11px}.plan-reaction-section{padding:16px}.plan-reaction-head{align-items:flex-start;flex-direction:column}.plan-reaction-score{width:100%}.plan-reaction-buttons{grid-template-columns:1fr}.reaction-feedback-box>form{grid-template-columns:1fr}.reaction-feedback-box .button{width:100%}.reaction-access-note{align-items:flex-start;flex-wrap:wrap}.reaction-access-note .button{width:100%;text-align:center}}

/* Reader reactions are a quiet, secondary action below the assessment. */
.plan-reaction-section{margin-top:10px;padding:13px 15px;border:1px solid #dce6ea;border-top:1px solid #dce6ea;background:#fbfcfd;box-shadow:none}.plan-reaction-head{gap:12px}.plan-reaction-head .kicker{color:#78909a;font-size:.61rem;letter-spacing:.02em}.plan-reaction-head h2{color:#365563;font-size:.94rem;line-height:1.25}.plan-reaction-head>div:first-child>p:last-child{margin-top:2px;color:#8a9ba2;font-size:.65rem}.plan-reaction-score{min-width:128px;padding:6px 9px;border:1px solid #e1e8eb;border-radius:9px;background:#f2f5f6}.plan-reaction-score b{color:#617781;font-size:1.12rem}.plan-reaction-score small{color:#6f8188;font-size:.64rem}.plan-reaction-score span{margin-top:2px;color:#8c9ba1;font-size:.56rem}.plan-reaction-buttons{gap:6px;margin-top:9px}.reaction-button{min-height:50px;padding:6px 8px;border-color:#dfe7ea;border-radius:9px;background:#fff;box-shadow:none}.reaction-button:hover{border-color:#b7c9d0;background:#f8fafb;box-shadow:none;transform:none}.reaction-button>span:first-child{font-size:1.08rem}.reaction-button b{color:#49626d;font-size:.7rem}.reaction-button small{font-size:.54rem}.reaction-button strong{min-width:23px;height:23px;background:#f0f4f5;color:#607781;font-size:.65rem}.reaction-access-note{margin-top:8px;padding:7px 9px;background:#f2f5f6;font-size:.66rem}.reaction-feedback-feed{margin-top:8px}
@media(max-width:600px){.plan-reaction-section{padding:12px}.plan-reaction-head{gap:8px}.plan-reaction-score{width:100%}}

/* Compact footer-style reaction controls; scores remain internal. */
.plan-reaction-head{justify-content:flex-start}.plan-reaction-buttons{display:flex;align-items:center;flex-wrap:wrap;gap:3px;margin-top:8px}.plan-reaction-buttons>form{flex:0 0 auto}.reaction-button{display:inline-flex;align-items:center;justify-content:center;gap:4px;width:auto;min-height:0;padding:4px 7px;border:0;border-radius:4px;background:transparent;color:#17608f;line-height:1;box-shadow:none}.reaction-button:hover{border:0;background:#e7f0f6;color:#0b527f}.reaction-button>span:first-child{font-size:.82rem}.reaction-button b{color:inherit;font-size:.65rem;font-weight:800;white-space:nowrap}.reaction-button.active,.reaction-feedback-box.active>summary{border:0;background:#dcecf5;box-shadow:none}.reaction-feedback-box{flex:0 0 auto}.reaction-feedback-box[open]{flex:1 0 100%;grid-column:auto;margin-top:5px}.reaction-button.readonly:hover{border:0;background:transparent}.reaction-access-note{margin-top:6px}
@media(max-width:600px){.plan-reaction-buttons{display:flex;grid-template-columns:none}.reaction-button{padding:5px 6px}.reaction-button b{font-size:.63rem}}

/* One-line, borderless reaction bar below the assessment. */
.plan-reaction-section{display:flex;align-items:center;flex-wrap:wrap;gap:6px 16px;margin:8px 0 0;padding:5px 2px;border:0;background:transparent;box-shadow:none}.plan-reaction-head{display:block;flex:0 0 auto}.plan-reaction-head h2{margin:0;color:#536d79;font-size:.76rem;line-height:1.2}.plan-reaction-buttons{justify-content:flex-end;flex:1 1 auto;margin:0}.reaction-button.active{position:relative;padding-right:18px;background:#dcecf5;color:#0b527f}.reaction-button.active::after{position:absolute;right:6px;content:'✓';font-size:.58rem;font-weight:900}.plan-reaction-section>.reaction-access-note,.plan-reaction-section>.reaction-feedback-feed{flex:1 0 100%}.plan-reaction-section>.reaction-access-note{margin:2px 0 0;padding:4px 0;border:0;background:transparent}.plan-reaction-section>.reaction-feedback-feed{margin-top:4px}
@media(max-width:700px){.plan-reaction-section{align-items:flex-start;flex-wrap:wrap;gap:6px}.plan-reaction-buttons{justify-content:flex-start;flex-basis:100%}}

/* Keep the question attached to the first reaction; selected icons turn gray. */
.plan-reaction-section{justify-content:flex-end;gap:5px}.plan-reaction-buttons{flex:0 0 auto;justify-content:flex-start}.reaction-button.active{padding-right:7px;background:transparent;color:#65777f}.reaction-button.active::after{content:none}.reaction-button.active>span:first-child{filter:grayscale(1);opacity:.48}.reaction-button.active:hover{background:#f0f3f4;color:#566970}
@media(max-width:700px){.plan-reaction-section{justify-content:flex-start}.plan-reaction-buttons{flex:0 1 auto;flex-basis:auto}}

/* Windows color emoji ignores grayscale in some browsers; replace active heart with a tintable glyph. */
.reaction-button>span:first-child{display:inline-block}.reaction-love.active>span:first-child{font-size:0;filter:none;opacity:1}.reaction-love.active>span:first-child::before{content:'♥';color:#9aa6ab;font-family:Arial,sans-serif;font-size:.9rem;line-height:1}

/* Internal reaction report for reviewers and administrators. */
.supervision-head-actions{display:flex;align-items:flex-end;flex-direction:column;gap:9px}.supervision-head-actions>span{white-space:nowrap}.reaction-report-head{align-items:center}.reaction-report-head .button{white-space:nowrap}.reaction-report-stats{grid-template-columns:repeat(4,1fr)}.reaction-report-stats article:nth-child(2)>span{background:#e8f3f7;color:#25677e}.reaction-report-stats article:nth-child(3)>span{background:#fff3d2;color:#896210}.reaction-report-stats article:nth-child(4)>span{background:#f1eaf6;color:#71528a}.reaction-report-filter{display:grid;grid-template-columns:1.5fr repeat(3,minmax(130px,.7fr));gap:11px;margin-top:18px;padding:18px}.reaction-report-filter label{font-size:.7rem}.reaction-report-filter .field{min-height:40px;margin-top:4px;padding:7px 9px}.reaction-filter-keyword{grid-column:span 2}.reaction-filter-actions{display:flex;align-items:flex-end;gap:7px}.reaction-filter-actions .button{min-height:40px;padding:7px 12px;white-space:nowrap}.reaction-report-board{margin-top:18px;padding:20px}.reaction-report-board-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:13px}.reaction-report-board-head h2,.reaction-report-board-head p{margin:0}.reaction-report-board-head h2 span{color:#6c818a;font-size:.78rem}.reaction-report-board-head>small{max-width:380px;color:#7b8d95;text-align:right}.reaction-report-list{border:1px solid #d8e4e8;border-radius:14px}.reaction-report-row{display:grid;grid-template-columns:minmax(260px,1fr) minmax(300px,.8fr) 92px 100px;gap:12px;align-items:center;padding:13px 14px;border-bottom:1px solid #e1eaed}.reaction-report-row:last-child{border-bottom:0}.reaction-report-plan{min-width:0}.reaction-report-title{display:flex;align-items:center;gap:7px;min-width:0}.reaction-report-title h3{min-width:0;margin:0;font-size:.9rem}.reaction-report-title h3 a{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reaction-report-title h3 a:hover{color:var(--navy);text-decoration:underline}.reaction-report-plan>p{overflow:hidden;margin:3px 0;color:#657d88;font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.reaction-report-plan>small{display:block;color:#7e9098;font-size:.61rem}.reaction-report-plan>small a{color:#286c82;font-weight:800}.reaction-quality{flex:0 0 auto;padding:3px 6px;border-radius:999px;background:#eaf6ef;color:#2c7657;font-size:.57rem;font-weight:900}.reaction-quality.recommended{background:#fff3d2;color:#805b0b}.reaction-report-counts{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.reaction-report-counts span{display:grid;padding:5px 3px;border-radius:8px;background:#f3f6f7;text-align:center}.reaction-report-counts b,.reaction-report-counts small{display:block}.reaction-report-counts b{font-size:.68rem}.reaction-report-counts small{color:#7c8f97;font-size:.51rem}.reaction-report-score{text-align:center}.reaction-report-score b,.reaction-report-score small,.reaction-report-score span{display:block}.reaction-report-score b{color:#765812;font-size:1.25rem}.reaction-report-score small{font-size:.58rem;font-weight:900}.reaction-report-score span{color:#84959c;font-size:.54rem}.reaction-report-actions .button{min-height:35px;padding:6px 9px;font-size:.65rem;white-space:nowrap}.reaction-report-feedback{grid-column:1/-1;border-top:1px dashed #d8e4e8}.reaction-report-feedback>summary{padding:9px 0 0;color:#625071;font-size:.7rem;font-weight:900;cursor:pointer;list-style:none}.reaction-report-feedback>summary::-webkit-details-marker{display:none}.reaction-report-feedback>div{display:grid;gap:7px;padding:9px 0 1px}.reaction-report-feedback article{display:flex;gap:8px;padding:9px;border-radius:9px;background:#f8fafb}.reaction-report-feedback article>span{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:8px;background:#ece5f2;color:#6e5481;font-weight:900}.reaction-report-feedback article b,.reaction-report-feedback article small{display:block}.reaction-report-feedback article p{margin:2px 0;color:#455f6b;font-size:.72rem}.reaction-report-feedback article small{color:#82949b;font-size:.58rem}
@media(max-width:1000px){.reaction-report-filter{grid-template-columns:repeat(3,1fr)}.reaction-filter-keyword{grid-column:span 2}.reaction-report-row{grid-template-columns:minmax(230px,1fr) minmax(260px,.8fr) 80px}.reaction-report-actions{grid-column:1/-1}.reaction-report-actions .button{width:100%}}
@media(max-width:720px){.supervision-head-actions{align-items:stretch;width:100%}.supervision-head-actions>span{text-align:left}.reaction-report-head{align-items:flex-start;flex-direction:column}.reaction-report-stats{grid-template-columns:repeat(2,1fr)}.reaction-report-filter{grid-template-columns:1fr 1fr}.reaction-filter-keyword{grid-column:1/-1}.reaction-filter-actions{grid-column:1/-1}.reaction-report-board{padding:15px}.reaction-report-board-head{align-items:flex-start;flex-direction:column}.reaction-report-board-head>small{text-align:left}.reaction-report-row{grid-template-columns:1fr}.reaction-report-counts{grid-template-columns:repeat(4,1fr)}.reaction-report-score{display:flex;align-items:center;gap:6px;text-align:left}.reaction-report-feedback{grid-column:auto}}
@media(max-width:480px){.reaction-report-stats,.reaction-report-filter{grid-template-columns:1fr}.reaction-filter-keyword,.reaction-filter-actions{grid-column:auto}.reaction-filter-actions{display:grid;grid-template-columns:1fr}.reaction-report-counts{grid-template-columns:repeat(2,1fr)}.reaction-report-title{align-items:flex-start;flex-direction:column}}

/* Compact online-presence summary below the category directory. */
.online-presence{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:5px 18px;align-items:center;margin-top:14px;padding:11px 14px;border-top:1px solid #cbdce3;border-bottom:1px solid #d9e5e9;color:#617983;font-size:.69rem}.online-presence-title{display:flex;align-items:center;gap:8px;grid-row:1/3}.online-presence-title>span{width:9px;height:9px;border-radius:50%;background:#38a06f;box-shadow:0 0 0 4px rgba(56,160,111,.12)}.online-presence-title b,.online-presence-title small{display:block}.online-presence-title b{color:#315c6d;font-size:.75rem}.online-presence-title small{color:#89999f;font-size:.56rem}.online-presence p{margin:0}.online-presence strong{color:#235d73}.online-presence-record{grid-column:2;color:#819198}.online-member-list{display:flex;grid-column:3;grid-row:1/3;align-items:center;justify-content:flex-end;gap:5px;max-width:400px;flex-wrap:wrap}.online-member-list small{color:#82949b}.online-member-list a{padding:3px 6px;border-radius:999px;background:#eaf4f7;color:#28677f;font-size:.6rem;font-weight:800}.online-member-list a:hover{background:#dcecf2}
@media(max-width:760px){.online-presence{grid-template-columns:1fr;gap:5px}.online-presence-title,.online-presence-record,.online-member-list{grid-column:auto;grid-row:auto}.online-member-list{justify-content:flex-start;max-width:none}}

.media-download-fallback{display:block;padding:7px 10px;border-top:1px solid #d8e4e9;background:#f7fafb;color:#2d687e;font-size:.64rem;font-weight:800;text-align:right}.media-download-fallback:hover{background:#edf5f7;text-decoration:underline}.office-frame{background:#f4f7f8}
.pdf-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border-bottom:1px solid var(--line)}.pdf-toolbar button{min-width:44px;min-height:44px;border:1px solid #d3e2e8;border-radius:8px;background:#fff;color:#17688c;font-size:1.5rem;cursor:pointer}.pdf-toolbar button:disabled{opacity:.4;cursor:default}.pdf-toolbar a{margin-left:auto;font-size:.85rem;color:#17688c}.pdf-canvas-wrap{padding:12px;background:#eef3f5;overflow:auto}.pdf-canvas-wrap canvas{display:block;margin:auto;background:#fff;max-width:100%;height:auto}.pdf-canvas-wrap canvas[hidden]{display:none}.pdf-status{padding:16px;margin:0;color:var(--muted);text-align:center}.media-preview-card>header>div{min-width:0;overflow-wrap:anywhere}
