:root{--bg:#f3f7f5;--surface:#fff;--surface-2:#f7faf8;--text:#16241e;--muted:#6b7d74;--line:#dfe9e4;--primary:#0f6b46;--primary-2:#159767;--primary-3:#dff4ea;--danger:#d54242;--warning:#e89b25;--info:#2e78d0;--purple:#7956c7;--shadow:0 14px 38px rgba(29,69,50,.08);--shadow-lg:0 24px 70px rgba(16,58,41,.16);--radius:18px;--sidebar:278px;--topbar:78px;--sidebar-bg:#0d3f2d;--sidebar-text:#dcebe4;--sidebar-muted:#9dc5b3;--sidebar-label:#7ea792;--sidebar-item:#bdd7ca;--sidebar-profile:#89ac9c;--sidebar-accent:#55e2aa;--hero-start:#0c4f36;--hero-mid:#0f7750;--hero-end:#22a86f;--hero-accent:#9ef0c9;--hero-copy:#d8eee4;--login-start:#073f2a;--login-mid:#0d754c;--login-end:#1ba36d}
html[data-theme="dark"]{--bg:#101714;--surface:#17201c;--surface-2:#1d2924;--text:#edf6f1;--muted:#9db1a7;--line:#2c3b34;--primary:#29b77d;--primary-2:#3ac98f;--primary-3:#203c31;--shadow:0 14px 38px rgba(0,0,0,.25);--shadow-lg:0 24px 70px rgba(0,0,0,.42)}
html[data-color-theme="emerald"]{--primary:#0f6b46;--primary-2:#159767;--primary-3:#dff4ea;--sidebar-bg:#0d3f2d;--sidebar-text:#dcebe4;--sidebar-muted:#9dc5b3;--sidebar-label:#7ea792;--sidebar-item:#bdd7ca;--sidebar-profile:#89ac9c;--sidebar-accent:#55e2aa;--hero-start:#0c4f36;--hero-mid:#0f7750;--hero-end:#22a86f;--hero-accent:#9ef0c9;--hero-copy:#d8eee4;--login-start:#073f2a;--login-mid:#0d754c;--login-end:#1ba36d}
html[data-color-theme="blue"]{--primary:#1d4ed8;--primary-2:#3b82f6;--primary-3:#e6efff;--sidebar-bg:#102a56;--sidebar-text:#e2ecff;--sidebar-muted:#a9bee8;--sidebar-label:#829dcc;--sidebar-item:#c3d3f3;--sidebar-profile:#9cb2da;--sidebar-accent:#72b6ff;--hero-start:#173b86;--hero-mid:#1d5fc4;--hero-end:#3b82f6;--hero-accent:#c7dcff;--hero-copy:#e0ebff;--login-start:#102a64;--login-mid:#174da6;--login-end:#2f7be5}
html[data-color-theme="orange"]{--primary:#c75b0a;--primary-2:#f28c28;--primary-3:#fff0df;--sidebar-bg:#4a250d;--sidebar-text:#fff0df;--sidebar-muted:#e8bd91;--sidebar-label:#c79463;--sidebar-item:#f1ceb0;--sidebar-profile:#d9ad84;--sidebar-accent:#ffb45e;--hero-start:#8e3607;--hero-mid:#c75b0a;--hero-end:#f28c28;--hero-accent:#ffe0b5;--hero-copy:#fff0df;--login-start:#6d2805;--login-mid:#b54c08;--login-end:#ec7b1d}
html[data-theme="dark"][data-color-theme="emerald"]{--primary:#29b77d;--primary-2:#3ac98f;--primary-3:#203c31}
html[data-theme="dark"][data-color-theme="blue"]{--primary:#60a5fa;--primary-2:#7cb7ff;--primary-3:#1d304d}
html[data-theme="dark"][data-color-theme="orange"]{--primary:#fb923c;--primary-2:#ffad66;--primary-3:#49301f}
html,body,.sidebar,.topbar,.panel,.btn,.icon-btn,.nav-item,.hero-card,.login-visual,.login-form-wrap,.login-card{transition:background-color .22s ease,color .22s ease,border-color .22s ease,box-shadow .22s ease}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text);font-size:14px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%}.hidden{display:none!important}.mt-2{margin-top:9px}.grow{flex:1}.span-2{grid-column:span 2}.eyebrow{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.14em;color:var(--primary-2);text-transform:uppercase}.muted{color:var(--muted)}
.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);background:var(--sidebar-bg);color:var(--sidebar-text);z-index:80;display:flex;flex-direction:column;box-shadow:12px 0 40px color-mix(in srgb,var(--sidebar-bg) 22%,transparent);transition:.25s ease}.brand{height:84px;display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid rgba(255,255,255,.1)}.brand-logo{width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,var(--primary-2),var(--primary));display:grid;place-items:center;box-shadow:0 8px 24px rgba(0,0,0,.18);flex:0 0 auto;overflow:hidden}.brand-logo span{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-weight:800;color:white;font-size:17px}.brand-logo img{width:100%;height:100%;object-fit:cover}.brand-copy{min-width:0;display:flex;flex-direction:column}.brand-copy strong{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:14px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-copy small{font-size:10px;color:var(--sidebar-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-close{display:none!important;color:#fff;margin-left:auto}.nav{padding:12px 12px 18px;overflow-y:auto;flex:1;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent}.nav-label{font-size:9px;letter-spacing:.13em;font-weight:800;color:var(--sidebar-label);padding:18px 11px 7px}.nav-item{display:flex;align-items:center;gap:11px;min-height:42px;padding:10px 11px;margin:2px 0;border-radius:11px;color:var(--sidebar-item);transition:.2s ease;position:relative}.nav-item svg{flex:0 0 auto}.nav-item span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-item:hover{background:rgba(255,255,255,.08);color:#fff;transform:translateX(2px)}.nav-item.active{background:linear-gradient(135deg,color-mix(in srgb,var(--sidebar-accent) 22%,transparent),color-mix(in srgb,var(--sidebar-accent) 8%,transparent));color:#fff;box-shadow:inset 3px 0 var(--sidebar-accent)}.nav-feature{border:1px solid color-mix(in srgb,var(--sidebar-accent) 22%,transparent)}.nav-feature b{margin-left:auto;font-size:8px;background:#ffcc59;color:#4d3500;border-radius:99px;padding:2px 6px}.sidebar-profile{padding:13px 14px;border-top:1px solid rgba(255,255,255,.1);display:flex;align-items:center;gap:8px}.profile-link{display:flex;align-items:center;gap:9px;min-width:0;flex:1}.profile-link>span:last-child{display:flex;flex-direction:column;min-width:0}.profile-link strong{font-size:12px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-link small{font-size:10px;color:var(--sidebar-profile)}.avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--primary-2),var(--primary));display:grid;place-items:center;color:white;font-weight:800;flex:0 0 auto}.sidebar-profile .icon-btn{color:var(--sidebar-item)}.main-area{margin-left:var(--sidebar);min-height:100vh;display:flex;flex-direction:column}.topbar{height:var(--topbar);position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--surface) 90%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px}.topbar-left{display:flex;align-items:center;gap:13px}.topbar-left h1{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:20px;line-height:1.2;margin:0}.topbar-left p{margin:3px 0 0;color:var(--muted);font-size:11px}.menu-toggle{display:none}.topbar-actions{display:flex;align-items:center;gap:10px}.today-pill{display:flex;align-items:center;gap:8px;background:var(--surface-2);border:1px solid var(--line);padding:8px 12px;border-radius:99px;color:var(--muted);font-size:11px}.pulse-dot{width:7px;height:7px;border-radius:50%;background:#2ecc71;box-shadow:0 0 0 5px rgba(46,204,113,.12)}.top-avatar{width:38px;height:38px}.page-content{padding:24px 28px 36px;flex:1;max-width:1720px;width:100%;margin:0 auto}.footer{padding:15px 28px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted);font-size:10px}.mobile-nav{display:none}.sidebar-overlay{display:none}
.icon-btn{width:38px;height:38px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--text);display:grid;place-items:center;padding:0;transition:.2s}.icon-btn:hover{transform:translateY(-1px);box-shadow:var(--shadow);border-color:var(--primary)}.btn{border:1px solid transparent;border-radius:11px;min-height:40px;padding:9px 14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;font-size:12px;transition:.2s ease;white-space:nowrap}.btn:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(18,97,66,.14)}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff}.btn-outline{border-color:var(--line);background:var(--surface);color:var(--text)}.btn-soft{background:var(--primary-3);color:var(--primary)}.btn-light{background:white;color:var(--primary)}.btn-ghost-light{border-color:rgba(255,255,255,.35);color:#fff;background:rgba(255,255,255,.08)}.btn-danger{background:var(--danger);color:#fff}.btn-sm{min-height:34px;padding:7px 11px;font-size:11px;border-radius:9px}.btn-lg{min-height:48px;padding:12px 18px;font-size:13px}.btn-block{width:100%}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:17px}.panel-head h3{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:15px;margin:0}.panel-head p{margin:3px 0 0;color:var(--muted);font-size:11px}.panel-head>a{color:var(--primary);font-size:11px;font-weight:700}.toolbar-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.page-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.search-box{display:flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--line);padding:5px 6px 5px 12px;border-radius:12px;min-width:330px}.search-box input{border:0;background:transparent;outline:0;flex:1;color:var(--text);min-width:0}.search-box svg{color:var(--muted)}
.alert{border-radius:12px;padding:12px 14px;margin-bottom:15px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:600}.alert.success{background:#e7f8ef;color:#14643f;border:1px solid #bfe9d2}.alert.danger{background:#fff0f0;color:#9c2d2d;border:1px solid #f0c9c9}.alert.warning{background:#fff7e7;color:#855512;border:1px solid #f2ddb3}.alert.info{background:#edf5ff;color:#245d96;border:1px solid #ccdef3}.alert button{border:0;background:transparent;color:inherit;font-size:20px}.notice{padding:12px 14px;border-radius:12px;margin-top:12px}.notice.info{background:var(--surface-2);border:1px solid var(--line);color:var(--muted)}.badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border-radius:99px;font-size:9px;font-weight:800;letter-spacing:.03em}.badge.success{background:#e1f6ea;color:#146a43}.badge.warning{background:#fff2d8;color:#9b6207}.badge.info{background:#e5f0ff;color:#2a61a0}.badge.danger{background:#ffe4e4;color:#a22929}.badge.neutral{background:var(--surface-2);color:var(--muted)}
.hero-card{min-height:280px;border-radius:24px;background:linear-gradient(125deg,var(--hero-start) 0%,var(--hero-mid) 52%,var(--hero-end) 100%);color:#fff;padding:34px 38px;display:flex;align-items:center;justify-content:space-between;position:relative;overflow:hidden;box-shadow:0 22px 55px color-mix(in srgb,var(--primary) 28%,transparent);margin-bottom:20px}.hero-card:before{content:"";position:absolute;width:350px;height:350px;border-radius:50%;background:rgba(255,255,255,.06);right:-80px;top:-110px}.hero-copy{max-width:650px;position:relative;z-index:2}.hero-copy .eyebrow{color:var(--hero-accent)}.hero-copy h2{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:32px;line-height:1.22;margin:10px 0 9px}.hero-copy h2 em{font-style:normal;color:var(--hero-accent)}.hero-copy p{margin:0 0 22px;color:var(--hero-copy);max-width:560px}.hero-actions{display:flex;gap:9px}.hero-visual{width:250px;height:210px;position:relative;display:grid;place-items:center}.hero-ring{position:absolute;border:1px solid rgba(255,255,255,.2);border-radius:50%}.ring-1{width:210px;height:210px}.ring-2{width:150px;height:150px}.sport-card{position:relative;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(12px);width:175px;height:175px;border-radius:40px;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(3deg);box-shadow:0 18px 40px rgba(0,0,0,.14)}.sport-card .sport-icon{font-size:45px;margin-bottom:8px}.sport-card strong{font-size:14px}.sport-card small{color:#cbecde}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.stat-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:16px;display:flex;align-items:center;gap:13px;box-shadow:var(--shadow)}.stat-card>div:last-child{display:flex;flex-direction:column;min-width:0}.stat-card span{font-size:10px;color:var(--muted);font-weight:600}.stat-card strong{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:24px;line-height:1.15}.stat-card small{font-size:9px;color:var(--muted)}.stat-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;font-weight:800;flex:0 0 auto}.stat-icon.green{background:#e4f7ec;color:#16704a}.stat-icon.blue{background:#e7f1ff;color:#2d6bb2}.stat-icon.orange{background:#fff1db;color:#a96707}.stat-icon.purple{background:#efe9ff;color:#6b4eb2}.stat-icon.red{background:#ffe8e8;color:#b63737}.dashboard-grid{display:grid;grid-template-columns:1.4fr 1.4fr 1fr;gap:16px;margin-bottom:16px}.dashboard-grid .span-2{grid-column:span 2}.schedule-list{display:flex;flex-direction:column;gap:7px}.schedule-row{display:flex;align-items:center;gap:13px;padding:11px 3px;border-bottom:1px dashed var(--line)}.schedule-row:last-child{border-bottom:0}.schedule-time{display:flex;flex-direction:column;align-items:center;width:48px}.schedule-time strong{font-size:13px}.schedule-time span{font-size:9px;color:var(--muted)}.schedule-line{width:3px;height:38px;border-radius:99px;background:linear-gradient(var(--primary),var(--primary-2))}.schedule-info{display:flex;flex-direction:column;flex:1;min-width:0}.schedule-info strong{font-size:12px}.schedule-info span{font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.alert-list{display:flex;flex-direction:column}.alert-list a{display:flex;align-items:center;gap:11px;padding:12px 0;border-bottom:1px solid var(--line)}.alert-list a:last-child{border:0}.alert-list a>div{display:flex;flex-direction:column;flex:1}.alert-list strong{font-size:11px}.alert-list small{font-size:9px;color:var(--muted)}.alert-list b{color:var(--muted)}.alert-dot{width:9px;height:9px;border-radius:50%}.alert-dot.danger{background:var(--danger)}.alert-dot.warning{background:var(--warning)}.alert-dot.info{background:var(--info)}.task-list{display:flex;flex-direction:column;gap:10px}.task-item{display:flex;align-items:flex-start;gap:10px}.task-item>div{display:flex;flex-direction:column}.task-item strong{font-size:11px}.task-item small{font-size:9px;color:var(--muted)}.priority{width:7px;height:34px;border-radius:99px;flex:0 0 auto}.priority.tinggi{background:var(--danger)}.priority.sedang{background:var(--warning)}.priority.rendah{background:var(--info)}.mini-chart{height:210px;display:flex;align-items:flex-end;justify-content:space-around;gap:12px;padding:25px 10px 4px}.bar-group{height:100%;flex:1;max-width:54px;display:flex;flex-direction:column;align-items:center;gap:5px}.bar-value{font-size:9px;color:var(--muted)}.bar-track{height:calc(100% - 34px);width:22px;background:var(--surface-2);border-radius:99px;position:relative;overflow:hidden}.bar-fill{position:absolute;left:0;right:0;bottom:0;border-radius:99px;background:linear-gradient(to top,var(--primary),var(--primary-2));min-height:5px}.bar-group>span{font-size:9px;color:var(--muted)}.activity-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px}.activity-item{display:flex;align-items:center;gap:10px;padding:8px 0}.activity-icon{width:30px;height:30px;border-radius:10px;background:var(--primary-3);color:var(--primary);display:grid;place-items:center}.activity-item>div{display:flex;flex-direction:column}.activity-item strong{font-size:10px}.activity-item small{font-size:9px;color:var(--muted)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:10px;font-weight:800;color:var(--text)}.field label small{font-weight:500;color:var(--muted)}.field input,.field select,.field textarea,.filter-row input,.filter-row select{width:100%;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:11px;padding:10px 11px;outline:0;transition:.2s}.field input,.field select{min-height:41px}.field textarea{resize:vertical}.field input:focus,.field select:focus,.field textarea:focus,.filter-row input:focus,.filter-row select:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 15%,transparent)}.field-help{font-size:9px;color:var(--muted)}.divider-title{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:13px;font-weight:800;border-top:1px solid var(--line);padding-top:12px;margin-top:4px}.filter-card{margin-bottom:16px}.filter-row{display:flex;align-items:flex-end;gap:12px}.filter-row .field{min-width:180px}.table-panel{padding:0;overflow:hidden}.table-panel>.panel-head{padding:19px 20px 0}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:860px}.data-table th{background:var(--surface-2);font-size:9px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);text-align:left;padding:11px 13px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);white-space:nowrap}.data-table td{padding:11px 13px;border-bottom:1px solid var(--line);font-size:10px;vertical-align:middle}.data-table tr:hover td{background:color-mix(in srgb,var(--primary-3) 28%,transparent)}.data-table strong{font-size:10px}.num-col{width:48px}.action-col{width:95px}.row-actions{display:flex;align-items:center;gap:5px}.row-actions form{display:inline-flex;margin:0}.icon-action{width:31px;height:31px;border:1px solid var(--line);background:var(--surface);border-radius:9px;display:grid;place-items:center;color:var(--muted);padding:0}.icon-action:hover{color:var(--primary);border-color:var(--primary)}.icon-action.danger:hover{color:var(--danger);border-color:var(--danger)}.pagination{display:flex;gap:5px;padding:15px 20px}.pagination a{width:32px;height:32px;border:1px solid var(--line);display:grid;place-items:center;border-radius:8px;font-size:10px}.pagination a.active{background:var(--primary);color:#fff;border-color:var(--primary)}.empty-state{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;color:var(--muted)}.empty-state>div{font-size:38px}.empty-state strong{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:15px;color:var(--text)}.empty-state p{margin:5px 0 14px;max-width:360px}.empty-state.compact{min-height:130px;padding:18px}.empty-state.compact>div{font-size:28px}.empty-mini{padding:18px;text-align:center;color:var(--muted);font-size:10px}.health-note{display:block;color:var(--warning);font-size:8px;margin-top:3px}.sticky-save{position:sticky;bottom:0;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(12px);border-top:1px solid var(--line);padding:13px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:5}.sticky-save>div{display:flex;flex-direction:column}.sticky-save strong{font-size:11px}.sticky-save small{font-size:9px;color:var(--muted)}
.modal{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;padding:20px}.modal.show{display:flex}.modal-backdrop{position:absolute;inset:0;background:rgba(3,18,12,.58);backdrop-filter:blur(5px)}.modal-card{position:relative;width:min(680px,96vw);max-height:92vh;background:var(--surface);border-radius:20px;box-shadow:var(--shadow-lg);overflow:auto;border:1px solid var(--line)}.modal-lg{width:min(920px,96vw)}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;padding:19px 20px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--surface);z-index:2}.modal-head h3{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;margin:0;font-size:16px}.modal-head p{margin:3px 0 0;color:var(--muted);font-size:10px}.form-body{padding:20px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:8px}
.generator-hero{padding:28px 30px;border-radius:22px;background:linear-gradient(125deg,color-mix(in srgb,var(--primary-3) 78%,#fff),color-mix(in srgb,var(--primary-3) 30%,#fff));border:1px solid color-mix(in srgb,var(--primary) 16%,var(--line));display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:17px}.generator-hero h2{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:25px;margin:8px 0 4px}.generator-hero p{margin:0;color:var(--muted)}.generator-badge{min-width:310px;background:white;border:1px solid color-mix(in srgb,var(--primary) 15%,var(--line));border-radius:16px;padding:15px;display:flex;align-items:center;gap:12px;color:var(--primary);box-shadow:0 12px 28px color-mix(in srgb,var(--primary) 12%,transparent)}.generator-badge>span{display:flex;flex-direction:column}.generator-badge small{font-size:9px;color:var(--muted)}.generator-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,.7fr);gap:16px}.step-pill{font-size:9px;font-weight:800;background:var(--primary-3);color:var(--primary);padding:5px 9px;border-radius:99px}.generator-action{justify-content:flex-end}.generator-preview-card{background:linear-gradient(180deg,var(--surface),var(--surface-2));height:max-content;position:sticky;top:100px}.preview-icon{font-size:38px}.generator-preview-card h3{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif}.auto-checks{display:flex;flex-direction:column;gap:10px}.auto-checks span{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--muted)}.auto-checks svg{color:var(--primary)}.tip-card{margin-top:18px;background:var(--primary-3);border-radius:12px;padding:13px;color:var(--primary)}.tip-card p{font-size:9px;margin:4px 0 0}.module-edit-form .field textarea{min-height:125px}.module-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;padding:0 20px 20px}.module-card{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface);display:flex;flex-direction:column}.module-cover{height:128px;background:linear-gradient(135deg,var(--hero-start),var(--primary-2));color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden}.module-cover:before{content:"";position:absolute;width:140px;height:140px;border:22px solid rgba(255,255,255,.07);border-radius:50%;right:-48px;top:-45px}.module-cover span{font-size:8px;letter-spacing:.18em}.module-cover strong{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:26px}.module-cover small{font-size:8px;color:var(--hero-copy)}.module-card-body{padding:14px;flex:1}.module-meta{display:flex;justify-content:space-between}.module-meta small{color:var(--muted);font-size:8px}.module-card-body h3{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:13px;margin:9px 0 5px}.module-card-body p{font-size:9px;color:var(--muted);margin:0}.module-code{font-size:8px;color:var(--primary);display:block;margin-top:8px}.module-card-actions{display:flex;align-items:center;gap:5px;padding:10px 14px;border-top:1px solid var(--line)}.module-card-actions .btn{margin-right:auto}.module-card-actions form{display:flex}.module-document{padding:28px}.module-doc-header{display:grid;grid-template-columns:70px 1fr auto;align-items:center;gap:16px;padding-bottom:20px;border-bottom:3px double var(--text)}.doc-logo{width:64px;height:64px;border-radius:14px;background:var(--primary);color:#fff;display:grid;place-items:center;font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-weight:800;font-size:20px;overflow:hidden}.doc-logo img{width:100%;height:100%;object-fit:cover}.module-doc-header>div:nth-child(2)>span{font-size:9px;letter-spacing:.12em;color:var(--primary);font-weight:800}.module-doc-header h2{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:17px;margin:4px 0}.module-doc-header p{margin:0;color:var(--muted);font-size:10px}.doc-status{display:flex;flex-direction:column;align-items:flex-end;gap:7px}.doc-status small{font-size:8px;color:var(--muted)}.doc-identity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin:20px 0}.doc-identity-grid>div{background:var(--surface);padding:12px;display:flex;flex-direction:column}.doc-identity-grid span{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.doc-identity-grid strong{font-size:10px;margin-top:3px}.doc-section{margin:18px 0}.doc-section h3{display:flex;align-items:center;gap:9px;font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:13px;margin:0 0 8px}.doc-section h3 span{width:26px;height:26px;border-radius:8px;background:var(--primary-3);color:var(--primary);display:grid;place-items:center;font-size:10px}.doc-section-content{padding-left:35px;color:var(--text)}.doc-section-content ul{margin:0;padding-left:17px}.doc-section-content li{margin-bottom:4px;font-size:10px}.signature-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;text-align:center;margin-top:55px}.signature-grid p{font-size:10px}.signature-grid strong{display:block;margin-top:55px;text-decoration:underline;font-size:10px}.signature-grid small{font-size:9px;color:var(--muted)}
.compact-stats .stat-card{padding:12px}.status-options{display:flex;gap:4px}.status-choice input{display:none}.status-choice span{display:inline-flex;padding:6px 8px;border:1px solid var(--line);border-radius:8px;font-size:8px;font-weight:700;cursor:pointer}.status-choice input:checked+span{color:#fff}.status-choice.hadir input:checked+span{background:var(--primary);border-color:var(--primary)}.status-choice.sakit input:checked+span{background:var(--info);border-color:var(--info)}.status-choice.izin input:checked+span{background:var(--warning);border-color:var(--warning)}.status-choice.alpa input:checked+span{background:var(--danger);border-color:var(--danger)}.attendance-table input[type=text],.attendance-table input:not([type]){border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:8px;padding:7px;width:100%}.auto-journal-box,.backup-panel{margin-top:16px;display:flex;align-items:center;justify-content:space-between;gap:14px}.auto-journal-box>div,.backup-panel>div{display:flex;align-items:center;gap:12px}.auto-journal-box h3,.backup-panel h3{margin:0;font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:13px}.auto-journal-box p,.backup-panel p{margin:3px 0 0;color:var(--muted);font-size:9px}.auto-icon,.backup-icon{width:45px;height:45px;border-radius:14px;background:var(--primary-3);color:var(--primary);display:grid;place-items:center}.assessment-summary{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.assessment-summary h2{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;margin:8px 0 4px;font-size:20px}.assessment-summary p{margin:0;color:var(--muted);font-size:10px}.score-circle{width:92px;height:92px;border-radius:50%;background:conic-gradient(var(--primary) 0 75%,var(--surface-2) 75%);display:grid;place-items:center;position:relative}.score-circle:before{content:"";position:absolute;width:70px;height:70px;border-radius:50%;background:var(--surface)}.score-circle strong,.score-circle span{position:absolute;z-index:1}.score-circle strong{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:20px;transform:translateY(-7px)}.score-circle span{font-size:8px;color:var(--muted);transform:translateY(13px)}.score-input{width:90px;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:9px;padding:7px}.grade-predicate{width:30px;height:30px;border-radius:8px;background:var(--primary-3);color:var(--primary);display:grid;place-items:center;font-weight:800}
.import-hero{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,var(--surface),var(--primary-3));margin-bottom:16px}.import-hero h2{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:24px;margin:8px 0 4px}.import-hero p{margin:0;color:var(--muted)}.excel-mark{width:90px;height:90px;border-radius:22px;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;display:grid;place-items:center;font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:18px;font-weight:800;transform:rotate(4deg)}.data-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.import-card{padding:17px;display:flex;flex-direction:column}.import-card.selected{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)}.import-card-icon{width:47px;height:47px;border-radius:14px;background:var(--primary-3);color:var(--primary);display:grid;place-items:center}.import-card h3{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:13px;margin:12px 0 5px}.import-card p{font-size:9px;color:var(--muted);margin:0 0 15px;flex:1}.import-card-actions{display:flex;gap:6px}.import-form-panel{margin-bottom:16px}.dropzone{min-height:165px;border:2px dashed var(--line);border-radius:15px;display:flex!important;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;background:var(--surface-2);transition:.2s}.dropzone:hover{border-color:var(--primary);background:var(--primary-3)}.dropzone input{display:none}.dropzone-icon{color:var(--primary);margin-bottom:8px}.dropzone small{color:var(--muted);font-weight:500}.check-line{display:flex!important;flex-direction:row!important;align-items:center;gap:8px}.check-line input{width:16px;height:16px;min-height:auto}.progress-cell{height:22px;min-width:105px;background:var(--surface-2);border-radius:99px;position:relative;overflow:hidden}.progress-cell span{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,var(--primary),var(--primary-2));border-radius:99px}.progress-cell b{position:absolute;inset:0;display:grid;place-items:center;font-size:8px;color:var(--text)}
.automation-hero{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,var(--surface),var(--primary-3));margin-bottom:16px}.automation-hero h2{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:24px;margin:8px 0 4px}.automation-hero p{margin:0;color:var(--muted)}.automation-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.automation-card-head{display:flex;align-items:center;justify-content:space-between}.automation-card .auto-icon{width:44px;height:44px}.auto-icon.green{background:#e4f7ec;color:#16704a}.auto-icon.orange{background:#fff1db;color:#a96707}.auto-icon.blue{background:#e7f1ff;color:#2d6bb2}.auto-icon.purple{background:#efe9ff;color:#6b4eb2}.automation-card h3{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:13px;margin:13px 0 5px}.automation-card p{margin:0;color:var(--muted);font-size:9px}.code-copy{display:flex;align-items:center;background:#0f1713;color:#bcead6;border-radius:12px;padding:12px 14px;gap:10px}.code-copy code{flex:1;overflow:auto;white-space:nowrap;font-size:10px}.code-copy button{border:1px solid #325546;background:#183f2e;color:#d8f6e8;border-radius:8px;padding:7px 10px}.logo-upload-row{display:flex;flex-direction:row;align-items:center;gap:14px}.logo-upload-row>div:last-child{flex:1}.logo-preview{width:80px;height:80px;border-radius:20px;background:var(--primary);color:#fff;display:grid;place-items:center;font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:24px;font-weight:800;overflow:hidden}.logo-preview img{width:100%;height:100%;object-fit:cover}.profile-layout{display:grid;grid-template-columns:280px 1fr;gap:16px}.profile-summary{text-align:center;display:flex;flex-direction:column;align-items:center}.profile-avatar-large{width:100px;height:100px;border-radius:32px;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;display:grid;place-items:center;font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:34px;font-weight:800;box-shadow:0 16px 35px color-mix(in srgb,var(--primary) 25%,transparent)}.profile-summary h2{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:18px;margin:14px 0 7px}.profile-summary p{color:var(--muted);font-size:10px}
.login-body,.install-body{min-height:100vh;background:color-mix(in srgb,var(--primary-3) 55%,#f4f7f6)}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.25fr .75fr}.login-visual{position:relative;background:linear-gradient(135deg,var(--login-start),var(--login-mid) 64%,var(--login-end));padding:38px 52px;color:#fff;overflow:hidden;display:flex;flex-direction:column}.login-visual:before,.login-visual:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.13)}.login-visual:before{width:600px;height:600px;right:-210px;top:-180px}.login-visual:after{width:360px;height:360px;right:-50px;bottom:-170px}.login-brand{display:flex;align-items:center;gap:11px;position:relative;z-index:2}.login-brand-mark{width:45px;height:45px;border-radius:14px;background:linear-gradient(135deg,var(--primary-2),var(--primary));display:grid;place-items:center;font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-weight:800}.login-brand>div{display:flex;flex-direction:column}.login-brand strong{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif}.login-brand small{font-size:9px;color:var(--hero-copy)}.login-copy{margin:auto 0;max-width:650px;position:relative;z-index:2}.login-copy .eyebrow{color:var(--hero-accent)}.login-copy h1{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:45px;line-height:1.15;margin:12px 0}.login-copy h1 em{font-style:normal;color:var(--hero-accent)}.login-copy p{font-size:15px;color:var(--hero-copy);max-width:550px}.login-features{display:flex;flex-direction:column;gap:8px;margin-top:24px;color:var(--hero-copy)}.login-orbit{position:absolute;right:90px;bottom:110px;width:150px;height:150px;border-radius:50%;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);display:grid;place-items:center;backdrop-filter:blur(8px);transform:rotate(8deg)}.login-orbit span{font-size:66px}.login-form-wrap{display:grid;place-items:center;padding:30px;background:color-mix(in srgb,var(--primary-3) 32%,#fff)}.login-card{width:min(390px,100%);background:white;border:1px solid color-mix(in srgb,var(--primary) 16%,#e5e7eb);border-radius:24px;padding:32px;box-shadow:0 30px 80px color-mix(in srgb,var(--primary) 16%,transparent)}.login-card h2{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:26px;margin:0}.login-card>p{margin:4px 0 22px;color:#768a80}.login-card .field{margin-bottom:14px}.password-wrap{position:relative}.password-wrap input{padding-right:58px}.password-wrap button{position:absolute;right:8px;top:7px;border:0;background:color-mix(in srgb,var(--primary-3) 55%,#f4f7f6);color:var(--primary);padding:6px 8px;border-radius:7px;font-size:9px}.login-note{display:block;text-align:center;color:#879b91;margin-top:14px}.login-mobile-brand{display:none}.install-shell{width:min(1180px,94vw);margin:35px auto;display:grid;grid-template-columns:.8fr 1.2fr;background:#fff;border-radius:26px;overflow:hidden;box-shadow:0 30px 80px color-mix(in srgb,var(--primary) 16%,transparent)}.install-hero{background:linear-gradient(145deg,var(--login-start),var(--login-mid));color:#fff;padding:48px;display:flex;flex-direction:column;justify-content:center}.install-hero .eyebrow{color:var(--hero-accent)}.install-hero h1{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:35px;line-height:1.1;margin:12px 0}.install-hero p{color:var(--hero-copy)}.feature-stack{display:flex;flex-direction:column;gap:9px;margin-top:18px}.install-card{padding:34px}.install-title h2{font-family:Manrope,Inter,Segoe UI,Arial,sans-serif;font-size:24px;margin:0}.install-title p{margin:4px 0 18px;color:#73877d}.requirements{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:18px}.req{font-size:9px;padding:5px 8px;border-radius:99px}.req.ok{background:#e5f7ed;color:#166c46}.req.bad{background:#ffe9e9;color:#a52e2e}
@media(max-width:1250px){:root{--sidebar:250px}.dashboard-grid{grid-template-columns:1.2fr 1fr}.dashboard-grid .span-2{grid-column:span 1}.dashboard-grid>article:nth-child(3){grid-column:span 2}.module-card-grid{grid-template-columns:repeat(2,1fr)}.data-action-grid,.automation-grid{grid-template-columns:repeat(2,1fr)}.hero-copy h2{font-size:28px}}
@media(max-width:980px){:root{--sidebar:280px}.sidebar{transform:translateX(-105%)}.sidebar.open{transform:translateX(0)}.sidebar-close{display:grid!important}.sidebar-overlay{display:block;position:fixed;inset:0;background:rgba(4,24,16,.48);z-index:70;opacity:0;pointer-events:none;transition:.2s}.sidebar-overlay.show{opacity:1;pointer-events:auto}.main-area{margin-left:0}.menu-toggle{display:grid}.topbar{padding:0 18px}.page-content{padding:18px}.stat-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.dashboard-grid .span-2,.dashboard-grid>article:nth-child(3){grid-column:span 1}.hero-visual{display:none}.hero-card{min-height:auto}.generator-layout{grid-template-columns:1fr}.generator-preview-card{position:static}.generator-badge{display:none}.doc-identity-grid{grid-template-columns:repeat(2,1fr)}.login-shell{grid-template-columns:1fr}.login-visual{display:none}.login-form-wrap{min-height:100vh}.login-mobile-brand{display:flex;align-items:center;gap:10px;margin-bottom:24px}.login-mobile-brand span{width:42px;height:42px;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;border-radius:13px;display:grid;place-items:center;font-weight:800}.install-shell{grid-template-columns:1fr}.install-hero{padding:30px}.install-card{padding:28px}}
@media(max-width:720px){body{font-size:13px;padding-bottom:68px}.topbar{height:68px;padding:0 13px}.topbar-left h1{font-size:16px}.topbar-left p{font-size:9px}.today-pill{display:none}.topbar-actions>.icon-btn{display:none}.top-avatar{width:34px;height:34px}.page-content{padding:12px 10px 24px}.footer{display:none}.mobile-nav{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);left:8px;right:8px;bottom:7px;height:58px;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(18px);border:1px solid var(--line);border-radius:17px;box-shadow:0 18px 45px rgba(0,0,0,.18);z-index:60;overflow:hidden}.mobile-nav a,.mobile-nav button{border:0;background:transparent;color:var(--muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:8px}.mobile-nav .active{color:var(--primary);background:var(--primary-3)}.hero-card{padding:24px 20px;border-radius:20px}.hero-copy h2{font-size:23px}.hero-copy p{font-size:11px}.hero-actions{flex-direction:column;align-items:stretch}.stat-grid{gap:9px}.stat-card{padding:12px;gap:9px}.stat-icon{width:40px;height:40px}.stat-card strong{font-size:19px}.stat-card small{display:none}.panel{padding:15px;border-radius:15px}.dashboard-grid{gap:10px}.activity-list{grid-template-columns:1fr}.page-toolbar{align-items:stretch;flex-direction:column}.search-box{min-width:0;width:100%}.toolbar-actions{width:100%}.toolbar-actions .btn{flex:1}.form-grid{grid-template-columns:1fr}.span-2{grid-column:span 1}.filter-row{flex-direction:column;align-items:stretch}.filter-row .field{min-width:0}.table-panel>.panel-head{padding:15px 15px 0}.data-table th,.data-table td{padding:9px 10px}.modal{padding:8px}.modal-card{max-height:95vh;border-radius:16px}.modal-head{padding:15px}.form-body{padding:15px}.generator-hero{padding:20px;display:block}.generator-hero h2{font-size:20px}.module-card-grid{grid-template-columns:1fr;padding:0 15px 15px}.module-document{padding:14px}.module-doc-header{grid-template-columns:50px 1fr}.doc-logo{width:48px;height:48px}.doc-status{display:none}.module-doc-header h2{font-size:12px}.doc-identity-grid{grid-template-columns:1fr 1fr}.doc-section-content{padding-left:0}.signature-grid{gap:15px}.compact-stats{grid-template-columns:repeat(4,1fr)}.compact-stats .stat-card{display:block;text-align:center}.compact-stats .stat-icon{margin:auto;width:32px;height:32px}.compact-stats .stat-card span{display:none}.status-options{min-width:270px}.auto-journal-box,.backup-panel,.automation-hero,.import-hero{align-items:flex-start;flex-direction:column}.assessment-summary{align-items:flex-start}.score-circle{width:75px;height:75px}.data-action-grid,.automation-grid{grid-template-columns:1fr}.import-card{min-height:auto}.excel-mark{display:none}.profile-layout{grid-template-columns:1fr}.profile-summary{padding:20px}.install-shell{margin:0;width:100%;border-radius:0}.install-hero{display:none}.install-card{padding:20px}.login-card{padding:24px;border-radius:20px}.login-form-wrap{padding:14px}.sticky-save{padding:11px}.sticky-save>div{display:none}.sticky-save .btn{width:100%}}
@media print{.sidebar,.topbar,.mobile-nav,.footer,.page-toolbar{display:none!important}.main-area{margin:0}.page-content{padding:0}.panel{box-shadow:none;border:0}.module-document{padding:0}}

/* PJOK Smart Admin Pro v2.6 — Isolasi Data Guru Ketat */
.mt-3{margin-top:18px}.admin-hero{margin-bottom:16px}.regulation-strip{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:18px;padding:15px 18px}.regulation-strip>div{display:flex;flex-direction:column;gap:3px;padding-left:13px;border-left:3px solid var(--primary)}.regulation-strip strong{font-size:12px}.regulation-strip span{font-size:10px;color:var(--muted);line-height:1.5}.admin-generator-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.55fr);gap:18px;align-items:start}.step-pill{display:inline-flex;align-items:center;background:var(--primary-3);color:var(--primary);font-size:9px;font-weight:800;border-radius:99px;padding:6px 9px}.option-boxes{display:grid;grid-template-columns:1fr 1fr;gap:10px}.option-boxes .check-line{display:flex;align-items:flex-start;gap:9px;border:1px solid var(--line);border-radius:13px;padding:12px;background:var(--surface-2);min-height:78px}.option-boxes .check-line input{margin-top:3px;accent-color:var(--primary)}.option-boxes .check-line span{display:flex;flex-direction:column;gap:3px}.option-boxes .check-line strong{font-size:11px}.option-boxes .check-line small{font-size:9px;color:var(--muted);line-height:1.5}.option-boxes .danger-check{border-color:color-mix(in srgb,var(--danger) 30%,var(--line));background:color-mix(in srgb,var(--danger) 5%,var(--surface))}.admin-progress-card{position:sticky;top:calc(var(--topbar) + 18px);text-align:center}.progress-ring{--progress:0;width:142px;height:142px;margin:4px auto 17px;border-radius:50%;display:grid;place-items:center;position:relative;background:conic-gradient(var(--primary) calc(var(--progress)*1%),var(--line) 0)}.progress-ring:before{content:"";position:absolute;inset:12px;border-radius:50%;background:var(--surface)}.progress-ring strong,.progress-ring small{position:relative;z-index:1}.progress-ring strong{font-family:Manrope,Inter,sans-serif;font-size:26px;line-height:1}.progress-ring small{font-size:9px;color:var(--muted);position:absolute;top:86px}.admin-progress-card h3{font-family:Manrope,Inter,sans-serif;margin:0 0 5px}.admin-progress-card p{font-size:10px;color:var(--muted);margin:0 0 13px}.admin-progress-card .btn{margin-top:9px}.progress-bar{height:8px;border-radius:99px;background:var(--line);overflow:hidden;margin-bottom:15px}.progress-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),var(--primary-2))}.inline-filter{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.inline-filter select{min-width:145px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);padding:8px 10px}.admin-count-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.admin-count-card{display:flex;align-items:center;gap:11px;border:1px solid var(--line);border-radius:14px;padding:13px;background:var(--surface-2);transition:.2s ease}.admin-count-card:hover{transform:translateY(-2px);border-color:var(--primary);box-shadow:var(--shadow)}.admin-count-card>span{width:39px;height:39px;border-radius:11px;display:grid;place-items:center;background:var(--primary-3);color:var(--primary);flex:0 0 auto}.admin-count-card>div{display:flex;flex-direction:column;min-width:0}.admin-count-card strong{font-family:Manrope,Inter,sans-serif;font-size:19px;line-height:1}.admin-count-card b{font-size:10px;margin-top:4px}.admin-count-card small{font-size:8px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-doc-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.admin-doc-list span{display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:10px;padding:10px;background:var(--surface-2);font-size:10px}.admin-doc-list svg{color:var(--primary);flex:0 0 auto}
@media(max-width:1180px){.admin-count-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-doc-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.regulation-strip,.admin-generator-layout{grid-template-columns:1fr}.admin-progress-card{position:static}.option-boxes{grid-template-columns:1fr}.admin-doc-list{grid-template-columns:1fr}}
@media(max-width:620px){.regulation-strip{padding:13px}.admin-count-grid{grid-template-columns:1fr}.inline-filter{width:100%}.inline-filter select,.inline-filter .btn{width:100%}.progress-ring{width:126px;height:126px}.progress-ring small{top:78px}}

/* v2.6 strict multi-guru */
.check-card{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:14px;padding:14px;background:var(--surface-2);cursor:pointer}.check-card input{width:18px;height:18px;margin-top:2px}.check-card span{display:flex;flex-direction:column;gap:4px}.check-card strong{font-size:14px}.check-card small{color:var(--muted);font-weight:400;line-height:1.45}.workspace-badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;padding:5px 9px;border-radius:999px;background:var(--primary-3);color:var(--primary);white-space:nowrap}

@media(max-width:720px){.workspace-badge{display:none}}

/* v2.6 strict multi-tenant workspace */
.workspace-switch-form{display:flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid var(--border);background:var(--card);border-radius:14px;max-width:340px}
.workspace-switch-form span{font-size:11px;font-weight:800;color:var(--muted);text-transform:uppercase;white-space:nowrap}
.workspace-switch-form select{min-width:190px;border:0;background:transparent;color:var(--text);font-weight:700;outline:none}
.workspace-admin-notice{margin-bottom:16px;padding:12px 16px;border:1px solid color-mix(in srgb,var(--primary) 32%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--primary) 9%,var(--card));color:var(--text)}
.workspace-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.workspace-card{padding:18px;border:1px solid var(--border);border-radius:18px;background:var(--card);box-shadow:var(--shadow-sm)}
.workspace-card.active{outline:2px solid var(--primary);outline-offset:1px}
.workspace-card-head{display:flex;align-items:center;gap:12px}.workspace-card-head>div{flex:1}.workspace-card-head h4{margin:0 0 3px}.workspace-card-head p{margin:0;color:var(--muted);font-size:12px}
.workspace-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0}.workspace-stats span{padding:10px 6px;border-radius:12px;background:var(--soft);text-align:center}.workspace-stats strong,.workspace-stats small{display:block}.workspace-stats small{font-size:10px;color:var(--muted);margin-top:2px}
.isolation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.isolation-grid>div{padding:16px;border-radius:14px;background:var(--soft)}.isolation-grid p{margin:6px 0 0;color:var(--muted);line-height:1.55}
@media(max-width:1100px){.workspace-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-switch-form span{display:none}}
@media(max-width:720px){.workspace-grid,.isolation-grid{grid-template-columns:1fr}.workspace-switch-form{max-width:190px;padding:5px 8px}.workspace-switch-form select{min-width:150px;max-width:150px}.workspace-badge{display:none}}

/* PJOK Smart Admin Pro v2.6 — Hapus Semua Data */
.danger-zone-layout{max-width:1180px;margin:0 auto}.danger-overview{display:flex;align-items:center;gap:18px;margin-bottom:16px;border-color:color-mix(in srgb,var(--danger) 38%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--danger) 9%,var(--surface)),var(--surface))}.danger-overview h2{font-family:Manrope,Inter,sans-serif;font-size:22px;margin:9px 0 5px}.danger-overview p{margin:0;color:var(--muted)}.danger-icon-large{width:66px;height:66px;border-radius:18px;display:grid;place-items:center;flex:0 0 auto;background:color-mix(in srgb,var(--danger) 14%,var(--surface));color:var(--danger)}.badge.danger{background:color-mix(in srgb,var(--danger) 12%,var(--surface));color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 30%,var(--line))}.cleanup-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);gap:18px;align-items:start}.cleanup-total{font-family:Manrope,Inter,sans-serif;font-size:28px;font-weight:800;color:var(--danger)}.cleanup-summary-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cleanup-summary-list>div{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:11px;background:var(--surface-2);border:1px solid var(--line)}.cleanup-summary-list span{font-size:11px;color:var(--muted)}.cleanup-summary-list strong{font-size:12px}.cleanup-preserved{display:grid;gap:7px;margin-top:17px;padding:14px;border-radius:13px;background:color-mix(in srgb,var(--primary) 7%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 22%,var(--line))}.cleanup-preserved strong{font-size:12px;margin-bottom:2px}.cleanup-preserved span{font-size:11px;color:var(--muted)}.danger-form-panel{border-color:color-mix(in srgb,var(--danger) 35%,var(--line));position:sticky;top:calc(var(--topbar) + 18px)}.danger-confirm-form{display:grid;gap:14px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.danger-check-card{border-color:color-mix(in srgb,var(--danger) 35%,var(--line));background:color-mix(in srgb,var(--danger) 6%,var(--surface))}.danger-check-card input{accent-color:var(--danger)}.btn:disabled{opacity:.48;cursor:not-allowed;transform:none!important;box-shadow:none!important}
@media(max-width:900px){.cleanup-grid{grid-template-columns:1fr}.danger-form-panel{position:static}}@media(max-width:620px){.danger-overview{align-items:flex-start}.danger-overview h2{font-size:18px}.danger-icon-large{width:50px;height:50px;border-radius:14px}.cleanup-summary-list{grid-template-columns:1fr}}


/* PJOK Smart Admin Pro v2.6.1 — shortcut Hapus Semua Data selalu terlihat */
.sidebar-danger-shortcut{padding:10px 12px 8px;border-top:1px solid rgba(255,255,255,.09);background:color-mix(in srgb,var(--sidebar-bg) 94%,#000)}
.sidebar-danger-link{display:flex;align-items:center;gap:10px;min-height:48px;padding:9px 11px;border-radius:12px;border:1px solid rgba(255,120,120,.34);background:rgba(213,66,66,.12);color:#ffdede;transition:.2s ease}
.sidebar-danger-link:hover,.sidebar-danger-link.active{background:rgba(213,66,66,.24);border-color:rgba(255,150,150,.62);color:#fff;transform:translateY(-1px)}
.sidebar-danger-link>span{display:flex;flex-direction:column;min-width:0;line-height:1.2}
.sidebar-danger-link strong{font-size:11px;color:inherit}
.sidebar-danger-link small{font-size:8px;color:rgba(255,225,225,.74);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sidebar-danger-link svg{flex:0 0 auto}
@media(max-width:720px){.sidebar-danger-shortcut{padding-bottom:10px}.sidebar-danger-link{min-height:44px}}


/* PJOK Smart Admin Pro v2.7.1 — tema dan pusat transfer data */
html[data-color-theme="purple"]{--primary:#6d28d9;--primary-2:#8b5cf6;--primary-3:#f0e9ff;--sidebar-bg:#2e1657;--sidebar-text:#f2eaff;--sidebar-muted:#c5afe9;--sidebar-label:#9e82ce;--sidebar-item:#dbcdf2;--sidebar-profile:#bea9dd;--sidebar-accent:#b794ff;--hero-start:#3f1a79;--hero-mid:#6d28d9;--hero-end:#8b5cf6;--hero-accent:#e7d8ff;--hero-copy:#f2eaff;--login-start:#311357;--login-mid:#5b21b6;--login-end:#8b5cf6}
html[data-color-theme="rose"]{--primary:#be123c;--primary-2:#e11d48;--primary-3:#ffe4ea;--sidebar-bg:#4c1022;--sidebar-text:#ffe9ee;--sidebar-muted:#e7a8b7;--sidebar-label:#bd7588;--sidebar-item:#f3c4cf;--sidebar-profile:#dca3b1;--sidebar-accent:#ff8ba7;--hero-start:#79152f;--hero-mid:#be123c;--hero-end:#e11d48;--hero-accent:#ffc9d6;--hero-copy:#ffe9ee;--login-start:#651128;--login-mid:#a51135;--login-end:#dc264f}
html[data-color-theme="slate"]{--primary:#334155;--primary-2:#64748b;--primary-3:#e8edf3;--sidebar-bg:#18212e;--sidebar-text:#ecf1f7;--sidebar-muted:#aab7c8;--sidebar-label:#8493a8;--sidebar-item:#cbd5e1;--sidebar-profile:#a9b5c5;--sidebar-accent:#8fb2d9;--hero-start:#1f2937;--hero-mid:#334155;--hero-end:#64748b;--hero-accent:#d6e3f0;--hero-copy:#edf2f7;--login-start:#111827;--login-mid:#29384d;--login-end:#52647d}
html[data-theme="dark"][data-color-theme="purple"]{--primary:#a78bfa;--primary-2:#c4b5fd;--primary-3:#342556}
html[data-theme="dark"][data-color-theme="rose"]{--primary:#fb7185;--primary-2:#fda4af;--primary-3:#4b2630}
html[data-theme="dark"][data-color-theme="slate"]{--primary:#94a3b8;--primary-2:#cbd5e1;--primary-3:#2b3543}
html[data-theme="dark"] input,html[data-theme="dark"] select,html[data-theme="dark"] textarea{color-scheme:dark;background-color:var(--surface);color:var(--text)}
.theme-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:7px}.theme-choice{display:flex;align-items:center;gap:11px;border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--surface-2);cursor:pointer;transition:.2s}.theme-choice:hover{transform:translateY(-1px);border-color:var(--primary)}.theme-choice:has(input:checked){border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 13%,transparent);background:color-mix(in srgb,var(--primary) 6%,var(--surface))}.theme-choice input{position:absolute;opacity:0;pointer-events:none}.theme-choice>span:last-child{display:flex;flex-direction:column}.theme-choice strong{font-size:12px}.theme-choice small{font-size:9px;color:var(--muted)}.theme-swatch{width:32px;height:32px;border-radius:10px;background:linear-gradient(135deg,var(--swatch),color-mix(in srgb,var(--swatch) 60%,white));box-shadow:inset 0 0 0 3px rgba(255,255,255,.6),0 4px 12px color-mix(in srgb,var(--swatch) 25%,transparent);flex:0 0 auto}.theme-live-preview{display:grid;grid-template-columns:230px 1fr;border:1px solid var(--line);border-radius:16px;overflow:hidden;min-height:130px}.theme-preview-sidebar{background:var(--sidebar-bg);color:var(--sidebar-text);display:flex;align-items:center;gap:11px;padding:22px}.theme-preview-sidebar>div{display:flex;flex-direction:column}.theme-preview-sidebar b{color:#fff}.theme-preview-sidebar small{color:var(--sidebar-muted)}.preview-logo{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),var(--primary-2));font-weight:900;color:#fff}.theme-preview-content{padding:20px;background:var(--surface-2)}.theme-preview-content h4{font-size:18px;margin:4px 0 14px}.theme-preview-content>div{display:flex;gap:8px;flex-wrap:wrap}
.transfer-status-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:16px 0}.transfer-status{display:flex;align-items:center;gap:12px;padding:15px}.transfer-status>span{width:42px;height:42px;border-radius:12px;display:grid;place-items:center}.transfer-status>div{display:flex;flex-direction:column}.transfer-status strong{font-size:12px}.transfer-status small{font-size:10px;color:var(--muted)}.transfer-status.ok>span{background:#e5f8ee;color:#107348}.transfer-status.warning>span{background:#fff4dd;color:#9b6411}.data-transfer-section{margin-top:16px}.data-transfer-section .data-action-grid{margin:0}.import-card{border:1px solid var(--line);border-radius:16px;padding:16px;background:var(--surface-2)}.import-card.selected{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)}.excel-mark small{font-size:12px}.import-result-panel{margin:16px 0}.import-result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.import-result-stats span{padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);display:flex;flex-direction:column}.import-result-stats strong{font-size:22px;color:var(--primary)}.import-error-details{margin-top:14px;border:1px solid color-mix(in srgb,var(--warning) 38%,var(--line));border-radius:12px;padding:12px;background:color-mix(in srgb,var(--warning) 7%,var(--surface))}.import-error-details summary{cursor:pointer;font-weight:800}.import-error-details ul{margin:10px 0 0;padding-left:20px;color:var(--muted);font-size:11px}.dropzone em{display:block;margin-top:7px;color:var(--primary);font-style:normal;font-weight:700;font-size:10px}.export-list-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.export-list-item{border:1px solid var(--line);border-radius:13px;padding:12px;background:var(--surface-2);display:flex;align-items:center;justify-content:space-between;gap:10px}.export-list-item>div:first-child{display:flex;flex-direction:column;min-width:0}.export-list-item strong{font-size:11px}.export-list-item small{font-size:9px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.export-list-item>div:last-child{display:flex;gap:5px}.toolbar-actions{justify-content:flex-end}
@media(max-width:1050px){.theme-picker,.export-list-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.theme-picker,.transfer-status-grid,.export-list-grid,.import-result-stats{grid-template-columns:1fr}.theme-live-preview{grid-template-columns:1fr}.theme-preview-sidebar{min-height:92px}.export-list-item{align-items:flex-start}.data-transfer-section .panel-head{flex-direction:column}.toolbar-actions{width:100%;justify-content:flex-start}.toolbar-actions .btn{flex:1}}

/* PJOK Smart Admin Pro v2.8.0 — WebView Android, iOS, dan PWA */
html.native-webview,html.standalone-app{overscroll-behavior-y:none}
html.native-webview body,html.standalone-app body{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}
html.native-webview .topbar,html.standalone-app .topbar{padding-top:env(safe-area-inset-top);height:calc(var(--topbar) + env(safe-area-inset-top))}
html.native-webview .sidebar,html.standalone-app .sidebar{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}
html.native-webview .mobile-nav,html.standalone-app .mobile-nav{bottom:max(7px,env(safe-area-inset-bottom));}
html.native-webview body,html.standalone-app body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
html.ios-webview input,html.ios-webview select,html.ios-webview textarea{font-size:16px}
html.ios-webview .page-content{touch-action:pan-y}
.network-status-notice{position:fixed;left:50%;top:max(12px,env(safe-area-inset-top));transform:translateX(-50%);z-index:200;width:min(430px,calc(100% - 24px));display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border-radius:13px;background:#7f1d1d;color:#fff;box-shadow:0 12px 35px rgba(0,0,0,.22);font-size:11px;text-align:center}.network-status-notice span{opacity:.82}
@media(max-width:720px){html.native-webview body,html.standalone-app body{padding-bottom:calc(68px + env(safe-area-inset-bottom))}.network-status-notice{top:max(8px,env(safe-area-inset-top));flex-direction:column;gap:0}}

/* PJOK Smart Admin Pro v3.0.0 — Teaching Edition */
html[data-animation="dynamic"]{--motion-factor:1}html[data-animation="soft"]{--motion-factor:.55}html[data-animation="off"]{--motion-factor:0}
body{overflow-x:hidden}.page-content{position:relative}.page-content:before{content:"";position:fixed;inset:var(--topbar) 0 0 var(--sidebar);pointer-events:none;background:radial-gradient(circle at 82% 8%,color-mix(in srgb,var(--primary) 7%,transparent),transparent 34%),radial-gradient(circle at 12% 92%,color-mix(in srgb,var(--primary-2) 5%,transparent),transparent 30%);z-index:-1}
[data-reveal]{opacity:0;transform:translateY(calc(18px * var(--motion-factor))) scale(calc(1 - .012 * var(--motion-factor)));transition:opacity calc(.55s * var(--motion-factor) + .01s) ease,transform calc(.55s * var(--motion-factor) + .01s) cubic-bezier(.2,.8,.2,1);transition-delay:var(--delay,0ms)}[data-reveal].is-visible{opacity:1;transform:none}html[data-animation="off"] [data-reveal]{opacity:1;transform:none}.btn,.icon-btn,.nav-item,.panel{position:relative;overflow:hidden}.ui-ripple{position:absolute;border-radius:50%;background:rgba(255,255,255,.35);transform:scale(0);animation:uiRipple .6s ease-out;pointer-events:none}@keyframes uiRipple{to{transform:scale(3);opacity:0}}.panel:hover{box-shadow:0 18px 48px color-mix(in srgb,var(--primary) 10%,rgba(0,0,0,.05))}.nav-live{border-color:rgba(255,255,255,.28);background:linear-gradient(135deg,rgba(255,255,255,.13),rgba(255,255,255,.04))}.nav-live b{background:#ff4d6d;color:#fff;box-shadow:0 0 0 0 rgba(255,77,109,.55);animation:liveBadge 1.8s infinite}@keyframes liveBadge{70%{box-shadow:0 0 0 8px rgba(255,77,109,0)}100%{box-shadow:0 0 0 0 rgba(255,77,109,0)}}
.teaching-launch-hero{min-height:280px;border-radius:26px;padding:34px 38px;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);align-items:center;gap:26px;color:#fff;background:linear-gradient(125deg,var(--hero-start),var(--hero-mid) 52%,var(--hero-end));box-shadow:0 26px 70px color-mix(in srgb,var(--primary) 30%,transparent);position:relative;overflow:hidden;margin-bottom:18px}.teaching-launch-hero:before,.teaching-launch-hero:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.16)}.teaching-launch-hero:before{width:410px;height:410px;right:-110px;top:-160px}.teaching-launch-hero:after{width:260px;height:260px;right:60px;bottom:-170px}.teaching-launch-copy{position:relative;z-index:2}.live-kicker{display:inline-flex;align-items:center;gap:8px;font-size:10px;font-weight:900;letter-spacing:.16em;color:var(--hero-accent)}.live-kicker i,.live-pulse i{width:8px;height:8px;border-radius:50%;background:#70ffb1;box-shadow:0 0 0 6px rgba(112,255,177,.14);animation:liveDot 1.6s ease-in-out infinite}@keyframes liveDot{50%{transform:scale(.72);opacity:.65}}.teaching-launch-copy h2{font-family:Manrope,Inter,sans-serif;font-size:34px;line-height:1.16;margin:14px 0 10px;letter-spacing:-.035em}.teaching-launch-copy h2 em{font-style:normal;color:var(--hero-accent)}.teaching-launch-copy>p{max-width:760px;color:var(--hero-copy);margin:0;font-size:13px}.teaching-launch-badges{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}.teaching-launch-badges span{display:flex;align-items:center;gap:6px;padding:8px 11px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.09);backdrop-filter:blur(10px);border-radius:99px;font-size:10px;font-weight:700}.teaching-launch-visual{position:relative;min-height:220px;display:grid;place-items:center;z-index:2}.coach-center{width:168px;height:168px;border-radius:50%;display:grid;place-items:center;align-content:center;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(18px);box-shadow:inset 0 0 35px rgba(255,255,255,.08),0 18px 45px rgba(0,0,0,.16)}.coach-center:before{content:"";position:absolute;width:196px;height:196px;border-radius:50%;border:1px dashed rgba(255,255,255,.28);animation:coachSpin 15s linear infinite}.coach-center span{font-size:9px;font-weight:900;letter-spacing:.18em;color:var(--hero-accent)}.coach-center strong{font-size:34px;line-height:1.1;font-family:Manrope,Inter,sans-serif}.coach-center small{font-size:9px;color:var(--hero-copy)}.coach-orbit{position:absolute;width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:#fff;color:#111;font-size:22px;box-shadow:0 12px 28px rgba(0,0,0,.18);animation:coachFloat 3s ease-in-out infinite}.orbit-a{top:15px;right:18px}.orbit-b{left:7px;top:90px;animation-delay:-1s}.orbit-c{right:28px;bottom:13px;animation-delay:-2s}@keyframes coachSpin{to{transform:rotate(360deg)}}@keyframes coachFloat{50%{transform:translateY(-8px) rotate(4deg)}}
.teaching-complete-banner{display:flex;align-items:center;gap:14px;padding:16px 20px;border-radius:18px;background:linear-gradient(135deg,#126a48,#2dae79);color:#fff;margin-bottom:18px;box-shadow:0 16px 42px rgba(24,126,84,.2)}.complete-medal{font-size:34px}.teaching-complete-banner>div{flex:1}.teaching-complete-banner strong{font-size:14px}.teaching-complete-banner p{margin:2px 0 0;color:#d8f8e9;font-size:10px}.teaching-launch-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.65fr);gap:16px;margin-bottom:16px}.inline-date-filter input{border:1px solid var(--line);background:var(--surface-2);color:var(--text);border-radius:10px;padding:8px 10px}.teaching-schedule-cards{display:grid;gap:9px}.teaching-schedule-card{display:grid;grid-template-columns:82px 1fr auto;align-items:center;gap:14px;border:1px solid var(--line);background:var(--surface-2);border-radius:15px;padding:12px;transition:.2s}.teaching-schedule-card:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 12px 28px color-mix(in srgb,var(--primary) 12%,transparent)}.schedule-card-time{height:55px;border-radius:12px;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center}.schedule-card-time strong{font-size:17px}.schedule-card-time span{font-size:9px;opacity:.8}.schedule-card-body{display:flex;flex-direction:column;min-width:0}.schedule-card-body>span{font-size:9px;text-transform:uppercase;letter-spacing:.11em;color:var(--primary);font-weight:800}.schedule-card-body strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schedule-card-body small{font-size:9px;color:var(--muted)}.readiness-list{display:grid;gap:9px}.readiness-list>div{display:flex;gap:10px;padding:10px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2)}.readiness-list>div>span{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:var(--primary-3);color:var(--primary);font-weight:900;font-size:10px;flex:0 0 auto}.readiness-list p{margin:0;display:flex;flex-direction:column}.readiness-list strong{font-size:10px}.readiness-list small{font-size:8px;color:var(--muted)}.all-class-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.class-launch-card{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);padding:11px;transition:.2s}.class-launch-card:hover{transform:translateY(-2px);border-color:var(--primary)}.class-launch-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;font-weight:900}.class-launch-copy{flex:1;min-width:0;display:flex;flex-direction:column}.class-launch-card strong{font-size:11px}.class-launch-card small{font-size:9px;color:var(--muted)}.recent-session-list{display:grid;gap:8px}.recent-session-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px}.recent-session-item>div{flex:1;display:flex;flex-direction:column}.recent-session-item strong{font-size:11px}.recent-session-item small{font-size:9px;color:var(--muted)}.session-state{width:10px;height:10px;border-radius:50%;background:var(--muted)}.session-state.berjalan{background:#22c55e;box-shadow:0 0 0 5px rgba(34,197,94,.1)}.session-state.selesai{background:#3b82f6}.session-state.dibatalkan{background:#ef4444}
.teaching-live-shell{display:grid;gap:15px}.teaching-live-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px;border-radius:22px;color:#fff;background:linear-gradient(120deg,var(--hero-start),var(--hero-mid),var(--hero-end));box-shadow:0 22px 58px color-mix(in srgb,var(--primary) 25%,transparent);position:relative;overflow:hidden}.teaching-live-header:after{content:"";position:absolute;width:250px;height:250px;border-radius:50%;border:1px solid rgba(255,255,255,.18);right:-70px;top:-100px}.live-session-identity{position:relative;z-index:1;min-width:0}.live-pulse{display:inline-flex;align-items:center;gap:8px;font-size:9px;letter-spacing:.14em;font-weight:900;color:var(--hero-accent)}.live-session-identity h2{font-family:Manrope,Inter,sans-serif;font-size:24px;line-height:1.2;margin:8px 0 5px}.live-session-identity>p{margin:0;color:var(--hero-copy);font-size:11px;max-width:850px}.live-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.live-meta span{padding:6px 9px;border-radius:99px;background:rgba(255,255,255,.1);font-size:9px}.live-session-clock{position:relative;z-index:1;text-align:right;display:flex;flex-direction:column;align-items:flex-end}.live-session-clock>small{font-size:8px;letter-spacing:.16em;color:var(--hero-accent);font-weight:900}.live-session-clock>strong{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:32px;letter-spacing:.03em}.live-session-clock>div{display:flex;gap:7px;margin-top:8px}.safety-command-bar{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:8px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}.safety-command-title{display:flex;align-items:center;gap:9px;color:var(--primary)}.safety-command-title>div{display:flex;flex-direction:column}.safety-command-title strong{font-size:11px;color:var(--text)}.safety-command-title small{font-size:8px;color:var(--muted)}.safety-command-bar>label{cursor:pointer}.safety-command-bar>label input{position:absolute;opacity:0}.safety-command-bar>label span{display:flex;justify-content:center;padding:9px;border-radius:10px;border:1px solid var(--line);background:var(--surface-2);font-size:9px;font-weight:700;transition:.2s}.safety-command-bar>label input:checked+span{border-color:var(--primary);background:var(--primary-3);color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 10%,transparent)}.teaching-command-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.62fr);gap:15px;align-items:start}.teaching-main-column,.teaching-tools-column{display:grid;gap:15px}.teaching-tools-column{position:sticky;top:calc(var(--topbar) + 16px)}.lesson-progress-ring{width:63px;height:63px;border-radius:50%;display:grid;place-items:center;align-content:center;background:conic-gradient(var(--primary) var(--lesson-progress,0%),var(--line) 0);position:relative}.lesson-progress-ring:before{content:"";position:absolute;inset:6px;border-radius:50%;background:var(--surface)}.lesson-progress-ring strong,.lesson-progress-ring span{position:relative}.lesson-progress-ring strong{font-size:13px}.lesson-progress-ring span{font-size:7px;color:var(--muted)}.lesson-flow-list{display:grid;gap:9px}.lesson-flow-card{display:grid;grid-template-columns:38px 1fr 28px;align-items:start;gap:11px;border:1px solid var(--line);border-radius:15px;padding:13px;background:var(--surface-2);cursor:pointer;transition:.2s}.lesson-flow-card:hover{border-color:var(--primary);transform:translateX(2px)}.lesson-flow-card>input{position:absolute;opacity:0}.lesson-step-no{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:var(--primary-3);color:var(--primary);font-weight:900}.lesson-flow-card>div strong{font-size:11px}.lesson-flow-card>div p{margin:3px 0 0;font-size:9px;color:var(--muted);max-height:58px;overflow:auto}.lesson-flow-card>b{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);color:transparent}.lesson-flow-card:has(input:checked){background:color-mix(in srgb,var(--primary) 6%,var(--surface));border-color:color-mix(in srgb,var(--primary) 45%,var(--line))}.lesson-flow-card:has(input:checked) .lesson-step-no{background:var(--primary);color:#fff}.lesson-flow-card:has(input:checked)>b{background:var(--primary);color:#fff;border-color:var(--primary)}.roster-actions{display:flex;gap:7px}.attendance-live-stats{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:12px}.attendance-live-stats>span{display:flex;align-items:center;gap:4px;padding:6px 9px;border-radius:99px;font-size:8px;font-weight:800}.attendance-live-stats .hadir{background:#e7f8ef;color:#14643f}.attendance-live-stats .sakit{background:#fff2df;color:#95560b}.attendance-live-stats .izin{background:#e9f3ff;color:#245d96}.attendance-live-stats .alpa{background:#fff0f0;color:#9c2d2d}.roster-search{margin-left:auto}.roster-search input{width:190px;border:1px solid var(--line);background:var(--surface-2);color:var(--text);border-radius:10px;padding:7px 10px;font-size:10px}.teaching-roster-list{display:grid;gap:6px;max-height:630px;overflow:auto;padding-right:3px}.teaching-student-row{display:grid;grid-template-columns:28px 34px minmax(125px,1fr) auto 110px 34px;align-items:center;gap:8px;border:1px solid var(--line);border-radius:12px;padding:8px 9px;background:var(--surface-2);animation:studentEnter .35s both;animation-delay:var(--delay)}@keyframes studentEnter{from{opacity:0;transform:translateX(-8px)}}.student-number{font-size:8px;color:var(--muted);text-align:center}.student-avatar{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;font-weight:900;font-size:11px}.student-main{display:flex;flex-direction:column;min-width:0}.student-main strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.student-main small{font-size:8px;color:var(--muted)}.teaching-status-options{display:flex;gap:3px}.teaching-status-options label input{position:absolute;opacity:0}.teaching-status-options label span{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;border:1px solid var(--line);font-size:9px;font-weight:900;background:var(--surface);cursor:pointer}.teaching-status-options .status-hadir input:checked+span{background:#20a66a;color:#fff;border-color:#20a66a}.teaching-status-options .status-sakit input:checked+span{background:#e89b25;color:#fff;border-color:#e89b25}.teaching-status-options .status-izin input:checked+span{background:#2e78d0;color:#fff;border-color:#2e78d0}.teaching-status-options .status-alpa input:checked+span{background:#d54242;color:#fff;border-color:#d54242}.attendance-note-mini{width:100%;border:1px solid var(--line);border-radius:8px;padding:6px 7px;background:var(--surface);color:var(--text);font-size:8px}.observation-trigger{width:30px;height:30px;border:0;border-radius:9px;background:#fff5d6;font-size:14px;transition:.2s}.observation-trigger:hover{transform:scale(1.1) rotate(6deg);background:#ffe39a}.field-tools-panel,.random-student-panel,.scoreboard-panel,.session-finish-panel{padding:16px}.tool-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;border-radius:10px;background:var(--surface-2);margin-bottom:12px}.tool-tabs button{border:0;border-radius:8px;background:transparent;color:var(--muted);padding:7px 3px;font-size:8px;font-weight:800}.tool-tabs button.active{background:var(--surface);color:var(--primary);box-shadow:0 5px 14px rgba(0,0,0,.07)}.tool-pane{display:none}.tool-pane.active{display:block;animation:toolPane .25s ease}@keyframes toolPane{from{opacity:0;transform:translateY(5px)}}.mega-timer{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;text-align:center;font-size:42px;font-weight:900;letter-spacing:.035em;padding:8px 0;color:var(--text)}.timer-actions{display:flex;justify-content:center;gap:7px}.lap-list{display:grid;gap:4px;max-height:90px;overflow:auto;margin-top:9px}.lap-list span{display:flex;justify-content:space-between;padding:5px 8px;border-radius:7px;background:var(--surface-2);font-size:8px}.countdown-presets{display:flex;justify-content:center;gap:5px;margin-bottom:10px}.countdown-presets button{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:5px 9px;color:var(--text);font-size:8px}.countdown-presets button.active{background:var(--primary-3);color:var(--primary);border-color:var(--primary)}.interval-config{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.interval-config label{display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px;border:1px solid var(--line);border-radius:9px;padding:6px;font-size:7px;color:var(--muted)}.interval-config input{width:44px;border:0;background:transparent;color:var(--text);font-weight:900}.interval-config small{grid-column:1/-1;font-size:6px}.interval-status{text-align:center;margin-top:8px;color:var(--primary);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.whistle-button{width:100%;display:grid;grid-template-columns:42px 1fr;grid-template-rows:auto auto;align-items:center;text-align:left;gap:0 9px;margin-top:13px;border:1px solid color-mix(in srgb,var(--warning) 40%,var(--line));border-radius:12px;padding:9px;background:color-mix(in srgb,var(--warning) 7%,var(--surface));color:var(--text)}.whistle-button>span{grid-row:1/3;width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#ffefc9;font-size:19px}.whistle-button strong{font-size:10px}.whistle-button small{font-size:7px;color:var(--muted)}.whistle-button:active{transform:scale(.97)}.random-student-display{text-align:center;padding:8px 0 13px}.random-student-display>span{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;margin:0 auto 8px;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;font-size:24px;font-weight:900;box-shadow:0 12px 25px color-mix(in srgb,var(--primary) 25%,transparent)}.random-student-display strong,.random-student-display small{display:block}.random-student-display strong{font-size:12px}.random-student-display small{font-size:8px;color:var(--muted)}.random-student-display.is-shuffling>span{animation:shuffleAvatar .18s linear infinite}@keyframes shuffleAvatar{50%{transform:rotate(8deg) scale(1.05)}}.scoreboard{display:grid;grid-template-columns:1fr 28px 1fr;align-items:center;gap:5px}.team-score{text-align:center}.team-score input{width:100%;border:0;background:transparent;color:var(--muted);font-size:9px;text-align:center;font-weight:800}.team-score strong{display:block;font-family:Manrope,Inter,sans-serif;font-size:37px;line-height:1.2}.team-score>div{display:flex;justify-content:center;gap:5px}.team-score button{width:30px;height:27px;border:1px solid var(--line);background:var(--surface-2);color:var(--text);border-radius:8px;font-weight:900}.score-divider{text-align:center;font-size:8px;font-weight:900;color:var(--muted)}.score-reset{display:block;margin:9px auto 0;border:0;background:transparent;color:var(--muted);font-size:8px;text-decoration:underline}.session-finish-panel{text-align:center;border-color:color-mix(in srgb,var(--primary) 35%,var(--line));background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 5%,var(--surface)),var(--surface))}.finish-icon{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;margin:0 auto 8px;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;font-size:22px;font-weight:900;box-shadow:0 12px 26px color-mix(in srgb,var(--primary) 22%,transparent)}.session-finish-panel h3{font-size:13px;margin:0}.session-finish-panel p{font-size:8px;color:var(--muted);margin:4px 0 12px}.session-finish-panel .btn+.btn{margin-top:7px}.observation-score-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.observation-score-picker input{position:absolute;opacity:0}.observation-score-picker span{min-height:70px;border:1px solid var(--line);border-radius:11px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:6px;cursor:pointer}.observation-score-picker b{font-size:20px;color:var(--primary)}.observation-score-picker small{font-size:7px;color:var(--muted)}.observation-score-picker input:checked+span{border-color:var(--primary);background:var(--primary-3);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 10%,transparent)}.toast-stack{position:fixed;right:20px;bottom:20px;z-index:260;display:grid;gap:8px}.app-toast{display:flex;align-items:center;gap:9px;max-width:360px;padding:11px 13px;border-radius:12px;background:#15251e;color:#fff;box-shadow:0 14px 40px rgba(0,0,0,.24);font-size:10px;animation:toastIn .3s ease}.app-toast.success:before{content:"✓";width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#2db77e;font-weight:900}.app-toast.error:before{content:"!";width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#d54242;font-weight:900}@keyframes toastIn{from{opacity:0;transform:translateY(12px)}}.confetti-piece{position:fixed;z-index:300;top:-20px;width:9px;height:14px;border-radius:2px;pointer-events:none;animation:confettiFall var(--duration) linear forwards}@keyframes confettiFall{to{transform:translate3d(var(--drift),110vh,0) rotate(720deg);opacity:.8}}
@media(max-width:1180px){.all-class-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.teaching-command-grid{grid-template-columns:1fr}.teaching-tools-column{position:static;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.session-finish-panel{grid-column:1/-1}.safety-command-bar{grid-template-columns:1fr repeat(2,1fr)}.safety-command-title{grid-row:span 2}.teaching-student-row{grid-template-columns:28px 34px minmax(130px,1fr) auto 90px 34px}}
@media(max-width:900px){.teaching-launch-hero{grid-template-columns:1fr;padding:28px}.teaching-launch-visual{display:none}.teaching-launch-grid{grid-template-columns:1fr}.all-class-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teaching-live-header{align-items:flex-start;flex-direction:column}.live-session-clock{align-items:flex-start;text-align:left}.teaching-tools-column{grid-template-columns:1fr 1fr}.page-content:before{left:0}.teaching-student-row{grid-template-columns:26px 32px minmax(120px,1fr) auto 34px}.attendance-note-mini{display:none}}
@media(max-width:720px){.teaching-launch-hero{min-height:auto;padding:23px 18px;border-radius:19px}.teaching-launch-copy h2{font-size:25px}.teaching-launch-copy>p{font-size:10px}.teaching-launch-badges{gap:6px}.teaching-launch-badges span{font-size:8px;padding:6px 8px}.teaching-complete-banner{align-items:flex-start;flex-wrap:wrap}.teaching-schedule-card{grid-template-columns:64px 1fr}.teaching-schedule-card .btn{grid-column:1/-1}.all-class-grid{grid-template-columns:1fr}.teaching-live-header{padding:19px}.live-session-identity h2{font-size:19px}.live-session-clock>strong{font-size:27px}.safety-command-bar{grid-template-columns:1fr 1fr}.safety-command-title{grid-column:1/-1;grid-row:auto}.teaching-tools-column{grid-template-columns:1fr}.roster-head{flex-direction:column}.roster-actions{width:100%}.roster-actions .btn{flex:1}.attendance-live-stats{position:sticky;top:calc(var(--topbar) + 2px);z-index:8;background:var(--surface);padding:7px 0}.roster-search{width:100%;margin-left:0}.roster-search input{width:100%}.teaching-roster-list{max-height:none}.teaching-student-row{grid-template-columns:26px 32px minmax(0,1fr) 34px;gap:7px}.teaching-status-options{grid-column:2/5;width:100%;display:grid;grid-template-columns:repeat(4,1fr)}.teaching-status-options label span{width:100%}.student-number{display:none}.observation-score-picker{grid-template-columns:repeat(2,1fr)}.toast-stack{left:12px;right:12px;bottom:90px}.app-toast{max-width:none}.mobile-nav a:nth-child(2){display:flex}.page-content{padding-left:12px;padding-right:12px}.teaching-live-shell .panel{padding:14px}.mega-timer{font-size:38px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}[data-reveal]{opacity:1;transform:none}}

@media(max-width:1050px){.quick-teach-button{display:none}}

/* PJOK Smart Admin Pro v3.0.1 — Perbaikan nama siswa pada Mode Mengajar mobile */
@media (max-width:720px){
  .teaching-student-row{
    grid-template-columns:40px minmax(0,1fr) 40px;
    grid-template-rows:auto auto;
    column-gap:10px;
    row-gap:9px;
    align-items:center;
    padding:10px 11px;
  }
  .teaching-student-row .student-number{display:none}
  .teaching-student-row .student-avatar{
    grid-column:1;
    grid-row:1;
    width:40px;
    height:40px;
    border-radius:12px;
    font-size:13px;
  }
  .teaching-student-row .student-main{
    grid-column:2;
    grid-row:1;
    width:100%;
    min-width:0;
    overflow:visible;
  }
  .teaching-student-row .student-main strong{
    display:block;
    width:100%;
    max-width:none;
    white-space:normal;
    overflow:visible;
    text-overflow:clip;
    overflow-wrap:anywhere;
    word-break:normal;
    font-size:12px;
    line-height:1.3;
  }
  .teaching-student-row .student-main small{
    display:block;
    margin-top:2px;
    font-size:9px;
    line-height:1.25;
  }
  .teaching-student-row .observation-trigger{
    grid-column:3;
    grid-row:1;
    justify-self:end;
    width:36px;
    height:36px;
  }
  .teaching-student-row .teaching-status-options{
    grid-column:1/-1;
    grid-row:2;
    width:100%;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:5px;
  }
  .teaching-student-row .teaching-status-options label,
  .teaching-student-row .teaching-status-options label span{width:100%}
  .teaching-student-row .teaching-status-options label span{
    height:34px;
    font-size:10px;
  }
  .teaching-student-row .attendance-note-mini{display:none}
}
@media (max-width:390px){
  .teaching-student-row{grid-template-columns:36px minmax(0,1fr) 36px;padding:9px}
  .teaching-student-row .student-avatar{width:36px;height:36px}
  .teaching-student-row .observation-trigger{width:34px;height:34px}
  .teaching-student-row .student-main strong{font-size:11px}
}

/* v3.2.0 — Generator LKPD & AI */
.worksheet-hero{background:radial-gradient(circle at 86% 18%,color-mix(in srgb,var(--primary) 14%,transparent),transparent 28%),linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--primary-3) 68%,var(--surface)));border:1px solid color-mix(in srgb,var(--primary) 18%,var(--line))}.generation-mode-box{display:grid;grid-template-columns:1fr 1fr;gap:10px}.check-line.is-disabled{opacity:.55;filter:grayscale(.3)}.compact-options{grid-template-columns:1fr 1fr}.worksheet-preview-card{overflow:hidden}.worksheet-mini-preview{margin-top:16px;border:1px solid var(--line);border-radius:16px;padding:10px;background:linear-gradient(180deg,var(--surface),var(--surface-2));text-align:center}.worksheet-mini-preview img{width:100%;height:135px;object-fit:contain;border-radius:12px}.worksheet-mini-preview strong,.worksheet-mini-preview small{display:block}.worksheet-mini-preview strong{font-family:Manrope,Inter,sans-serif;margin-top:8px}.worksheet-mini-preview small{color:var(--muted);margin-top:3px}.worksheet-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0 18px 18px}.worksheet-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:transform .22s,box-shadow .22s,border-color .22s}.worksheet-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--primary) 30%,var(--line))}.worksheet-cover{height:165px;position:relative;background:linear-gradient(145deg,var(--primary-3),var(--surface-2));padding:10px;overflow:hidden}.worksheet-cover img{width:100%;height:100%;object-fit:contain;transition:transform .35s}.worksheet-card:hover .worksheet-cover img{transform:scale(1.035)}.worksheet-cover span{position:absolute;left:12px;top:12px;background:color-mix(in srgb,var(--primary) 90%,transparent);color:#fff;padding:6px 9px;border-radius:99px;font-size:8px;font-weight:800;letter-spacing:.6px}.worksheet-card-body{padding:15px;flex:1}.worksheet-card-body h3{font-family:Manrope,Inter,sans-serif;font-size:14px;line-height:1.35;margin:10px 0 7px}.worksheet-card-body p{margin:0 0 10px;color:var(--muted);font-size:9px}.worksheet-document{max-width:980px;margin-inline:auto;background:linear-gradient(180deg,color-mix(in srgb,var(--primary-3) 28%,var(--surface)),var(--surface) 180px)}.worksheet-doc-heading{display:grid;grid-template-columns:64px 1fr auto;gap:14px;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--line)}.worksheet-doc-heading>div:nth-child(2)>span{font-size:8px;letter-spacing:1px;font-weight:800;color:var(--primary)}.worksheet-doc-heading h2{font-family:Manrope,Inter,sans-serif;margin:4px 0;font-size:20px}.worksheet-doc-heading p{margin:0;color:var(--muted)}.worksheet-doc-heading>div:last-child{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.worksheet-identity-preview{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0;padding:13px;border-radius:14px;background:var(--surface);border:1px solid var(--line)}.worksheet-identity-preview span{border-bottom:1px dotted var(--muted);padding-bottom:7px}.worksheet-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px}.worksheet-two-columns section,.worksheet-activity-preview,.worksheet-reflection{border:1px solid var(--line);border-radius:15px;background:var(--surface);padding:14px}.worksheet-two-columns h3,.worksheet-activity-preview h3,.worksheet-reflection h3{font-family:Manrope,Inter,sans-serif;color:var(--primary);font-size:13px;margin:0 0 9px}.worksheet-illustration{margin:14px 0;border:1px solid var(--line);background:var(--surface);border-radius:16px;padding:9px}.worksheet-illustration img{width:100%;max-height:310px;object-fit:contain}.worksheet-activity-preview{margin-bottom:12px}.worksheet-activity-preview p{color:var(--muted);margin:0 0 10px}.worksheet-activity-preview ol{margin:0;padding-left:20px}.worksheet-activity-preview li{padding:5px 0}.preview-answer-line{display:block;height:15px;border-bottom:1px dotted var(--muted)}.writing-lines{display:grid;gap:7px}.writing-lines span{height:18px;border-bottom:1px dotted var(--muted)}.worksheet-activity-editor{border:1px solid var(--line);border-radius:15px;padding:14px;margin:0}.worksheet-activity-editor legend{padding:0 8px;font-family:Manrope,Inter,sans-serif;font-weight:800;color:var(--primary)}.module-lkpd-action{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(135deg,var(--surface),var(--primary-3));border-color:color-mix(in srgb,var(--primary) 22%,var(--line));margin-bottom:15px}.module-lkpd-action h3{font-family:Manrope,Inter,sans-serif;margin:5px 0}.module-lkpd-action p{margin:0;color:var(--muted)}.module-lkpd-action form{display:flex;align-items:center;gap:8px}.mini-check{display:flex;align-items:center;gap:4px;font-size:9px;font-weight:800;color:var(--primary)}.ai-settings-card{border:1px solid color-mix(in srgb,var(--primary) 25%,var(--line));border-radius:18px;padding:18px;background:radial-gradient(circle at 95% 0,color-mix(in srgb,var(--primary) 12%,transparent),transparent 30%),linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--primary-3) 48%,var(--surface)))}.ai-settings-head{display:grid;grid-template-columns:56px 1fr auto;gap:14px;align-items:center;margin-bottom:15px}.ai-settings-head h3{font-family:Manrope,Inter,sans-serif;margin:4px 0;font-size:17px}.ai-settings-head p{margin:0;color:var(--muted)}.ai-orb{width:52px;height:52px;border-radius:17px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;font-family:Manrope,Inter,sans-serif;font-weight:900;box-shadow:0 12px 24px color-mix(in srgb,var(--primary) 24%,transparent);animation:aiFloat 3.5s ease-in-out infinite}@keyframes aiFloat{50%{transform:translateY(-4px) rotate(2deg)}}
@media(max-width:1100px){.worksheet-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.generation-mode-box,.compact-options,.worksheet-two-columns{grid-template-columns:1fr}.worksheet-card-grid{grid-template-columns:1fr;padding:0 12px 12px}.worksheet-cover{height:150px}.worksheet-doc-heading{grid-template-columns:50px 1fr}.worksheet-doc-heading>div:last-child{grid-column:1/-1;align-items:flex-start}.worksheet-identity-preview{grid-template-columns:1fr}.module-lkpd-action{align-items:stretch;flex-direction:column}.module-lkpd-action .toolbar-actions,.module-lkpd-action form{width:100%}.module-lkpd-action form .btn{flex:1}.ai-settings-head{grid-template-columns:48px 1fr}.ai-settings-head>.badge{grid-column:1/-1;justify-self:start}.ai-orb{width:44px;height:44px;border-radius:14px}}
@media(prefers-reduced-motion:reduce){.ai-orb{animation:none}}

/* PJOK Smart Admin Pro v3.3.0 — Keuangan & LKS */
.finance-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:26px 28px;margin-bottom:18px;overflow:hidden;position:relative;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 9%,var(--surface)),var(--surface) 58%,color-mix(in srgb,var(--info) 8%,var(--surface)))}
.finance-hero:after{content:"Rp";position:absolute;right:205px;top:-31px;font:900 118px/1 Manrope,Inter,sans-serif;color:color-mix(in srgb,var(--primary) 6%,transparent);transform:rotate(-7deg);pointer-events:none}.finance-hero>div{position:relative;z-index:1}.finance-hero h2{font:800 clamp(21px,2vw,30px)/1.18 Manrope,Inter,sans-serif;margin:7px 0}.finance-hero p{max-width:760px;margin:0;color:var(--muted)}.finance-hero .btn{position:relative;z-index:2}
.finance-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.finance-stat-grid.detail{margin-top:0}.finance-stat-card{display:flex;align-items:center;gap:13px;padding:17px;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.finance-stat-icon{width:45px;height:45px;display:grid;place-items:center;border-radius:14px;background:var(--primary-3);color:var(--primary);flex:0 0 auto}.finance-stat-icon.success{background:#e4f8ed;color:#168151}.finance-stat-icon.warning{background:#fff3dc;color:#b87308}.finance-stat-icon.info{background:#e8f1ff;color:#286fc1}.finance-stat-card>div{min-width:0;display:flex;flex-direction:column}.finance-stat-card small{font-size:10px;color:var(--muted)}.finance-stat-card strong{font:800 18px/1.25 Manrope,Inter,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finance-stat-card em{font-style:normal;font-size:9px;color:var(--muted)}
.finance-progress-panel{padding:15px 18px;margin-bottom:18px}.finance-progress-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.finance-progress-head div{display:flex;flex-direction:column}.finance-progress-head small{font-size:9px;color:var(--muted)}.finance-progress-head b{font:800 17px Manrope,Inter,sans-serif;color:var(--primary)}.finance-progress-track,.mini-progress{height:8px;background:var(--surface-2);border:1px solid var(--line);border-radius:999px;overflow:hidden}.finance-progress-track span,.mini-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),var(--primary-2));transition:width .5s ease}.mini-progress.pickup i{background:linear-gradient(90deg,var(--info),#53a1ef)}
.panel-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.finance-toolbar h3{margin:0;font:800 16px Manrope,Inter,sans-serif}.finance-filter-form{display:flex;gap:8px;align-items:center;flex:1}.search-input{display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--surface);border-radius:11px;padding:0 11px;min-height:40px;min-width:260px}.search-input input{border:0;outline:0;background:transparent;color:var(--text);width:100%;min-width:0}.finance-filter-form select{min-height:40px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--text);padding:0 10px}
.finance-card-list{display:grid;gap:12px}.finance-program-card{display:grid;grid-template-columns:minmax(330px,1.55fr) minmax(230px,.9fr) minmax(140px,.48fr) auto;gap:17px;align-items:center;border:1px solid var(--line);border-radius:16px;padding:15px;background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--primary) 2.5%,var(--surface)));transition:.2s}.finance-program-card:hover{border-color:color-mix(in srgb,var(--primary) 40%,var(--line));box-shadow:var(--shadow);transform:translateY(-1px)}.finance-program-main{display:flex;align-items:flex-start;gap:12px;min-width:0}.finance-category-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:var(--primary-3);color:var(--primary);flex:0 0 auto}.finance-category-icon.large{width:55px;height:55px;border-radius:17px}.finance-program-copy{min-width:0}.finance-program-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.finance-program-title h3{font:800 14px Manrope,Inter,sans-serif;margin:0;max-width:500px}.finance-program-copy>p{font-size:10px;color:var(--muted);margin:2px 0 8px}.finance-meta-row{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:9px;color:var(--muted)}.finance-meta-row strong{color:var(--text)}.finance-program-progress{display:grid;gap:10px}.finance-program-progress>div>span{display:flex;justify-content:space-between;gap:10px;margin-bottom:4px;font-size:9px}.finance-program-progress em{font-style:normal;color:var(--muted)}.mini-progress{height:6px}.finance-program-total{display:flex;flex-direction:column}.finance-program-total small,.finance-program-total span{font-size:9px;color:var(--muted)}.finance-program-total strong{font:800 15px Manrope,Inter,sans-serif;color:var(--primary)}.finance-program-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}.finance-program-actions form{display:flex}
.finance-detail-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.finance-detail-actions,.finance-bulk-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.finance-detail-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 7%,var(--surface)),var(--surface))}.finance-detail-title{display:flex;align-items:center;gap:14px}.finance-detail-title h2{margin:3px 0;font:800 21px Manrope,Inter,sans-serif}.finance-detail-title p{margin:0;color:var(--muted);font-size:10px}.finance-bulk-panel{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px;padding:15px 18px}.finance-bulk-panel p{margin:2px 0 0;font-size:9px}.finance-bulk-actions form{display:flex}
.finance-record-table-wrap{overflow:auto;max-height:68vh}.finance-record-table{min-width:1220px}.finance-record-table th{position:sticky;top:0;z-index:2;background:var(--surface-2)}.finance-record-table td{vertical-align:middle}.finance-student-row.complete{background:color-mix(in srgb,#26a269 5%,var(--surface))}.student-cell{display:flex;align-items:center;gap:9px;min-width:190px}.avatar.small{width:33px;height:33px;font-size:11px}.student-cell>span:last-child{display:flex;flex-direction:column}.student-cell small,.table-subtext{display:block;font-size:8px;color:var(--muted);margin-top:2px}.finance-check-card{display:block;min-width:128px;margin-bottom:6px}.finance-check-card input{position:absolute;opacity:0;pointer-events:none}.finance-check-card span{display:flex;align-items:center;justify-content:center;gap:5px;min-height:34px;padding:6px 9px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--muted);cursor:pointer;transition:.2s;font-size:9px}.finance-check-card input:checked+span{background:#e5f8ed;border-color:#54bd81;color:#117346;box-shadow:0 0 0 3px rgba(42,163,99,.08)}.finance-check-card.pickup input:checked+span{background:#e8f2ff;border-color:#6ca8e9;color:#1f66ae}.money-input{display:flex;align-items:center;border:1px solid var(--line);border-radius:9px;overflow:hidden;min-width:128px;background:var(--surface)}.money-input span{padding:0 7px;color:var(--muted);font-size:9px}.money-input input{border:0;outline:0;background:transparent;color:var(--text);width:100%;min-height:32px;padding:5px 7px}.finance-record-table input[type=date],.finance-record-table td>input[name^="notes"]{border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text);min-height:34px;padding:5px 8px}.finance-save-bar{position:sticky;bottom:74px;z-index:8;margin:14px 0 0;padding:12px 14px;border:1px solid color-mix(in srgb,var(--primary) 35%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(14px);box-shadow:0 14px 40px rgba(0,0,0,.13);display:flex;align-items:center;justify-content:space-between;gap:15px}.finance-save-bar>div{display:flex;flex-direction:column}.finance-save-bar small{font-size:9px;color:var(--muted)}
@media(max-width:1180px){.finance-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-program-card{grid-template-columns:1fr 1fr}.finance-program-main{grid-column:1/-1}.finance-program-actions{justify-content:flex-start}}
@media(max-width:760px){.finance-hero{align-items:flex-start;flex-direction:column;padding:20px}.finance-hero:after{right:-15px;top:-10px}.finance-hero .btn{width:100%}.finance-stat-grid{grid-template-columns:1fr 1fr;gap:9px}.finance-stat-card{padding:12px;gap:9px}.finance-stat-icon{width:38px;height:38px}.finance-stat-card strong{font-size:14px}.finance-toolbar,.finance-bulk-panel{align-items:stretch;flex-direction:column}.finance-filter-form{display:grid;grid-template-columns:1fr 1fr;width:100%}.finance-filter-form .search-input{grid-column:1/-1;min-width:0}.finance-filter-form .btn{grid-column:1/-1}.finance-program-card{grid-template-columns:1fr;padding:13px}.finance-program-main,.finance-program-progress{grid-column:auto}.finance-program-actions{justify-content:space-between}.finance-program-actions .btn{flex:1}.finance-detail-head{gap:8px}.finance-detail-actions .btn{font-size:10px;padding:8px}.finance-detail-hero{align-items:flex-start}.finance-detail-title{align-items:flex-start}.finance-detail-title h2{font-size:17px}.finance-bulk-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.finance-bulk-actions form:last-child{grid-column:1/-1}.finance-bulk-actions .btn{width:100%}.finance-record-table-wrap{max-height:none;overflow:visible}.finance-record-table{min-width:0;display:block}.finance-record-table thead{display:none}.finance-record-table tbody{display:grid;gap:11px}.finance-record-table tr{display:grid;grid-template-columns:1fr 1fr;gap:9px;border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--surface)}.finance-record-table td{display:block;border:0!important;padding:0!important}.finance-record-table td:before{content:attr(data-label);display:block;font-size:8px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.finance-record-table td:nth-child(1){display:none}.finance-record-table td:nth-child(2),.finance-record-table td:nth-child(8){grid-column:1/-1}.student-cell{min-width:0}.finance-check-card,.money-input{min-width:0;width:100%}.finance-record-table input[type=date],.finance-record-table td>input[name^="notes"]{width:100%}.finance-save-bar{bottom:82px;flex-direction:column;align-items:stretch}.finance-save-bar .btn{width:100%}}
@media(max-width:430px){.finance-stat-grid{grid-template-columns:1fr}.finance-filter-form{grid-template-columns:1fr}.finance-filter-form .search-input,.finance-filter-form .btn{grid-column:auto}.finance-bulk-actions{grid-template-columns:1fr}.finance-bulk-actions form:last-child{grid-column:auto}}

/* PJOK Smart Admin Pro v3.3.2 — pembayaran otomatis dan bukti bayar */
.finance-one-click-info{display:flex;align-items:center;gap:16px;padding:18px 20px;border:1px solid color-mix(in srgb,var(--primary) 25%,var(--border));background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 7%,var(--surface)),var(--surface))}.finance-one-click-info .finance-one-click-icon{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:15px;background:linear-gradient(135deg,#f7b32b,#ff8a00);box-shadow:0 10px 24px rgba(255,138,0,.25);font-size:23px}.finance-one-click-info strong{font-size:16px}.finance-one-click-info p{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.55}.btn-pay-now{width:100%;justify-content:center;border:0;background:linear-gradient(135deg,#0e9f67,#08774d);color:#fff;box-shadow:0 9px 20px rgba(14,159,103,.22);font-weight:800;white-space:nowrap}.btn-pay-now:hover{transform:translateY(-2px);box-shadow:0 13px 26px rgba(14,159,103,.3)}.payment-auto-note{display:block;margin-top:6px;text-align:center;color:var(--muted);font-size:10px}.payment-status-paid{display:inline-flex;align-items:center;justify-content:center;padding:7px 11px;border-radius:999px;background:#dff8e9;color:#087747;font-size:12px;font-weight:900;letter-spacing:.4px}.payment-paid-amount{display:block;margin-top:7px;color:var(--text);font-size:14px}.btn-link-danger{border:0;background:transparent;color:#c23b3b;padding:4px 0;margin-top:3px;font-size:11px;font-weight:700;cursor:pointer}.finance-manual-edit{margin-top:8px}.finance-manual-edit summary{cursor:pointer;color:var(--muted);font-size:10px;font-weight:700;list-style:none}.finance-manual-edit summary::-webkit-details-marker{display:none}.finance-manual-edit[open] summary{margin-bottom:8px;color:var(--primary)}.payment-proof-box{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:150px}.payment-date-badge{display:inline-flex;padding:6px 9px;border-radius:9px;background:color-mix(in srgb,var(--primary) 8%,var(--surface));color:var(--text);font-size:11px;font-weight:700}.payment-proof-box small{color:var(--muted);font-size:9px;overflow-wrap:anywhere}.btn-proof{padding:7px 10px;border-radius:9px;background:linear-gradient(135deg,#1f5fcb,#2d7cf1);color:#fff!important;font-size:11px;font-weight:800;box-shadow:0 8px 18px rgba(45,124,241,.18)}.payment-empty{display:inline-block;color:var(--muted);font-size:11px}.manual-date-input{margin-top:8px;max-width:150px;font-size:11px}.hidden-action-form{display:none}.finance-student-row.payment-highlight{animation:paymentSuccessGlow 2.4s ease both;position:relative}.finance-student-row.payment-highlight td{background:color-mix(in srgb,#16a36a 10%,var(--surface))}@keyframes paymentSuccessGlow{0%{box-shadow:inset 0 0 0 3px rgba(25,169,108,.8)}45%{box-shadow:inset 0 0 0 3px rgba(25,169,108,.25)}100%{box-shadow:inset 0 0 0 0 rgba(25,169,108,0)}}
@media(max-width:900px){.finance-one-click-info{align-items:flex-start}.finance-record-table-v331 thead{display:none}.finance-record-table-v331,.finance-record-table-v331 tbody,.finance-record-table-v331 tr,.finance-record-table-v331 td{display:block;width:100%}.finance-record-table-v331 tr{margin:12px;border:1px solid var(--border);border-radius:16px;overflow:hidden;background:var(--surface);box-shadow:var(--shadow-sm)}.finance-record-table-v331 td{display:grid;grid-template-columns:105px minmax(0,1fr);gap:10px;align-items:center;border:0;border-bottom:1px solid var(--border);padding:11px 13px}.finance-record-table-v331 td:last-child{border-bottom:0}.finance-record-table-v331 td:before{content:attr(data-label);font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);font-weight:800}.finance-record-table-v331 td[data-label="Siswa"]{display:block;padding:14px}.finance-record-table-v331 td[data-label="Siswa"]:before{display:none}.finance-record-table-v331 td[data-label="No"]{display:none}.finance-record-table-v331 .btn-pay-now{max-width:230px}.payment-proof-box{min-width:0}.manual-date-input{max-width:none}.finance-record-table-wrap{overflow:visible}.finance-record-table-v331{min-width:0}.finance-save-bar{position:sticky;bottom:76px;z-index:8;border-radius:15px;margin:14px 10px}}
@media(max-width:560px){.finance-one-click-info{padding:14px}.finance-one-click-info .finance-one-click-icon{width:42px;height:42px;flex-basis:42px}.finance-record-table-v331 td{grid-template-columns:92px minmax(0,1fr)}.finance-bulk-actions{display:grid;grid-template-columns:1fr}.finance-bulk-actions form,.finance-bulk-actions button{width:100%}.btn-pay-now{max-width:none!important}.payment-proof-box{align-items:stretch}.btn-proof{text-align:center}.finance-save-bar{flex-direction:column;align-items:stretch}.finance-save-bar .btn{width:100%}}


/* PJOK Smart Admin Pro v3.3.2 — mobile presisi Keuangan & LKS */
.finance-record-table-v332 .btn-pay-now{width:auto;min-width:74px;min-height:32px;padding:6px 13px;border-radius:9px;font-size:10px;line-height:1;letter-spacing:.04em;box-shadow:0 6px 14px rgba(14,159,103,.18)}
.finance-record-table-v332 .btn-pay-now:hover{transform:translateY(-1px);box-shadow:0 9px 18px rgba(14,159,103,.24)}
.finance-record-table-v332 .finance-payment-cell{min-width:132px}
.manual-date-field{display:grid;gap:4px;margin-top:8px;color:var(--muted);font-size:9px;font-weight:700}
.manual-date-field .manual-date-input{width:100%;max-width:none;margin:0}
.save-label-mobile{display:none}

@media(max-width:720px){
  .finance-detail-head{align-items:center;margin-bottom:10px}
  .finance-detail-head>.btn,.finance-detail-actions .btn{min-height:32px;padding:6px 9px;border-radius:9px;font-size:9px;gap:5px}
  .finance-detail-actions{gap:5px}
  .finance-detail-hero.panel{padding:13px 14px;margin-bottom:10px;border-radius:14px}
  .finance-detail-title{gap:9px}
  .finance-category-icon.large{width:38px;height:38px;min-width:38px;border-radius:11px}
  .finance-detail-title .eyebrow{font-size:7px}
  .finance-detail-title h2{font-size:15px;line-height:1.2;margin:2px 0}
  .finance-detail-title p{font-size:8px;line-height:1.35;margin:0}
  .finance-detail-hero>.badge{font-size:8px;padding:5px 8px}
  .finance-stat-grid.detail{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:10px}
  .finance-stat-grid.detail .finance-stat-card{padding:9px;gap:7px;min-height:70px;border-radius:12px}
  .finance-stat-grid.detail .finance-stat-icon{width:31px;height:31px;min-width:31px;border-radius:9px}
  .finance-stat-grid.detail small{font-size:7px}
  .finance-stat-grid.detail strong{font-size:12px;line-height:1.15}
  .finance-stat-grid.detail em{font-size:7px;line-height:1.25}
  .finance-one-click-info{padding:10px 11px;gap:9px;margin-bottom:10px;border-radius:12px}
  .finance-one-click-info .finance-one-click-icon{width:32px;height:32px;flex-basis:32px;border-radius:9px;font-size:16px}
  .finance-one-click-info strong{font-size:10px}
  .finance-one-click-info p{font-size:8px;line-height:1.4;margin-top:2px}
  .finance-bulk-panel{padding:10px 11px;margin-bottom:10px;gap:8px}
  .finance-bulk-panel>div:first-child strong{font-size:10px}
  .finance-bulk-panel>div:first-child p{font-size:7px;line-height:1.3}
  .finance-bulk-actions{display:flex;flex-wrap:wrap;gap:5px;width:100%}
  .finance-bulk-actions form{width:auto;flex:1 1 calc(50% - 3px)}
  .finance-bulk-actions form:last-child{grid-column:auto;flex-basis:100%}
  .finance-bulk-actions .btn{width:100%;min-height:31px;padding:5px 7px;border-radius:8px;font-size:8px;gap:4px}
  .finance-record-panel{padding:10px 8px 12px}
  .finance-toolbar{gap:8px;margin-bottom:9px}
  .finance-toolbar h3{font-size:12px;line-height:1.25}
  .finance-toolbar p{font-size:8px;line-height:1.35;margin-top:2px}
  .finance-toolbar .search-form{display:flex;width:100%;gap:5px}
  .finance-toolbar .search-input{min-width:0;min-height:34px;padding:0 9px;flex:1}
  .finance-toolbar .search-input input{font-size:10px}
  .finance-toolbar .search-form>.btn{min-height:34px;padding:6px 10px;font-size:9px}
  .finance-record-table-wrap{margin:0;overflow:visible}
  .finance-record-table-v332,.finance-record-table-v332 tbody{display:block!important;width:100%!important;min-width:0!important}
  .finance-record-table-v332 thead{display:none!important}
  .finance-record-table-v332 tbody{display:grid!important;gap:8px}
  .finance-record-table-v332 tbody>tr:not(.finance-student-row){display:block!important;width:100%!important;margin:0!important}
  .finance-record-table-v332 tbody>tr:not(.finance-student-row)>td{display:block!important;padding:14px!important}
  .finance-record-table-v332 tr.finance-student-row{display:grid!important;grid-template-columns:86px minmax(0,1fr)!important;gap:0 8px!important;width:100%!important;margin:0!important;padding:10px 11px!important;border:1px solid var(--line)!important;border-radius:13px!important;background:var(--surface)!important;box-shadow:0 5px 16px rgba(15,45,32,.05)!important;overflow:visible!important}
  .finance-record-table-v332 td{display:grid!important;grid-template-columns:86px minmax(0,1fr)!important;grid-column:1/-1!important;gap:8px!important;align-items:center!important;width:100%!important;min-width:0!important;padding:7px 0!important;border:0!important;border-bottom:1px dashed color-mix(in srgb,var(--line) 78%,transparent)!important}
  .finance-record-table-v332 td:last-child{border-bottom:0!important}
  .finance-record-table-v332 td:before{content:attr(data-label)!important;display:block!important;margin:0!important;font-size:7px!important;line-height:1.2!important;font-weight:800!important;letter-spacing:.04em!important;text-transform:uppercase!important;color:var(--muted)!important}
  .finance-record-table-v332 td[data-label="No"]{display:none!important}
  .finance-record-table-v332 .finance-student-info{display:block!important;padding:0 0 9px!important;border-bottom:1px solid var(--line)!important}
  .finance-record-table-v332 .finance-student-info:before{display:none!important}
  .finance-record-table-v332 .student-cell{min-width:0;gap:8px}
  .finance-record-table-v332 .avatar.small{width:30px;height:30px;min-width:30px;font-size:10px;border-radius:9px}
  .finance-record-table-v332 .student-cell strong{display:block;font-size:11px;line-height:1.25;white-space:normal;overflow-wrap:anywhere}
  .finance-record-table-v332 .student-cell small{font-size:7px;line-height:1.3;margin-top:2px}
  .finance-record-table-v332 .finance-amount-main{display:flex;align-items:baseline;gap:5px;min-width:0}
  .finance-record-table-v332 .finance-amount-main>strong{font-size:11px}
  .finance-record-table-v332 .table-subtext{display:inline;margin:0;font-size:7px}
  .finance-record-table-v332 .finance-payment-cell{min-width:0}
  .finance-record-table-v332 .finance-payment-main{display:flex;align-items:center;gap:6px;min-width:0;flex-wrap:wrap}
  .finance-record-table-v332 .btn-pay-now{justify-self:start;width:auto!important;max-width:none!important;min-width:68px;min-height:29px;padding:5px 12px;border-radius:8px;font-size:9px;letter-spacing:.06em;box-shadow:0 5px 12px rgba(14,159,103,.17)}
  .finance-record-table-v332 .payment-auto-note{display:none}
  .finance-record-table-v332 .payment-status-paid{justify-self:start;padding:5px 8px;font-size:9px}
  .finance-record-table-v332 .payment-paid-amount{display:inline;margin:0;font-size:10px}
  .finance-record-table-v332 .btn-link-danger{justify-self:start;margin:0;font-size:8px;padding:2px 0}
  .finance-record-table-v332 .finance-manual-edit{justify-self:start;width:100%;margin:2px 0 0;grid-column:2}
  .finance-record-table-v332 .finance-manual-edit summary{font-size:8px}
  .finance-record-table-v332 .finance-manual-edit[open]{padding:7px;border:1px solid var(--line);border-radius:9px;background:var(--surface-2)}
  .finance-record-table-v332 .finance-check-card,.finance-record-table-v332 .money-input{width:100%;min-width:0}
  .finance-record-table-v332 .finance-check-card span{min-height:30px;padding:5px 7px;font-size:8px}
  .finance-record-table-v332 .money-input input{min-height:29px;font-size:10px}
  .finance-record-table-v332 .finance-proof-cell.is-empty{display:none!important}
  .finance-record-table-v332 .finance-proof-cell.has-payment{align-items:start!important}
  .finance-record-table-v332 .payment-proof-box{min-width:0;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:5px;width:100%}
  .finance-record-table-v332 .payment-date-badge{padding:5px 7px;font-size:8px;border-radius:7px;white-space:nowrap}
  .finance-record-table-v332 .payment-proof-box small{font-size:7px;min-width:0;overflow-wrap:anywhere}
  .finance-record-table-v332 .btn-proof{width:auto;min-height:28px;padding:5px 8px;border-radius:8px;font-size:8px;white-space:nowrap}
  .finance-record-table-v332 .finance-pickup-cell .finance-check-card{max-width:150px;margin:0}
  .finance-record-table-v332 .finance-pickup-date-cell input,.finance-record-table-v332 .finance-notes-cell input{width:100%;min-height:31px;padding:5px 7px;border-radius:8px;font-size:9px}
  .finance-save-bar{bottom:73px;margin:10px 0 0;padding:9px 10px;border-radius:12px;flex-direction:row;align-items:center}
  .finance-save-bar>div{display:flex}
  .finance-save-bar strong{font-size:9px}
  .finance-save-bar small{font-size:7px}
  .finance-save-bar .btn{width:auto;min-height:34px;padding:6px 12px;border-radius:9px;font-size:9px}
  .save-label-desktop{display:none}.save-label-mobile{display:inline}
}

@media(max-width:390px){
  .finance-detail-title p{max-width:220px}
  .finance-stat-grid.detail{grid-template-columns:1fr 1fr}
  .finance-record-table-v332 tr.finance-student-row{grid-template-columns:80px minmax(0,1fr)!important;padding:9px!important}
  .finance-record-table-v332 td{grid-template-columns:80px minmax(0,1fr)!important;padding:6px 0!important}
  .finance-record-table-v332 .payment-proof-box{grid-template-columns:1fr auto}
  .finance-record-table-v332 .payment-proof-box small{grid-column:1/-1;grid-row:2}
}

/* PJOK Smart Admin Pro v3.3.3 — Keuangan mobile minimalis profesional */
.finance-record-table-v333 .btn-pay-now{width:auto;min-width:66px;min-height:30px;padding:6px 12px;border-radius:9px;font-size:9px;line-height:1;letter-spacing:.05em;box-shadow:0 6px 14px rgba(14,159,103,.18)}
.finance-mobile-toggle,.proof-label-mobile{display:none}
.finance-mobile-toggle{appearance:none;border:0;background:transparent;color:var(--primary);font:800 8px/1 Manrope,Inter,sans-serif;align-items:center;gap:3px;padding:5px 2px;cursor:pointer}
.finance-mobile-chevron{font-size:13px;line-height:1;transition:transform .2s ease}
.finance-student-row.mobile-expanded .finance-mobile-chevron{transform:rotate(180deg)}

@media(max-width:720px){
  .finance-one-click-info{display:none}
  .finance-bulk-panel{padding:8px 9px;margin-bottom:9px;border-radius:12px}
  .finance-bulk-panel>div:first-child{display:none}
  .finance-bulk-actions{display:flex!important;flex-wrap:nowrap!important;gap:5px!important;overflow-x:auto;padding-bottom:1px;scrollbar-width:none}
  .finance-bulk-actions::-webkit-scrollbar{display:none}
  .finance-bulk-actions form,.finance-bulk-actions form:last-child{flex:0 0 auto!important;width:auto!important}
  .finance-bulk-actions .btn{width:auto!important;min-height:29px!important;padding:5px 8px!important;border-radius:8px!important;font-size:7px!important;white-space:nowrap!important}

  .finance-record-panel{padding:9px 7px 12px!important;border-radius:15px}
  .finance-toolbar{margin-bottom:8px!important}
  .finance-toolbar h3{font-size:12px!important}
  .finance-toolbar p{display:none}
  .finance-toolbar .search-input{min-height:34px!important;border-radius:11px}
  .finance-toolbar .search-form>.btn{min-width:48px!important;padding:5px 8px!important;border-radius:10px!important}

  .finance-record-table-v333,.finance-record-table-v333 tbody{display:block!important;width:100%!important;min-width:0!important}
  .finance-record-table-v333 thead{display:none!important}
  .finance-record-table-v333 tbody{display:grid!important;gap:8px!important}
  .finance-record-table-v333 tbody>tr:not(.finance-student-row){display:block!important;width:100%!important}
  .finance-record-table-v333 tbody>tr:not(.finance-student-row)>td{display:block!important;padding:13px!important}

  .finance-record-table-v333 tr.finance-student-row{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:0 10px!important;
    width:100%!important;
    margin:0!important;
    padding:11px 12px!important;
    border:1px solid color-mix(in srgb,var(--line) 88%,transparent)!important;
    border-radius:16px!important;
    background:var(--surface)!important;
    box-shadow:0 4px 14px rgba(15,45,32,.045)!important;
    overflow:hidden!important;
  }
  .finance-record-table-v333 tr.finance-student-row.payment-highlight{box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 16%,transparent),0 7px 20px rgba(15,45,32,.08)!important}
  .finance-record-table-v333 td{display:block!important;width:auto!important;min-width:0!important;padding:0!important;border:0!important}
  .finance-record-table-v333 td:before{display:none!important}
  .finance-record-table-v333 td[data-label="No"]{display:none!important}

  .finance-record-table-v333 .finance-student-info{grid-column:1/-1!important;padding:0 0 9px!important;margin-bottom:9px!important;border-bottom:1px solid color-mix(in srgb,var(--line) 86%,transparent)!important}
  .finance-record-table-v333 .student-cell{display:grid!important;grid-template-columns:34px minmax(0,1fr) auto!important;gap:9px!important;align-items:center!important;min-width:0!important}
  .finance-record-table-v333 .avatar.small{width:34px!important;height:34px!important;min-width:34px!important;border-radius:10px!important;font-size:11px!important}
  .finance-record-table-v333 .student-identity{display:block!important;min-width:0!important}
  .finance-record-table-v333 .student-cell strong{display:block!important;font-size:11px!important;line-height:1.25!important;white-space:normal!important;overflow-wrap:anywhere!important}
  .finance-record-table-v333 .student-cell small{display:block!important;margin-top:2px!important;font-size:7px!important;line-height:1.25!important;color:var(--muted)!important}
  .finance-mobile-toggle{display:inline-flex!important;justify-self:end!important}

  .finance-record-table-v333 .finance-amount-cell{grid-column:1!important;align-self:center!important}
  .finance-record-table-v333 .finance-amount-main{display:flex!important;align-items:baseline!important;gap:5px!important;min-width:0!important}
  .finance-record-table-v333 .finance-amount-main:before{content:"TAGIHAN";display:block;margin-right:2px;font-size:6px;font-weight:900;letter-spacing:.07em;color:var(--muted)}
  .finance-record-table-v333 .finance-amount-main>strong{font-size:11px!important;white-space:nowrap!important}
  .finance-record-table-v333 .table-subtext{display:inline!important;margin:0!important;font-size:7px!important;white-space:nowrap!important}

  .finance-record-table-v333 .finance-payment-cell{grid-column:2!important;align-self:center!important;justify-self:end!important;min-width:0!important}
  .finance-record-table-v333 .finance-payment-main{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:5px!important;flex-wrap:wrap!important}
  .finance-record-table-v333 .btn-pay-now{width:auto!important;min-width:62px!important;min-height:29px!important;padding:5px 11px!important;border-radius:9px!important;font-size:9px!important;box-shadow:0 5px 12px rgba(14,159,103,.16)!important}
  .finance-record-table-v333 .payment-auto-note{display:none!important}
  .finance-record-table-v333 .payment-status-paid{padding:5px 8px!important;border-radius:999px!important;font-size:8px!important;white-space:nowrap!important}
  .finance-record-table-v333 .payment-paid-amount{font-size:10px!important;white-space:nowrap!important}
  .finance-record-table-v333 .btn-link-danger{font-size:7px!important;padding:1px 0!important}
  .finance-record-table-v333 .finance-manual-edit{display:none!important;grid-column:1/-1!important;width:100%!important;margin-top:8px!important}
  .finance-record-table-v333 tr.mobile-expanded .finance-manual-edit{display:block!important}
  .finance-record-table-v333 .finance-manual-edit summary{font-size:8px!important}
  .finance-record-table-v333 .finance-manual-edit[open]{padding:8px!important;border:1px solid var(--line)!important;border-radius:10px!important;background:var(--surface-2)!important}
  .finance-record-table-v333 .finance-check-card,.finance-record-table-v333 .money-input{width:100%!important;min-width:0!important}
  .finance-record-table-v333 .finance-check-card span{min-height:31px!important;padding:5px 8px!important;font-size:8px!important}
  .finance-record-table-v333 .money-input input{min-height:30px!important;font-size:9px!important}

  .finance-record-table-v333 .finance-proof-cell{grid-column:1/-1!important;margin-top:9px!important;padding-top:9px!important;border-top:1px dashed color-mix(in srgb,var(--line) 82%,transparent)!important}
  .finance-record-table-v333 .finance-proof-cell.is-empty{display:none!important}
  .finance-record-table-v333 .payment-proof-box{display:flex!important;align-items:center!important;gap:6px!important;width:100%!important;min-width:0!important}
  .finance-record-table-v333 .payment-date-badge{padding:5px 7px!important;border-radius:8px!important;font-size:7px!important;white-space:nowrap!important}
  .finance-record-table-v333 .payment-proof-box small{display:none!important;min-width:0!important;font-size:6px!important;overflow-wrap:anywhere!important}
  .finance-record-table-v333 tr.mobile-expanded .payment-proof-box small{display:block!important;flex:1!important}
  .finance-record-table-v333 .btn-proof{margin-left:auto!important;width:auto!important;min-height:28px!important;padding:5px 8px!important;border-radius:8px!important;font-size:8px!important;white-space:nowrap!important}
  .proof-label-desktop{display:none!important}.proof-label-mobile{display:inline!important}

  .finance-record-table-v333 .finance-pickup-cell{grid-column:1/-1!important;margin-top:9px!important;padding-top:9px!important;border-top:1px dashed color-mix(in srgb,var(--line) 82%,transparent)!important}
  .finance-record-table-v333 .finance-pickup-cell .finance-check-card{max-width:none!important;margin:0!important}
  .finance-record-table-v333 .finance-pickup-cell .finance-check-card span{justify-content:flex-start!important;width:100%!important;min-height:32px!important;padding:6px 9px!important;border-radius:10px!important;font-size:8px!important}

  .finance-record-table-v333 .finance-pickup-date-cell,.finance-record-table-v333 .finance-notes-cell{display:none!important;grid-column:1/-1!important;margin-top:8px!important}
  .finance-record-table-v333 tr.mobile-expanded .finance-pickup-date-cell,.finance-record-table-v333 tr.mobile-expanded .finance-notes-cell{display:grid!important;grid-template-columns:78px minmax(0,1fr)!important;gap:8px!important;align-items:center!important}
  .finance-record-table-v333 tr.mobile-expanded .finance-pickup-date-cell:before,.finance-record-table-v333 tr.mobile-expanded .finance-notes-cell:before{display:block!important;content:attr(data-label)!important;font-size:7px!important;font-weight:900!important;letter-spacing:.04em!important;text-transform:uppercase!important;color:var(--muted)!important}
  .finance-record-table-v333 .finance-pickup-date-cell input,.finance-record-table-v333 .finance-notes-cell input{width:100%!important;min-height:32px!important;padding:5px 8px!important;border-radius:9px!important;font-size:9px!important}

  .finance-save-bar{bottom:73px!important;margin:9px 0 0!important;padding:8px 10px!important;border-radius:12px!important;flex-direction:row!important;align-items:center!important}
  .finance-save-bar>div{display:flex!important}
  .finance-save-bar strong{font-size:9px!important}.finance-save-bar small{display:none!important}
  .finance-save-bar .btn{width:auto!important;min-height:33px!important;padding:6px 12px!important;border-radius:9px!important;font-size:9px!important}
  .save-label-desktop{display:none!important}.save-label-mobile{display:inline!important}
}

@media(max-width:390px){
  .finance-record-table-v333 tr.finance-student-row{padding:10px!important}
  .finance-record-table-v333 .student-cell{grid-template-columns:32px minmax(0,1fr) auto!important;gap:7px!important}
  .finance-record-table-v333 .avatar.small{width:32px!important;height:32px!important;min-width:32px!important}
  .finance-record-table-v333 .finance-amount-main:before{display:none!important}
  .finance-record-table-v333 .payment-paid-amount{display:none!important}
  .finance-record-table-v333 tr.mobile-expanded .payment-paid-amount{display:inline!important}
}


/* PJOK Smart Admin Pro v3.3.4 — tombol DIAMBIL dan pemilih kelas yang jelas */
.finance-class-chooser{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 14px;padding:12px 13px;border:1px solid color-mix(in srgb,var(--primary) 18%,var(--line));border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 5%,var(--surface)),var(--surface))}
.finance-class-chooser-copy{display:flex;align-items:center;gap:9px;flex:0 0 auto}.finance-class-chooser-copy>div{display:flex;flex-direction:column}.finance-class-chooser-copy strong{font:800 12px/1.2 Manrope,Inter,sans-serif}.finance-class-chooser-copy small{font-size:8px;color:var(--muted);margin-top:2px}.finance-class-chooser-icon{width:33px;height:33px;border-radius:10px;display:grid;place-items:center;background:var(--primary-3);color:var(--primary)}
.finance-class-tabs{display:flex;align-items:center;justify-content:flex-end;gap:6px;overflow-x:auto;scrollbar-width:none;padding:2px}.finance-class-tabs::-webkit-scrollbar{display:none}.finance-class-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:74px;min-height:42px;padding:6px 10px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--text);text-decoration:none;transition:.2s;white-space:nowrap}.finance-class-tab span{font:800 10px/1.15 Manrope,Inter,sans-serif}.finance-class-tab small{font-size:7px;color:var(--muted);margin-top:2px}.finance-class-tab:hover{border-color:color-mix(in srgb,var(--primary) 45%,var(--line));transform:translateY(-1px)}.finance-class-tab.active{border-color:var(--primary);background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;box-shadow:0 7px 18px color-mix(in srgb,var(--primary) 20%,transparent)}.finance-class-tab.active small{color:rgba(255,255,255,.78)}
.finance-program-class-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:5px}.finance-class-badge,.finance-detail-class-badge{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:color-mix(in srgb,var(--primary) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 26%,var(--line));color:var(--primary);font:900 8px/1 Manrope,Inter,sans-serif;letter-spacing:.045em}.finance-detail-class-line{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.finance-detail-class-line .eyebrow{margin:0}.finance-manage-class{white-space:nowrap}
.finance-pickup-main{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.btn-pickup-now{width:auto;min-width:78px;min-height:30px;padding:6px 10px;border:1px solid color-mix(in srgb,var(--info) 55%,var(--line));border-radius:9px;background:linear-gradient(135deg,#2382dc,#1766bb);color:#fff;font:900 9px/1 Manrope,Inter,sans-serif;letter-spacing:.035em;box-shadow:0 6px 14px rgba(35,130,220,.18);display:inline-flex;align-items:center;justify-content:center;gap:4px;cursor:pointer}.btn-pickup-now:hover{filter:brightness(1.04);transform:translateY(-1px)}.pickup-status-collected{display:inline-flex;align-items:center;justify-content:center;min-height:29px;padding:6px 9px;border-radius:999px;background:#e8f2ff;border:1px solid #8ab9ea;color:#185f9e;font:900 8px/1 Manrope,Inter,sans-serif;white-space:nowrap}.pickup-date-short{font-size:7px;color:var(--muted);white-space:nowrap}.pickup-cancel{font-size:7px!important}.finance-pickup-manual{margin-top:6px}.finance-pickup-manual summary{cursor:pointer;color:var(--muted);font-size:8px;font-weight:800}.finance-pickup-manual .finance-check-card{margin-top:6px}

@media(max-width:760px){
  .finance-filter-form select[name="class_id"]{display:none}
  .finance-class-chooser{display:block;margin:0 0 11px;padding:10px;border-radius:13px}
  .finance-class-chooser-copy{margin-bottom:8px}.finance-class-chooser-copy small{display:none}.finance-class-tabs{justify-content:flex-start;margin:0 -2px;padding:1px 2px 3px}.finance-class-tab{min-width:68px;min-height:39px;padding:5px 8px;border-radius:10px}.finance-class-tab span{font-size:9px}.finance-class-tab small{font-size:6px}
  .finance-program-class-row{margin-bottom:6px}.finance-class-badge{padding:5px 8px;font-size:8px;background:var(--primary);border-color:var(--primary);color:#fff}.finance-program-title h3{font-size:15px!important}.finance-program-copy>p{font-size:8px!important}.finance-manage-class span{display:none}
  .finance-detail-class-badge{padding:5px 8px;font-size:8px;background:var(--primary);border-color:var(--primary);color:#fff}.finance-detail-class-line{gap:5px;margin-bottom:2px}
  .finance-record-table-v333 tr.finance-student-row{grid-template-columns:minmax(0,1fr) auto auto!important;column-gap:6px!important}
  .finance-record-table-v333 .finance-amount-cell{grid-column:1!important}.finance-record-table-v333 .finance-payment-cell{grid-column:2!important}.finance-record-table-v333 .finance-pickup-cell{grid-column:3!important;align-self:center!important;justify-self:end!important;margin:0!important;padding:0!important;border:0!important}
  .finance-record-table-v333 .finance-pickup-main{justify-content:flex-end;gap:4px}.finance-record-table-v333 .btn-pickup-now{min-width:64px!important;min-height:29px!important;padding:5px 7px!important;border-radius:9px!important;font-size:8px!important}.finance-record-table-v333 .pickup-status-collected{min-height:28px!important;padding:5px 7px!important;font-size:7px!important}.finance-record-table-v333 .pickup-date-short,.finance-record-table-v333 .pickup-cancel{display:none!important}.finance-record-table-v333 tr.mobile-expanded .pickup-date-short,.finance-record-table-v333 tr.mobile-expanded .pickup-cancel{display:inline!important}
  .finance-record-table-v333 .finance-pickup-manual{display:none!important;grid-column:1/-1!important;width:100%!important;margin-top:7px!important}.finance-record-table-v333 tr.mobile-expanded .finance-pickup-manual{display:block!important}.finance-record-table-v333 .finance-pickup-manual[open]{padding:7px!important;border:1px solid var(--line)!important;border-radius:9px!important;background:var(--surface-2)!important}.finance-record-table-v333 .finance-pickup-manual summary{font-size:7px!important}.finance-record-table-v333 .finance-pickup-manual .finance-check-card{margin:6px 0 0!important}
  .finance-record-table-v333 .finance-proof-cell{margin-top:8px!important;padding-top:8px!important}
}
@media(max-width:390px){
  .finance-record-table-v333 tr.finance-student-row{grid-template-columns:minmax(0,1fr) auto auto!important;column-gap:4px!important}
  .finance-record-table-v333 .btn-pay-now{min-width:55px!important;padding:5px 8px!important;font-size:8px!important}.finance-record-table-v333 .btn-pickup-now{min-width:57px!important;padding:5px 6px!important;font-size:7px!important}.finance-record-table-v333 .payment-status-paid{padding:5px 6px!important;font-size:7px!important}.finance-record-table-v333 .pickup-status-collected{padding:5px 6px!important;font-size:7px!important}
}


/* SIMADU Guru Sekolah Pro v4.1.0 — logo sekolah tampil utuh tanpa terpotong */
.brand{height:auto;min-height:88px;padding:13px 14px;gap:10px}
.brand-logo{width:56px;height:56px;padding:4px;border-radius:14px;background:#fff;border:1px solid rgba(255,255,255,.35);box-shadow:0 8px 24px rgba(0,0,0,.18);transition:width .2s ease,transform .2s ease}
.brand-logo.is-wide{width:76px}
.brand-logo img,.doc-logo img,.logo-preview img{display:block;width:100%;height:100%;object-fit:contain!important;object-position:center!important}
.brand-logo img{border-radius:9px}
.brand-copy strong{font-size:13px}.brand-copy small{font-size:9px}
.logo-preview{width:148px;height:92px;padding:6px;border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.logo-preview img{border-radius:10px}
.doc-logo{background:#fff!important;border:1px solid var(--line);padding:4px}
.doc-logo img{border-radius:8px}
.login-brand-mark,.login-mobile-brand>span{overflow:hidden;background:#fff!important;padding:4px;color:var(--primary);border:1px solid rgba(255,255,255,.3)}
.login-brand-mark.is-wide{width:74px}
.login-brand-mark img,.login-mobile-brand>span img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;border-radius:8px}
@media(max-width:720px){.brand{min-height:82px;padding:12px 13px}.brand-logo{width:52px;height:52px}.brand-logo.is-wide{width:72px}.logo-preview{width:116px;height:76px}.logo-upload-row{align-items:flex-start}.login-mobile-brand>span{width:48px;height:48px;border-radius:13px;display:grid;place-items:center;flex:0 0 auto}.login-mobile-brand{align-items:center;gap:10px}}
