/* Shared styles for the live application, including link-based navigation. */
:root{--accent:#087c60;--accent-soft:#e2f7ee}
body[data-page=subjects],body[data-page=charts],body[data-page=team]{--accent:#7951c8;--accent-soft:#f0e9ff}
body[data-page=schedule],body[data-page=students],body[data-page=reports]{--accent:#3569c9;--accent-soft:#e8f0ff}
body[data-page=billing],body[data-page=exams],body[data-page=holidays]{--accent:#9c6514;--accent-soft:#fff2d9}
.ui-icon{width:21px;height:21px;flex-shrink:0;vertical-align:middle}
#sidebar{background:linear-gradient(170deg,#fff 45%,#f0f8f6);border-right:1px solid #e1ebe8}
.nav-item{font-size:13px;font-weight:600;min-height:44px;transition:background .18s}
.nav-item svg{color:#0c8c70}.nav-item:nth-child(3n) svg{color:#9061d0}.nav-item:nth-child(3n+1) svg{color:#467bcb}.nav-item:nth-child(5n) svg{color:#ba8425}
.nav-item:hover{background:#edf5f2}.nav-item.active{background:var(--accent);box-shadow:0 5px 13px #193e5020}.nav-item.active svg{color:#fff}
.page-heading{padding:22px 25px;border:1px solid #fff;border-radius:20px;background:linear-gradient(115deg,var(--accent-soft),#ffffffba);box-shadow:0 5px 25px #26355405;gap:16px}
.page-heading h1{color:var(--accent);font-size:28px;line-height:1.3;overflow-wrap:anywhere}.page-heading p{margin-top:7px}
.card{border:1px solid #e1e9f1}.card-head{background:linear-gradient(100deg,var(--accent-soft),#fff);border-radius:17px 17px 0 0}.card-head h2{color:#233e51}
.form-card{border-top:4px solid var(--accent);max-width:900px}.form-card h2{color:var(--accent);font-size:19px}.form-card p{line-height:1.7;color:#637787;font-size:13px}
.form-card input:focus,.form-card select:focus,.form-card textarea:focus,.auth-card input:focus{outline:3px solid #349bba25;border-color:var(--accent)}
.btn.primary{background:var(--accent);border-color:var(--accent)}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:24px 0}.stat{min-width:0;display:flex;flex-direction:column;gap:12px}.stat-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.stat strong{display:block;line-height:1.1;margin:0}.stat small{display:block;color:#66788a;font-size:11px}.stat-icon{display:grid;place-items:center;border-radius:11px;flex-shrink:0}
.quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:20px;gap:12px}.quick-grid a{display:flex;flex-direction:column;gap:12px;min-height:94px;justify-content:center;background:#e9f8f0;border:1px solid #d4eddf;color:#167558}.quick-grid a:nth-child(2){background:#eaf0ff;color:#3d66b8;border-color:#d7e2ff}.quick-grid a:nth-child(3){background:#fff4df;color:#9c701d;border-color:#f3e3c3}.quick-grid a:nth-child(4){background:#f1eaff;color:#8051b5;border-color:#e5d8f6}.quick-grid .ui-icon{width:26px;height:26px}
.toolbar{background:linear-gradient(110deg,#fff,var(--accent-soft));gap:12px}.toolbar input,.toolbar select,.detail-list select{border:1px solid #d5e1e9;border-radius:10px;padding:11px;min-height:44px;max-width:100%;background:#fff}.toolbar form{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.tabs a{display:inline-flex;padding:10px 14px;border-radius:9px;font-size:12px;background:#fff;color:var(--accent);border:1px solid #e3e9ee}.tabs a.active{background:var(--accent);color:#fff}.table-action{display:inline-flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent);padding:8px 12px;border-radius:8px;border:0}.table-action:hover{filter:brightness(.96)}
thead{background:var(--accent-soft)}tbody tr:hover{background:#f8fbff}td{line-height:1.6}.detail-list{line-height:1.8}.detail-list form{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.detail-list label{font-size:13px;font-weight:600}
.mobile-item.active{background:var(--accent);box-shadow:0 4px 12px #14556522}.mobile-item{color:#667a8c;font-size:10px;font-weight:600}.mobile-item .ui-icon{width:21px;height:21px}.mobile-item.active{color:#fff}
:focus-visible{outline:3px solid #4285d9;outline-offset:3px}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
@media(max-width:1000px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.page-heading{padding:19px 17px;border-radius:18px;gap:14px}.page-heading h1{font-size:24px}.page-heading .btn{min-height:44px}.stats{gap:12px;margin:20px 0}.stat{padding:17px 14px;min-height:140px}.stat-top{font-size:12px}.stat small{font-size:10px}.stat strong{font-size:30px}.stat-icon{width:30px;height:30px}.stat-icon .ui-icon{width:18px;height:18px}.quick-grid{padding:16px;gap:10px}.quick-grid a{min-height:84px;font-size:12px}.form-card{padding:21px 17px}.form-card .btn{width:100%;min-height:46px}.toolbar form{display:grid;grid-template-columns:1fr}.toolbar input{width:100%;min-width:0;font-size:16px}.tabs{display:flex;flex-wrap:wrap;gap:7px}.tabs a{flex:1;justify-content:center;min-height:42px}.detail-list select{width:100%;font-size:16px}.hero h2{font-size:25px}.hero{min-height:265px}footer{padding-bottom:110px}#mobile-nav{bottom:12px;left:12px;right:12px;border:1px solid #e3ebe8;border-radius:20px;height:70px;box-shadow:0 8px 35px #183f4920}.auth-card{border-top:5px solid #0c9a75}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media print{.page-heading,.card-head{background:white;box-shadow:none}.page-heading{border:0;padding:0}.stats{grid-template-columns:repeat(4,1fr)}}
