/* Huangjia: one attendance group, with the active child kept visible. */
.side-nav .attendance-nav-group{margin:4px 0;padding:0;border:1px solid transparent;border-radius:11px;min-width:0}
.side-nav .attendance-nav-group>summary{list-style:none;display:flex;align-items:center;gap:11px;padding:11px 12px;min-height:44px;box-sizing:border-box;border-radius:10px;color:var(--ink-2);font-size:14.5px;font-weight:600;cursor:pointer;user-select:none}
.side-nav .attendance-nav-group>summary::-webkit-details-marker{display:none}
.side-nav .attendance-nav-group>summary::marker{content:""}
.side-nav .attendance-nav-group>summary>svg{width:17px;height:17px;flex:none;opacity:.8}
.side-nav .attendance-nav-group>summary>span{flex:1}
.side-nav .attendance-nav-group>summary .attendance-nav-chevron{width:14px;height:14px;transition:transform .15s ease}
.side-nav .attendance-nav-group[open]>summary .attendance-nav-chevron{transform:rotate(180deg)}
.side-nav .attendance-nav-group.is-active>summary{color:var(--ink);background:var(--accent-soft)}
.side-nav .attendance-nav-group.is-active>summary>svg:first-child{color:var(--accent);opacity:1}
.side-nav .attendance-nav-items{padding:3px 0 5px 17px;margin-left:19px;border-left:1px solid var(--line-soft)}
.side-nav .attendance-nav-group:not([open])>.attendance-nav-items{display:none}
.side-nav .attendance-nav-items>a{gap:9px;min-height:38px;padding:8px 10px;font-size:13px;margin:2px 0;border-radius:7px}
.side-nav .attendance-nav-items>a.active::before{display:none}
.side-nav .attendance-nav-dot{width:4px;height:4px;flex:none;border-radius:50%;background:currentColor;opacity:.45}
.side-nav .attendance-nav-items>a.active .attendance-nav-dot{opacity:1;background:var(--accent)}
.side-nav .attendance-nav-group>summary:hover{color:var(--ink);background:var(--accent-soft)}
.side-nav .attendance-nav-group>summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.attendance-section-heading{display:flex;align-items:center;gap:8px;padding:2px 0 12px;margin:0 0 12px;border-bottom:1px solid var(--line-soft);font-size:12px;color:var(--ink-3)}
.attendance-section-heading>strong{color:var(--accent);font-weight:650}
.mini-punch-notice{max-width:650px;margin:32px auto;padding:30px;border-radius:15px;background:#fffdf7;color:#383024;border:1px solid #dcd0b5}
.mini-punch-notice h1{color:#332b1e;font-size:25px;line-height:1.4;margin:0 0 14px}
.mini-punch-notice p{color:#645744;font-size:14px;line-height:1.8;margin:0 0 18px}
.mini-punch-notice .mini-punch-steps{padding:15px;background:#f3ecdc;border-radius:9px;color:#725417;font-weight:600}
.mini-punch-notice .btn{box-shadow:none}
@media(max-width:960px){
 .side-nav:has(.attendance-nav-group){flex-wrap:wrap;overflow-x:visible;align-items:flex-start;gap:2px 4px}
 .side-nav .attendance-nav-group{flex:0 0 100%;margin:2px 0;background:rgba(180,139,44,.04);border-color:var(--line-soft)}
 .side-nav .attendance-nav-group>summary{padding:10px 12px}
 .side-nav .attendance-nav-items{display:flex;flex-wrap:wrap;gap:4px;margin:0 10px 8px;padding:0;border:0}
 .side-nav .attendance-nav-items>a{flex:0 0 auto;margin:0;padding:8px 10px;white-space:nowrap}
 .attendance-section-heading{margin-bottom:12px;padding-bottom:10px}
 .mini-punch-notice{margin:15px auto;padding:22px}
}
@media(prefers-reduced-motion:reduce){.side-nav .attendance-nav-group>summary .attendance-nav-chevron{transition:none}}
