:root{color:#15211d;background:#f5f6f3;font-family:Inter,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}.shell{grid-template-columns:250px 1fr;min-height:100vh;display:grid}aside{color:#f5f7f2;background:#0b4d3e;flex-direction:column;padding:28px 18px;display:flex}.brand span,.eyebrow{color:#779d43;letter-spacing:.12em;text-transform:uppercase;font-size:.74rem;font-weight:800}.brand strong{margin:6px 0;font-size:1.25rem;display:block}.brand small{color:#c5d7d0}nav{gap:6px;margin-top:42px;display:grid}nav a{color:#dce8e2;border-radius:9px;align-items:center;gap:10px;padding:11px 12px;text-decoration:none;display:flex}.profile{border-top:1px solid #33705f;gap:5px;margin-top:auto;padding:20px 8px 0;display:grid}.profile span,.muted,small{color:#6c7772;font-size:.85rem}.profile span{color:#c5d7d0}.profile button{color:#fff;cursor:pointer;background:0 0;border:0;gap:8px;padding:8px 0;display:flex}main{width:100%;max-width:1180px;margin:auto;padding:48px}header{justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px;display:flex}h1{margin:5px 0;font-size:2.2rem}h2{margin:0 0 10px;font-size:1.1rem}p{line-height:1.5}.card{background:#fff;border:1px solid #e1e7e2;border-radius:14px;padding:20px;box-shadow:0 2px 8px #15211d08}.grid,.course-grid{grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:16px;margin-top:18px;display:grid}.input,select{width:100%;font:inherit;color:#15211d;background:#fff;border:1px solid #b8c7bf;border-radius:8px;padding:11px 12px}.button{cursor:pointer;white-space:nowrap;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:11px 14px;font-weight:700;display:inline-flex}.button-primary{color:#fff;background:#0b4d3e}.button-secondary{color:#0b4d3e;background:#e5eee8}.button-ghost{background:0 0}.button-danger{color:#fff;background:#b62727}.button:disabled{opacity:.6}.badge{text-transform:capitalize;border-radius:999px;padding:4px 8px;font-size:.75rem;font-weight:700;display:inline-block}.badge-success{color:#146c35;background:#d8f1df}.badge-warning{color:#925f00;background:#fff0cf}.badge-neutral{color:#41524a;background:#e9eeeb}.link{color:#0b4d3e;font-weight:700;text-decoration:none}.table-card{padding:0;overflow:auto}table{border-collapse:collapse;width:100%;min-width:700px}th,td{text-align:left;border-bottom:1px solid #e7ece8;padding:14px 18px}th{color:#6c7772;text-transform:uppercase;letter-spacing:.06em;font-size:.75rem}td strong,td small{display:block}.notice{background:#edf4e9;border-left:3px solid #779d43;padding:12px 14px}.empty{text-align:center;padding:44px}.inline-form{grid-template-columns:2fr 1fr 2fr auto;gap:10px;display:grid}.scope-list{margin:0;padding:0;list-style:none}.scope-list li{border-bottom:1px solid #e7ece8;justify-content:space-between;padding:12px 0;display:flex}.login{background:linear-gradient(120deg,#e8efe9,#f8f7f1);place-items:center;min-height:100vh;padding:20px;display:grid}.login .card{width:min(440px,100%)}form{gap:15px;margin-top:22px;display:grid}label{gap:6px;font-size:.9rem;font-weight:700;display:grid}.page-heading{margin-bottom:22px}.course-total{background:#e8f0ea;border-radius:12px;min-width:130px;padding:12px 16px}.course-total strong{color:#0b4d3e;font-size:1.5rem;display:block}.course-total span{color:#4d5d54;font-size:.8rem}.course-controls{grid-template-columns:minmax(280px,1fr) auto;align-items:end;gap:28px;margin-bottom:22px;display:grid}.search-field label{color:#4d5d54;text-transform:uppercase;letter-spacing:.07em;margin-bottom:8px;font-size:.78rem;font-weight:800;display:block}.search-field>div{position:relative}.search-field svg{color:#779d43;position:absolute;top:12px;left:12px}.search-field .input{padding-left:40px}.refresh-control{border-left:1px solid #dce6df;padding-left:28px}.refresh-control>div:first-child{gap:2px;margin-bottom:9px;display:grid}.refresh-control span{text-transform:uppercase;letter-spacing:.08em;color:#779d43;font-size:.75rem;font-weight:800}.refresh-actions{gap:8px;display:flex}.refresh-actions select{min-width:190px}.course-card{flex-direction:column;min-height:198px;padding:0;display:flex;overflow:hidden}.course-card-top{color:#779d43;justify-content:space-between;align-items:center;padding:16px 18px 0;display:flex}.course-ashram{text-transform:uppercase;letter-spacing:.09em;font-size:.72rem;font-weight:800}.course-card h2{padding:12px 18px 4px;font-size:1.15rem}.course-dates{color:#536259;margin:0;padding:0 18px}.course-dates span{color:#9aa59f;margin:0 4px}.course-footer{color:#718077;border-top:1px solid #e7ece8;justify-content:space-between;align-items:center;gap:10px;margin-top:auto;padding:15px 18px;font-size:.78rem;display:flex}.course-footer a{color:#0b4d3e;align-items:center;font-size:.85rem;font-weight:800;text-decoration:none;display:flex}.spinning{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=720px){.shell{grid-template-columns:1fr}aside{gap:12px;padding:18px}.brand{display:none}nav{margin:0;display:flex;overflow:auto}.profile{display:none}main{padding:28px 18px}header{flex-direction:column;align-items:start}.inline-form,.course-controls{grid-template-columns:1fr}.refresh-control{border-top:1px solid #dce6df;border-left:0;padding:18px 0 0}.refresh-actions{grid-template-columns:1fr;display:grid}.course-total{display:none}}.people-heading{align-items:center}.people-filters{grid-template-columns:minmax(220px,2fr) repeat(3,minmax(130px,1fr)) auto;align-items:center;gap:10px;margin-bottom:18px;display:grid}.people-pagination{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.person-actions{white-space:nowrap}.role-list{flex-wrap:wrap;gap:5px;display:flex}.modal-backdrop{z-index:20;background:#10271db8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.person-modal{background:#fff;border-radius:16px;width:min(680px,100%);max-height:calc(100vh - 40px);padding:24px;overflow:auto;box-shadow:0 24px 60px #0b261a66}.modal-title{border-bottom:1px solid #e7ece8;justify-content:space-between;align-items:start;padding-bottom:16px;display:flex}.modal-title h2{margin:4px 0 0;font-size:1.35rem}.modal-close{color:#0b4d3e;cursor:pointer;background:#edf2ee;border:0;border-radius:50%;width:32px;height:32px;font-size:1.5rem;line-height:1}.person-fields{grid-template-columns:1fr 1fr;gap:14px;display:grid}.full-width{grid-column:1/-1}.toggle{align-items:center;gap:8px;display:flex}.access-editor{border-top:1px solid #e7ece8;gap:12px;padding-top:18px;display:grid}.access-editor p{color:#6c7772;margin:3px 0 0;font-size:.85rem}.add-access{grid-template-columns:minmax(0,1fr) 130px auto;gap:8px;display:grid}.linked-ashrams{flex-wrap:wrap;gap:8px;display:flex}.linked-ashrams>span{color:#6c7772;font-size:.88rem}.linked-ashram{color:#174d3c;background:#edf4e9;border-radius:8px;align-items:center;gap:6px;padding:5px 7px 5px 10px;font-size:.82rem;font-weight:700;display:flex}.linked-ashram select{background:#fff;border:0;width:auto;padding:4px 6px;font-size:.78rem}.linked-ashram button{color:#315c4d;cursor:pointer;background:0 0;border:0;font-size:1.2rem}.modal-actions{border-top:1px solid #e7ece8;justify-content:flex-end;gap:8px;padding-top:18px;display:flex}@media (width<=720px){.people-filters,.person-fields,.add-access{grid-template-columns:1fr}.person-actions{min-width:250px}.modal-backdrop{padding:10px}.person-modal{max-height:calc(100vh - 20px);padding:18px}}.phone-input{grid-template-columns:58px minmax(0,1fr);gap:8px;display:grid}.phone-input select{text-align:center;min-width:0;padding:10px 6px;font-size:1.15rem}.phone-number-box{background:#fff;border:1px solid #b8c7bf;border-radius:8px;align-items:center;display:flex;overflow:hidden}.phone-number-box span{color:#526158;white-space:nowrap;border-right:1px solid #e1e7e2;padding:0 10px;font-size:.92rem}.phone-number-box .input{border:0;border-radius:0;min-width:0}.phone-number-box .input:focus{box-shadow:none;outline:0}@media (width<=480px){.phone-input{grid-template-columns:52px minmax(0,1fr)}}.profile{margin-top:28px}.profile-link{color:#fff;gap:5px;text-decoration:none;display:grid}.profile-page-grid{grid-template-columns:minmax(220px,.7fr) minmax(360px,1.3fr);align-items:start;gap:18px;display:grid}.profile-phone{color:#536259;margin:6px 0 16px}@media (width<=720px){.profile-page-grid{grid-template-columns:1fr}}.course-list-tools{gap:10px;margin-bottom:18px;display:flex}.course-list-tools .input{flex:1}.clickable-row{cursor:pointer}@media (width<=720px){.course-list-tools{grid-template-columns:1fr 1fr;display:grid}.course-list-tools .input{grid-column:1/-1}}.course-filters{grid-template-columns:2fr repeat(4,1fr);gap:9px;margin-bottom:16px;display:grid}.sort-header{font:inherit;color:#6c7772;cursor:pointer;background:0 0;border:0;padding:0;font-weight:800}@media (width<=720px){.course-filters{grid-template-columns:1fr 1fr}.course-filters .input:first-child{grid-column:1/-1}}.server-refresh{float:right;color:#0b4d3e;cursor:pointer;background:#fff;border:1px solid #b8c7bf;border-radius:8px;align-items:center;gap:6px;padding:9px 11px;font-weight:700;display:flex}:root{--base:#d89827;--ink:color-mix(in srgb,var(--base) 24%,black);--ink-muted:color-mix(in srgb,var(--base) 52%,#5d4520);--ink-soft:color-mix(in srgb,var(--base) 45%,#8d7445);--page:color-mix(in srgb,var(--base) 9%,white);--surface:color-mix(in srgb,var(--base) 3%,white);--surface-raised:color-mix(in srgb,var(--base) 12%,white);--border:color-mix(in srgb,var(--base) 28%,white);--border-soft:color-mix(in srgb,var(--base) 18%,white);--sidebar:color-mix(in srgb,var(--base) 29%,#241704);--sidebar-hover:color-mix(in srgb,var(--base) 42%,#241704);--sidebar-border:color-mix(in srgb,var(--base) 52%,#241704);--sidebar-text:color-mix(in srgb,var(--base) 16%,white);--sidebar-muted:color-mix(in srgb,var(--base) 36%,white);--tint:color-mix(in srgb,var(--base) 17%,white);--tint-strong:color-mix(in srgb,var(--base) 28%,white);--success:color-mix(in srgb,var(--base) 68%,#665b13);--warning:color-mix(in srgb,var(--base) 74%,#7c4d00);--danger:color-mix(in srgb,var(--base) 62%,#863e20);--on-base:color-mix(in srgb,var(--base) 18%,#241704);color:var(--ink);background:var(--page)}body{color:var(--ink);background:var(--page)}aside{background:var(--sidebar);color:var(--sidebar-text)}.brand span,.eyebrow,.search-field svg,.refresh-control span,.course-card-top{color:var(--base)}.brand small,.profile span{color:var(--sidebar-muted)}nav a{color:var(--sidebar-text)}nav a.active,nav a:hover{color:var(--sidebar-text);background:var(--sidebar-hover)}.profile{border-color:var(--sidebar-border)}.profile button,.profile-link{color:var(--sidebar-text)}.muted,small,th,.access-editor p,.linked-ashrams>span,.sort-header{color:var(--ink-muted)}.card,.person-modal{background:var(--surface);border-color:var(--border)}.card{box-shadow:0 2px 8px color-mix(in srgb,var(--base) 18%,transparent)}.input,select,.phone-number-box,.server-refresh{border-color:var(--border);background:var(--surface);color:var(--ink)}.button-primary{background:var(--base);color:var(--on-base)}.button-secondary{background:var(--tint);color:var(--ink)}.button-danger{background:var(--danger);color:var(--surface)}.badge-success{background:color-mix(in srgb,var(--success) 20%,white);color:var(--success)}.badge-warning{background:color-mix(in srgb,var(--warning) 18%,white);color:var(--warning)}.badge-neutral{background:var(--tint);color:var(--ink-muted)}.link,.course-total strong,.course-footer a,.modal-close,.server-refresh{color:var(--base)}th,td,.scope-list li,.course-footer,.modal-title,.access-editor,.modal-actions{border-color:var(--border-soft)}.notice{border-color:var(--base);background:var(--tint)}.error{color:var(--danger)}.login{background:linear-gradient(120deg,var(--tint),var(--page))}.course-total{background:var(--tint)}.course-total span,.search-field label,.course-dates,.profile-phone,.phone-number-box span{color:var(--ink-muted)}.course-dates span,.course-footer{color:var(--ink-soft)}.refresh-control{border-color:var(--border-soft)}.modal-backdrop{background:color-mix(in srgb,var(--ink) 72%,transparent)}.person-modal{box-shadow:0 24px 60px color-mix(in srgb,var(--ink) 40%,transparent)}.modal-close{background:var(--tint)}.linked-ashram{background:var(--tint);color:var(--ink)}.linked-ashram select{background:var(--surface)}.linked-ashram button{color:var(--ink-muted)}.phone-number-box span{border-color:var(--border)}.clickable-row:hover{background:var(--surface-raised)}.page-loader{min-height:100vh;color:var(--ink-muted);place-items:center;font-weight:700;display:grid}
