:root{--cream:#fbf8f1;--sand:#f3ecdf;--sage-50:#f2f5ee;--sage-100:#e4ecdf;--sage-200:#ccdac4;--sage-500:#6f8c62;--sage-700:#46613b;--sage-800:#344a2c;--terra:#b5623c;--terra-50:#f8e9e0;--amber-50:#fbf1d9;--amber-700:#8a6414;--ink:#26301f;--text:#3a4533;--muted:#667260;--line:#e2ddd0;--white:#fff;--radius:16px;--radius-sm:10px;--shadow:0 1px 2px #344a2c0f, 0 6px 18px #344a2c0f;--font:"Nunito", "Noto Sans Armenian", system-ui, -apple-system, "Segoe UI", sans-serif;--gutter:16px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--cream);color:var(--text);font:16px/1.5 var(--font);overflow-wrap:anywhere;margin:0}:lang(hy) body{font-family:Noto Sans Armenian,Nunito,system-ui,sans-serif}a{color:var(--sage-700)}h1,h2{color:var(--ink);margin:0;line-height:1.2}h1{font-size:1.6rem;font-weight:800}h2{margin-bottom:12px;font-size:1.1rem;font-weight:700}button,input,select{font:inherit}.muted{color:var(--muted)}.small{font-size:.875rem}.lead{max-width:60ch;margin:0 0 16px}.ok{color:var(--sage-700);font-weight:700}.top{background:var(--white);border-bottom:1px solid var(--line);z-index:10;position:sticky;top:0}.top__bar{padding:10px var(--gutter);justify-content:space-between;align-items:center;gap:12px;display:flex}.brand{color:var(--ink);align-items:center;gap:10px;min-width:0;text-decoration:none;display:flex}.brand__mark{color:var(--sage-500);font-size:1.6rem;line-height:1}.brand__center{letter-spacing:.08em;color:var(--sage-700);font-size:.75rem;font-weight:800;display:block}.brand__name{font-weight:800;display:block}.top__toggle{border:1px solid var(--line);background:var(--white);color:var(--ink);cursor:pointer;border-radius:999px;padding:6px 14px}.top__nav{padding:0 var(--gutter) 12px;display:none}.top__nav.is-open{display:block}.top__nav nav{flex-direction:column;display:flex}.top__nav nav a{border-bottom:1px solid var(--line);padding:10px 4px;font-weight:700;text-decoration:none}.top__nav nav a.is-active{color:var(--terra)}.top__user{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:12px;display:flex}.top__who{color:var(--ink);font-weight:700}.top__who small{color:var(--muted);font-weight:400;display:block}.top select,.field input,.period input,.search{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);color:var(--ink);min-height:40px;padding:8px 10px}@media (width>=900px){.top{justify-content:space-between;align-items:center;display:flex}.top__toggle{display:none}.top__nav,.top__nav.is-open{padding:0 var(--gutter) 0 0;flex:1;justify-content:space-between;align-items:center;gap:24px;display:flex}.top__nav nav{flex-direction:row;gap:4px}.top__nav nav a{border:0;border-radius:999px;padding:8px 12px}.top__nav nav a.is-active{background:var(--sage-50);color:var(--sage-800)}.top__user{flex-wrap:nowrap;padding:0}.top__who{text-align:right}}.page{max-width:1120px;padding:20px var(--gutter) 48px;margin:0 auto}.page--center{text-align:center;padding-top:15vh}.login{flex-direction:column;align-items:center;gap:16px;max-width:420px;display:flex}.login .btn{text-decoration:none}.login .state{padding:0}.page__back{margin-bottom:8px;font-weight:700;text-decoration:none;display:inline-block}.page__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.toolbar{flex-direction:column;gap:10px;margin-bottom:14px;display:flex}@media (width>=768px){.toolbar{flex-flow:wrap;justify-content:space-between;align-items:flex-start}}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin-top:16px;padding:16px}.card--flush{padding:0;overflow:hidden}.state{color:var(--muted);padding:24px 0}.state--error{color:var(--terra)}.state--error p{margin:0 0 8px}.btn{background:var(--sage-700);min-height:44px;color:var(--white);cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;padding:10px 20px;font-weight:700;display:inline-flex}.btn:disabled{opacity:.6;cursor:default}.btn--ghost{color:var(--sage-700);border:1px solid var(--sage-200);background:0 0}.btn--small{min-height:36px;padding:6px 14px;font-size:.875rem}.segmented{background:var(--sand);border-radius:999px;flex-wrap:wrap;gap:4px;width:fit-content;max-width:100%;padding:4px;display:flex}.segmented button{color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:6px 12px;font-size:.9rem;font-weight:600}.segmented button.is-on{background:var(--white);color:var(--ink);box-shadow:var(--shadow)}.period{flex-direction:column;gap:8px;display:flex}.period__dates{flex-wrap:wrap;gap:10px;display:flex}.period__dates label{align-items:center;gap:6px;font-size:.9rem;display:flex}.field{flex-direction:column;gap:6px;max-width:420px;margin-bottom:14px;display:flex}.search{width:100%;max-width:360px}.badge{background:var(--sage-50);color:var(--sage-800);white-space:nowrap;border-radius:999px;padding:2px 10px;font-size:.8rem;font-weight:700;display:inline-block}.badge small{white-space:normal;font-weight:400;display:block}.tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.tile{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-sm);flex-direction:column;padding:10px 12px;display:flex}.tile--main{background:var(--sage-700);border-color:var(--sage-700);color:var(--white);grid-column:1/-1}.tile__label{font-size:.8rem;font-weight:700}.tile__value{color:var(--ink);font-size:1.5rem;font-weight:800}.tile--main .tile__value{color:var(--white);font-size:2rem}.tile__sub{font-size:.85rem}.tile--missed .tile__value{color:var(--terra)}.tile--unmarked .tile__value{color:var(--amber-700)}@media (width>=768px){.tiles{grid-template-columns:1.6fr repeat(5,minmax(0,1fr))}.tile--main{grid-column:auto}}.att-list,.reasons,.lessons,.children,.runs{margin:0;padding:0;list-style:none}.att{border-top:1px solid var(--line);grid-template-columns:repeat(5,minmax(0,1fr));gap:6px 4px;padding:12px 16px;display:grid}.att-list .att:first-child{border-top:0}.att__name{color:var(--ink);grid-column:1/-1;font-weight:700}.att__rate{grid-column:1/-1}.att__num{text-align:center;font-weight:700}.att__num:before{content:attr(data-label);overflow-wrap:normal;-webkit-hyphens:auto;hyphens:auto;color:var(--muted);min-height:2.4em;font-size:.66rem;font-weight:600;line-height:1.2;display:block}.att__num--missed{color:var(--terra)}.att__num--unmarked{color:var(--amber-700)}.att--head{display:none}@media (width>=768px){.att{grid-template-columns:minmax(160px,2fr) minmax(120px,1.4fr) repeat(5,minmax(56px,.7fr));align-items:center}.att__name,.att__rate{grid-column:auto}.att__num:before{display:none}.att--head{background:var(--sage-50);color:var(--muted);font-size:.8rem;font-weight:700;display:grid}.att--head .att__num{font-weight:700}}.rate{align-items:center;gap:8px;display:flex}.rate__bar{background:var(--sand);border-radius:999px;flex:1;max-width:160px;height:8px;overflow:hidden}.rate__bar span{background:var(--sage-500);height:100%;display:block}.rate__bar span.is-low{background:var(--terra)}.reasons li,.runs li{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:12px;padding:8px 0;display:flex}.reasons li:first-child,.runs li:first-child{border-top:0}.run small{width:100%}.run--error .badge{background:var(--terra-50);color:var(--terra)}.lesson{border-top:1px solid var(--line);grid-template-columns:1fr auto;gap:4px 12px;padding:10px 0;display:grid}.lessons .lesson:first-child{border-top:0}.lesson small{color:var(--muted);display:block}.lesson__when{font-weight:700}.lesson__what{grid-column:1}.lesson .badge{text-align:right;grid-area:1/2/span 2;align-self:center}.lesson--missed .badge{background:var(--terra-50);color:var(--terra)}.lesson--cancelled .badge,.lesson--upcoming .badge{background:var(--sand);color:var(--muted)}.lesson--unmarked .badge{background:var(--amber-50);color:var(--amber-700)}@media (width>=768px){.lesson{grid-template-columns:180px 1fr auto;align-items:center}.lesson__what{grid-column:2}.lesson .badge{grid-area:1/3}}.child{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding:12px 16px;display:flex}.child__name{min-width:0}.child__name a{color:var(--ink);font-weight:700;text-decoration:none}.child__name small{color:var(--muted);display:block}.child>.btn,.child>.badge{white-space:nowrap;flex-shrink:0}.people{margin:16px 0 0;padding:0;list-style:none}.person{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 12px;margin-bottom:8px;padding:12px 16px;display:flex}.person.is-off{opacity:.65}.person__name{overflow-wrap:anywhere;min-width:0}.person__name small{color:var(--muted);display:block}.person__name .badge{margin-left:8px;font-weight:400;display:inline-block}.person__actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.field select,.person select{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);min-height:40px;padding:8px 10px}.checks{margin:8px 0 12px;padding:0;list-style:none}.checks label{border-bottom:1px solid var(--line);cursor:pointer;align-items:flex-start;gap:10px;padding:8px 0;display:flex}.checks input{flex-shrink:0;width:20px;height:20px;margin-top:2px}.checks small{color:var(--muted);overflow-wrap:anywhere;display:block}
