@font-face{font-family:Nunito;font-weight:400;src:url(../aset-situs/font/nunito-latin-400-normal.woff2)}@font-face{font-family:Nunito;font-weight:700;src:url(../aset-situs/font/nunito-latin-700-normal.woff2)}@font-face{font-family:Nunito;font-weight:900;src:url(../aset-situs/font/nunito-latin-900-normal.woff2)}
.portal-language{display:flex;align-items:center;gap:3px;padding:3px;border:1px solid #d8e4ea;border-radius:999px;background:#fff;flex:0 0 auto}.portal-language button{border:0;background:transparent;color:#526577;border-radius:999px;padding:7px 9px;font:800 12px/1 Nunito,Arial,sans-serif;cursor:pointer}.portal-language button.active{background:#159fb0;color:#fff}.portal-language button:focus-visible{outline:3px solid #ffb36b;outline-offset:2px}@media(max-width:720px){.portal-language{margin-left:auto}.portal-language button{padding:6px 8px}.portal-home-link{font-size:0}.portal-home-link span{font-size:18px}}
:root{--navy:#102a43;--teal:#087f8c;--teal-soft:#e8f7f6;--orange:#e85d2a;--ink:#18232f;--muted:#667482;--line:#dce4e8;--canvas:#f4f7f8;--max:1240px}*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font:400 16px/1.55 Nunito,system-ui,sans-serif}button,input,select,textarea{font:inherit}a{color:inherit}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;z-index:99;background:#fff;padding:10px}.portal-bar{background:var(--navy);color:#fff;position:relative}.portal-bar .wrap{min-height:68px;display:flex;align-items:center;gap:24px}.portal-brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-size:20px;font-weight:900;white-space:nowrap}.portal-brand small{display:block;color:#b8cedb;font-size:11px;line-height:1.1;text-transform:uppercase;letter-spacing:.05em}.brand-mark{width:38px;height:38px;border-radius:9px;background:linear-gradient(145deg,#17a2a5,#50c6ae);display:grid;place-items:center}.portal-nav{margin-left:auto;display:flex;gap:4px}.portal-nav a{padding:9px 11px;border-radius:8px;color:#dbe9f1;text-decoration:none;font-size:14px;font-weight:800}.portal-nav a:hover,.portal-nav a.active{background:#ffffff1f;color:#fff}.menu-toggle{display:none;margin-left:auto;width:43px;height:43px;border:1px solid #ffffff55;border-radius:9px;background:transparent;color:#fff;font-size:22px}
.dashboard-head,.page-head{background:#fff;border-bottom:1px solid var(--line);padding:38px 0}.dashboard-head .wrap{display:flex;justify-content:space-between;align-items:end;gap:30px}.kicker{color:var(--teal);font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.dashboard-head h1,.page-head h1{font-size:clamp(32px,4.5vw,52px);line-height:1.08;letter-spacing:-.03em;color:var(--navy);margin:6px 0 10px}.dashboard-head p,.page-head p{font-size:18px;color:var(--muted);max-width:760px;margin:0}.curriculum-note{max-width:350px;padding:15px 17px;background:var(--teal-soft);border-left:5px solid var(--teal);border-radius:9px;font-size:13px;color:#42666b}.curriculum-note strong{display:block;color:var(--navy)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:24px 0}.stat{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px}.stat b{display:block;font-size:28px;color:var(--navy);line-height:1}.stat span{font-size:13px;color:var(--muted)}.section{padding:28px 0 48px}.section.white{background:#fff;border-block:1px solid var(--line)}.section-title{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px}.section-title h2{margin:0;color:var(--navy);font-size:27px}.section-title p{margin:3px 0 0;color:var(--muted);font-size:14px}.text-link{color:var(--teal);text-decoration:none;font-weight:900}
.app-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.app-card{position:relative;display:flex;flex-direction:column;min-height:205px;padding:20px;background:#fff;border:1px solid var(--line);border-radius:14px;text-decoration:none;overflow:hidden}.app-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--accent,var(--teal))}.app-card:hover,.tool-card:hover{box-shadow:0 14px 32px #102a4318;transform:translateY(-2px)}.app-code{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.app-icon{width:44px;height:44px;border-radius:10px;background:var(--teal-soft);color:var(--teal);display:grid;place-items:center;font-size:12px;font-weight:900}.app-card h3{margin:18px 0 5px;color:var(--navy);font-size:19px;line-height:1.2}.app-card p{margin:0 0 16px;color:var(--muted);font-size:13px}.app-card .open{margin-top:auto;color:var(--accent,var(--teal));font-size:13px;font-weight:900}.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.tool-card{display:flex;gap:15px;padding:21px;background:#fff;border:1px solid var(--line);border-radius:14px;text-decoration:none}.tool-icon{flex:none;width:48px;height:48px;border-radius:11px;background:var(--navy);color:#fff;display:grid;place-items:center;font-size:20px;font-weight:900}.tool-card h3{margin:0;color:var(--navy);font-size:19px}.tool-card p{margin:4px 0 0;color:var(--muted);font-size:13px}
.breadcrumbs{display:flex;gap:8px;color:var(--muted);font-size:13px;margin-bottom:10px}.breadcrumbs a{color:var(--teal);font-weight:900;text-decoration:none}.page-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:20px;padding:24px 0 50px}.side-menu{position:sticky;top:20px;align-self:start;background:#fff;border:1px solid var(--line);border-radius:12px;padding:9px}.side-menu strong{display:block;padding:9px;color:var(--muted);font-size:12px;text-transform:uppercase}.side-menu a{display:block;padding:9px 10px;border-radius:7px;text-decoration:none;font-size:14px;font-weight:800;color:#4c5d68}.side-menu a:hover,.side-menu a.active{background:var(--teal-soft);color:var(--teal)}.panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px}.panel+.panel{margin-top:18px}.panel-head{display:flex;justify-content:space-between;gap:16px;margin-bottom:18px}.panel h2{margin:0;color:var(--navy);font-size:24px}.panel-head p,.panel>p{margin:3px 0 0;color:var(--muted);font-size:14px}.controls{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;padding:15px;background:#edf3f5;border-radius:10px;margin-bottom:16px}.field label{display:block;margin-bottom:5px;color:#4f606c;font-size:12px;font-weight:900}.field input,.field select,.field textarea{width:100%;min-height:42px;padding:8px 10px;background:#fff;border:1px solid #cbd7dc;border-radius:8px}.field textarea{min-height:88px;resize:vertical}.button-row{display:flex;flex-wrap:wrap;gap:9px}.btn{min-height:42px;padding:8px 14px;border:0;border-radius:8px;background:var(--teal);color:#fff;text-decoration:none;font-weight:900;cursor:pointer}.btn.secondary{background:#fff;color:var(--navy);border:1px solid #cbd7dc}.btn.orange{background:var(--orange)}.status{padding:10px 12px;background:var(--teal-soft);border-radius:8px;color:#17646b;font-size:13px;font-weight:800}.topic-strip{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}.topic-tag{padding:5px 9px;background:#edf3f5;border-radius:99px;color:#4a5d68;font-size:12px;font-weight:800}.worksheet{margin-top:18px;padding:32px;background:#fff;border:1px solid #cfd8dd;min-height:480px}.worksheet-title{text-align:center;border-bottom:2px solid var(--navy);padding-bottom:14px}.worksheet-title h2{margin:0}.student-fields{display:flex;gap:28px;flex-wrap:wrap;margin:20px 0}.student-fields span{flex:1;min-width:170px;border-bottom:1px solid #82909a}.question-list{display:grid;gap:13px}.question-row{display:grid;grid-template-columns:28px 1fr auto;gap:9px;padding:10px;border:1px solid #e0e6e9;border-radius:8px}.question-row textarea{width:100%;min-height:62px;border:0;resize:vertical}.question-row button{width:34px;height:34px;border:0;border-radius:7px;background:#fff0f0;color:#b43a45}.answer-key{margin-top:22px;padding:16px;background:#f1f5f6;border-radius:9px}.answer-key[hidden]{display:none}.notice,.reference-box{margin-top:18px;padding:14px 16px;background:#fff0e8;border-left:4px solid var(--orange);font-size:13px}.reference-box{background:var(--teal-soft);border-color:var(--teal)}.reference-box a{color:var(--teal);font-weight:900}
.catalog-toolbar{display:grid;grid-template-columns:1fr 220px;gap:10px;margin-bottom:17px}.catalog-toolbar input,.catalog-toolbar select{min-height:43px;padding:8px 10px;border:1px solid #cbd7dc;border-radius:8px;background:#fff}.score-table,.schedule-table{width:100%;border-collapse:collapse}.score-table th,.score-table td,.schedule-table th,.schedule-table td{padding:9px;border:1px solid var(--line);text-align:left}.score-table th,.schedule-table th{background:#edf3f5;color:var(--navy);font-size:13px}.score-table input,.schedule-table input{width:100%;min-width:80px;padding:7px;border:1px solid #cbd7dc;border-radius:6px}.score-result{display:grid;grid-template-columns:180px 1fr;gap:20px;margin-top:18px;padding:20px;border-radius:10px;background:var(--navy);color:#fff}.score-number{font-size:52px;font-weight:900;line-height:1}.score-bars{display:grid;gap:7px}.score-bar{display:grid;grid-template-columns:120px 1fr 32px;gap:8px;align-items:center;font-size:12px}.bar-track{height:9px;background:#ffffff33;border-radius:99px;overflow:hidden}.bar-fill{height:100%;background:#52d0b4}.schedule-wrap{overflow:auto}.schedule-table{min-width:780px}.schedule-table td{padding:4px}.schedule-table input{min-width:120px;background:var(--cell,#fff)}.sticker-workspace{display:grid;grid-template-columns:280px 1fr;gap:18px}.sticker-controls{display:grid;gap:12px}.sticker-preview{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;align-content:start;background:#e9eef0;border-radius:11px;padding:22px}.name-sticker{aspect-ratio:2.4/1;padding:15px;display:flex;align-items:center;gap:13px;overflow:hidden;background:var(--sticker-bg,#fff);color:var(--sticker-color,#102a43);border:2px dashed #102a4333;border-radius:var(--radius,14px)}.sticker-symbol{font-size:35px}.sticker-text strong{display:block;font-size:var(--name-size,24px);line-height:1.05;font-family:var(--sticker-font,Nunito)}.sticker-text span{display:block;margin-top:4px;font-size:13px}.portal-foot{padding:27px 0;background:var(--navy);color:#bcd0dc}.portal-foot .wrap{display:flex;justify-content:space-between;gap:20px}.portal-foot strong{color:#fff}.portal-foot p{margin:2px 0 0;font-size:13px}.portal-foot nav{display:flex;gap:14px;flex-wrap:wrap}.portal-foot a{color:#e0ebf1;text-decoration:none;font-size:13px;font-weight:800}
@media(max-width:980px){.menu-toggle{display:block}.portal-nav{display:none;position:absolute;top:68px;left:0;right:0;z-index:20;background:var(--navy);padding:10px 20px 18px;flex-direction:column}.portal-nav.open{display:flex}.app-grid{grid-template-columns:repeat(2,1fr)}.tool-grid{grid-template-columns:1fr}.page-layout{grid-template-columns:1fr}.side-menu{position:static;display:flex;overflow:auto}.side-menu strong{display:none}.side-menu a{white-space:nowrap}.controls{grid-template-columns:repeat(2,1fr)}.sticker-workspace{grid-template-columns:1fr}}
@media(max-width:680px){.wrap{width:calc(100% - 26px)}.portal-brand small{display:none}.dashboard-head .wrap{display:block}.curriculum-note{margin-top:18px;max-width:none}.stats{grid-template-columns:1fr 1fr}.app-grid{grid-template-columns:1fr}.controls{grid-template-columns:1fr}.dashboard-head p,.page-head p{font-size:16px}.panel{padding:16px}.worksheet{padding:18px}.question-row{grid-template-columns:24px 1fr}.question-row button{grid-column:2;justify-self:end}.catalog-toolbar{grid-template-columns:1fr}.score-table{display:block;overflow:auto}.score-result{grid-template-columns:1fr}.sticker-preview{grid-template-columns:1fr}.portal-foot .wrap{display:block}.portal-foot nav{margin-top:14px}}
@media print{body{background:#fff}.portal-bar,.page-head,.side-menu,.controls,.button-row,.panel-head,.status,.portal-foot,.notice,.reference-box,.sticker-controls{display:none!important}.wrap{width:100%}.page-layout,.sticker-workspace{display:block;padding:0}.panel,.worksheet{border:0;margin:0;padding:0}.question-row,.name-sticker{break-inside:avoid}.sticker-preview{background:#fff;padding:0}.schedule-wrap{overflow:visible}.schedule-table{min-width:0;font-size:11px}.schedule-table input{border:0;min-width:0;padding:2px}.score-result{color:#000;background:#fff;border:1px solid #aaa}}

/* Identitas Bebiyu untuk ruang orang tua dan guru: warna merek dipertahankan,
   sedangkan kepadatan dan tipografi dibuat lebih tenang untuk pengguna dewasa. */
@font-face{font-family:'Baloo 2';font-weight:800;font-display:swap;src:url(../aset-situs/font/baloo-2-latin-800-normal.woff2) format('woff2')}
:root{--navy:#2d2740;--teal:#28addd;--teal-soft:#eaf8fd;--orange:#f26324;--ink:#292333;--muted:#6f6875;--line:#e9e4ec;--canvas:#fffaf7}
body{background:linear-gradient(180deg,#fff 0,#fffaf7 42%,#f7fbff 100%);min-height:100vh}
h1,h2,h3,.portal-brand,.btn,.stat b{font-family:'Baloo 2',Nunito,sans-serif}
.portal-bar{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.97);color:var(--ink);border-bottom:1px solid var(--line);box-shadow:0 5px 22px rgba(45,39,64,.07);backdrop-filter:blur(12px)}
.portal-bar .wrap{min-height:78px;gap:18px}.brand-logo{width:auto;height:42px;object-fit:contain;flex:none}.portal-brand{font-size:17px;color:var(--ink)}.portal-brand small{color:#83798b;font-family:Nunito,sans-serif}.portal-nav{gap:2px}.portal-nav a{color:#51495c;border-radius:999px}.portal-nav a:hover,.portal-nav a.active{background:#fff0e8;color:#c94814}.menu-toggle{border-color:#e5dfe8;background:#fff5f0;color:var(--orange)}
.portal-home-link{display:inline-flex;align-items:center;gap:6px;padding:9px 13px;border:1px solid #ffd2bd;border-radius:999px;background:#fff7f2;color:#c94814;text-decoration:none;font-size:13px;font-weight:900;white-space:nowrap}.portal-home-link:hover{background:var(--orange);color:#fff}.portal-home-link span{font-size:17px}
.dashboard-head,.page-head{background:radial-gradient(circle at 90% 10%,#ffe6f2 0,transparent 28%),radial-gradient(circle at 75% 80%,#e2f7ff 0,transparent 30%),#fff;border-bottom-color:#f0e8ed}.dashboard-head h1,.page-head h1,.section-title h2,.panel h2,.app-card h3,.tool-card h3{color:#312747}.kicker,.text-link,.breadcrumbs a{color:#d64a8e}.curriculum-note{background:#f4efff;border-left-color:#6d57d8;color:#5d5270}.app-card,.tool-card,.panel,.stat,.side-menu{border-color:#eee7ef;border-radius:20px;box-shadow:0 8px 24px rgba(50,37,69,.055)}.app-card{border-top:5px solid var(--accent,var(--teal))}.app-card:before{display:none}.app-icon{background:#f1edff;color:#6753d7;border-radius:13px}.tool-icon{background:linear-gradient(145deg,#6753d7,#e64a9b);border-radius:14px}.controls{background:#f8f4fa}.field input,.field select,.field textarea,.catalog-toolbar input,.catalog-toolbar select{border-radius:12px}.btn{border-radius:999px;background:#31aee0}.btn.orange{background:var(--orange)}.btn.secondary{border-radius:999px}.topic-tag{background:#fff0f7;color:#ae3b75}.status{background:#eaf8fd;color:#176784}.side-menu a:hover,.side-menu a.active{background:#fff0e8;color:#c94814}.portal-foot{background:linear-gradient(120deg,#312747,#5744a7);color:#dcd4ec}.portal-foot a{color:#fff}
.activity-builder{display:grid;grid-template-columns:300px minmax(0,1fr);gap:18px}.activity-form{display:grid;gap:13px}.activity-plan{border:1px solid #eadfeb;border-radius:20px;background:#fff;overflow:hidden}.activity-plan-head{padding:22px 24px;background:linear-gradient(115deg,#fff1e8,#ffeefa 52%,#e9f8ff)}.activity-plan-head h2{font-size:29px}.activity-plan-body{padding:24px}.activity-block{padding:15px 0;border-bottom:1px solid var(--line)}.activity-block:last-child{border-bottom:0}.activity-block h3{margin:0 0 7px;font-size:17px}.activity-block [contenteditable]{min-height:28px;padding:8px 10px;border:1px dashed #cfc5d2;border-radius:10px;background:#fff}.activity-block ol{margin:0;padding-left:22px}.activity-block li{margin:7px 0}.activity-block li[contenteditable]{padding:5px 7px;border:1px dashed transparent}.activity-block li[contenteditable]:focus{border-color:#cfc5d2;outline:0;background:#fffaf7}.activity-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.activity-meta span{padding:5px 9px;border-radius:999px;background:#fff;color:#665b70;font-size:12px;font-weight:900}
@media(max-width:1100px){.portal-brand>span{display:none}.portal-bar .wrap{gap:10px}.brand-logo{height:38px}.portal-nav a{padding:8px 9px;font-size:13px}}
@media(max-width:980px){.portal-nav{background:#fff;border-top:1px solid var(--line);top:78px}.portal-nav a{color:#51495c}.portal-home-link{margin-left:auto}.activity-builder{grid-template-columns:1fr}}
@media(max-width:680px){.portal-bar .wrap{min-height:68px}.brand-logo{height:35px}.portal-home-link{font-size:0;padding:8px 11px}.portal-home-link span{font-size:19px}.portal-nav{top:68px}.dashboard-head,.page-head{padding:28px 0}.activity-plan-head,.activity-plan-body{padding:18px}}
@media print{.portal-home-link{display:none!important}.activity-form{display:none}.activity-builder{display:block}.activity-plan{border:0}.activity-plan-head{background:#fff;border-bottom:2px solid #333}}
