@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&family=Source+Serif+4:opsz,wght@8..60,600;8..60,700&display=swap";:root{--bg:#f3efe6;--bg-accent:#e7eef2;--ink:#1c2430;--muted:#5d6b7c;--card:#ffffffd1;--line:#1c24301a;--brand:#0f5c4c;--brand-2:#c45c26;--shadow:0 18px 50px #1c243014;--radius:18px;color:var(--ink);background:var(--bg);font-family:Manrope,sans-serif;line-height:1.45}*{box-sizing:border-box}body{background:radial-gradient(circle at 0 0,#dce9e4 0%,#0000 42%),radial-gradient(circle at 100% 0,#f0dccb 0%,#0000 36%),linear-gradient(#f7f3ea 0%,#eef2f4 100%);min-height:100vh;margin:0}a{color:var(--brand);text-decoration:none}button,input,select{font:inherit}button{background:var(--brand);color:#fff;cursor:pointer;text-align:center;border:0;border-radius:999px;justify-content:center;align-items:center;width:auto;padding:.65rem 1.1rem;display:inline-flex}button.ghost,button.linkish{color:var(--ink);border:1px solid var(--line);background:0 0}button.active{background:var(--brand);color:#fff}.app-shell{grid-template-columns:260px 1fr;min-height:100vh;display:grid}.sidebar{color:#edf5f2;background:linear-gradient(#123f36 0%,#0f2f2a 100%);flex-direction:column;gap:1.5rem;padding:1.4rem 1rem;display:flex}.brand{align-items:center;gap:.75rem;padding:.4rem .6rem;display:flex}.nav-toggle,.nav-close,.nav-backdrop{display:none}.nav-toggle{background:var(--card);border:1px solid var(--line);width:2.6rem;height:2.6rem;color:var(--ink);border-radius:12px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:.28rem;padding:0}.nav-toggle span{background:currentColor;border-radius:999px;width:1.1rem;height:2px;display:block}.nav-close{color:#edf5f2;background:#ffffff1a;border-radius:12px;width:2.4rem;height:2.4rem;margin-left:auto;padding:0;font-size:1.5rem;line-height:1}.brand-mark{color:#1c2430;background:linear-gradient(135deg,#f0b27a,#c45c26);border-radius:14px;place-items:center;width:42px;height:42px;font-weight:700;display:grid}.brand-name{font-family:"Source Serif 4",serif;font-size:1.35rem}.sidebar nav{flex-direction:column;gap:.25rem;display:flex}.nav-link{color:#edf5f2c7;border-radius:12px;padding:.7rem .9rem}.nav-link.active,.nav-link:hover{color:#fff;background:#ffffff1a}.sidebar-footer{gap:.5rem;margin-top:auto;padding:.6rem;display:grid}.sidebar-footer .linkish{color:#edf5f2;border-color:#edf5f247}.sidebar-footer .linkish:hover{color:#fff;background:#ffffff1a}.user-chip{opacity:.85;word-break:break-all;font-size:.85rem}.main{flex-direction:column;min-width:0;display:flex}.topbar{justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.5rem;display:flex}.search-wrap{flex:1;max-width:480px;position:relative}.search-wrap input{border:1px solid var(--line);background:var(--card);border-radius:999px;width:100%;padding:.75rem 1rem}.search-panel{box-shadow:var(--shadow);z-index:20;background:#fff;border-radius:16px;gap:.8rem;padding:.9rem;display:grid;position:absolute;top:calc(100% + .4rem);left:0;right:0}.search-panel a,.search-panel span{padding:.25rem 0;display:block}.lang-switch{color:var(--muted);align-items:center;gap:.35rem;display:flex}.lang-switch button{color:var(--ink);border:1px solid var(--line);background:#fff;padding:.35rem .7rem}.lang-switch button.active{background:var(--brand);color:#fff}.content{padding:0 1.5rem 2rem}.page{padding-top:.35rem}.page-header{justify-content:space-between;align-items:end;gap:1.25rem;margin:.6rem 0 1.5rem;display:flex}.page-header-copy{flex-direction:column;gap:.45rem;min-width:0;display:flex}.page-header h1{margin:0;font-family:"Source Serif 4",serif;font-size:clamp(1.8rem,3vw,2.4rem);line-height:1.15}.back-link{color:var(--muted);align-items:center;gap:.2rem;width:fit-content;font-size:.92rem;display:inline-flex}.back-link:hover{color:var(--brand)}.page-meta{color:var(--muted);margin:0;font-size:.95rem;line-height:1.45}.page-header-actions{flex-shrink:0}.panel{background:var(--card);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:1rem;padding:1.1rem 1.2rem}.hero-metrics{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1rem;display:grid}.metric{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:linear-gradient(160deg,#fff 0%,#f3f7f5 100%);padding:1.1rem 1.2rem}.metric.wide{grid-column:span 2}.metric-label{color:var(--muted);margin-bottom:.35rem;display:block}.metric-value{font-family:"Source Serif 4",serif;font-size:2rem}.metric-link{font-size:1.15rem;font-weight:600}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.75rem .4rem}th{color:var(--muted);font-size:.85rem;font-weight:600}.clickable-row{cursor:pointer;transition:background .15s}.clickable-row:hover,.clickable-row:focus-visible{background:#0f5c4c0f;outline:none}.muted{color:var(--muted);font-size:.9rem}.badge{text-transform:uppercase;letter-spacing:.03em;background:#e7eef2;border-radius:999px;padding:.2rem .55rem;font-size:.78rem;display:inline-flex}.form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:start;gap:.9rem;display:grid}.form-grid>*{min-width:0}label{color:var(--muted);gap:.35rem;min-width:0;font-size:.9rem;display:grid}input,select{box-sizing:border-box;border:1px solid var(--line);width:100%;min-width:0;max-width:100%;color:var(--ink);background:#fff;border-radius:12px;padding:.65rem .75rem}.form-actions,.row-actions,.chip-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.form-actions{grid-column:1/-1}.grid-2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;display:grid}.kv{grid-template-columns:120px 1fr;gap:.55rem .8rem;margin:0;display:grid}.timeline,.task-list{gap:.8rem;margin:0;padding:0;list-style:none;display:grid}.task-list li{align-items:start;gap:.7rem;display:flex}.done{color:var(--muted);text-decoration:line-through}.row-form{gap:.6rem;display:flex}.row-form input{flex:1}.login-page{place-items:center;min-height:100vh;padding:1rem;display:grid;position:relative}.login-backdrop{background:linear-gradient(120deg,#0f5c4ce0,#c45c268c),url(https://images.unsplash.com/photo-1513326738677-b7326e7d0f4f?auto=format&fit=crop&w=1600&q=80) 50%/cover;position:absolute;inset:0}.login-card{width:min(420px,100%);box-shadow:var(--shadow);background:#fffffff0;border-radius:24px;gap:.9rem;padding:1.6rem;display:grid;position:relative}.login-brand{align-items:center;gap:.8rem;display:flex}.login-brand h1{margin:0;font-family:"Source Serif 4",serif}.error{color:#a12828;margin:0}.boot{padding:2rem}.row-item{justify-content:space-between;align-items:start;gap:.75rem;display:flex}.checkbox-row{align-items:center;gap:.55rem;grid-template-columns:none!important;display:flex!important}.checkbox-row input{flex:none;width:auto;max-width:none}.tabs{margin-bottom:1rem}a.button-link{border:1px solid var(--line);color:var(--ink);border-radius:999px;align-items:center;padding:.65rem 1.1rem;display:inline-flex}a.button-link.ghost{background:0 0}.calendar-layout{grid-template-columns:minmax(0,1.7fr) minmax(260px,.9fr);align-items:start;gap:1rem;display:grid}.calendar-panel{overflow:hidden}.calendar-month-title{text-transform:capitalize;margin-bottom:.9rem;font-family:"Source Serif 4",serif;font-size:1.45rem}.calendar-weekdays{color:var(--muted);text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem;margin-bottom:.35rem;font-size:.82rem;font-weight:600;display:grid}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem;display:grid}.calendar-cell{border:1px solid var(--line);min-height:96px;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border-radius:14px;flex-direction:column;align-items:stretch;gap:.25rem;padding:.45rem .4rem .35rem;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.calendar-cell:hover{border-color:#0f5c4c59;transform:translateY(-1px)}.calendar-cell.outside{color:#9aa6b2;background:#ffffff73}.calendar-cell.today .calendar-day-num{background:var(--brand);color:#fff}.calendar-cell.selected{border-color:var(--brand);box-shadow:0 0 0 2px #0f5c4c2e}.calendar-day-num{border-radius:999px;place-items:center;width:1.7rem;height:1.7rem;font-size:.85rem;font-weight:700;display:grid}.calendar-dots{align-items:center;gap:.2rem;min-height:.55rem;display:flex}.cal-dot{background:#8a97a6;border-radius:999px;width:.45rem;height:.45rem;display:inline-block}.cal-dot.type-tour{background:#0f5c4c}.cal-dot.type-program{background:#2f6fed}.cal-dot.type-payment_deadline{background:#c45c26}.cal-more{color:var(--muted);font-size:.68rem}.calendar-event-previews{flex-direction:column;gap:.2rem;display:none}.cal-chip{white-space:nowrap;text-overflow:ellipsis;border-radius:6px;padding:.15rem .3rem;font-size:.68rem;line-height:1.2;overflow:hidden}.cal-chip.type-tour{color:#0f5c4c;background:#0f5c4c1f}.cal-chip.type-program{color:#1d4bb8;background:#2f6fed1f}.cal-chip.type-payment_deadline{color:#9a3f12;background:#c45c2624}.calendar-legend{color:var(--muted);flex-wrap:wrap;gap:.9rem;margin-top:.9rem;font-size:.85rem;display:flex}.calendar-legend span{align-items:center;gap:.35rem;display:inline-flex}.calendar-side h2{text-transform:capitalize;margin:0 0 .9rem;font-size:1.15rem}.calendar-day-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.day-event{border:1px solid var(--line);background:#fff;border-left-width:4px;border-radius:12px;padding:.75rem .85rem}.activity-extra-row{align-items:center}.panel h3{margin:1rem 0 .55rem;font-size:1rem}.day-event.type-tour{border-left-color:#0f5c4c}.day-event.type-program{border-left-color:#2f6fed}.day-event.type-payment_deadline{border-left-color:#c45c26}.day-event-type{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:.25rem;font-size:.75rem}@media (width>=1100px){.calendar-cell{min-height:110px}.calendar-event-previews{display:flex}.calendar-dots{display:none}}@media (width<=900px){.app-shell{grid-template-columns:1fr}.nav-toggle{display:inline-flex}.nav-close{place-items:center;display:grid}.nav-backdrop{z-index:40;opacity:0;pointer-events:none;background:#0c181673;border:0;border-radius:0;transition:opacity .2s;display:block;position:fixed;inset:0}.app-shell.nav-open .nav-backdrop{opacity:1;pointer-events:auto}.sidebar{z-index:50;width:min(300px,86vw);padding-top:max(1.4rem, env(safe-area-inset-top));padding-bottom:max(1.4rem, env(safe-area-inset-bottom));transition:transform .22s;position:fixed;inset:0 auto 0 0;overflow-y:auto;transform:translate(-105%);box-shadow:18px 0 40px #00000040}.app-shell.nav-open .sidebar{transform:translate(0)}.sidebar nav{flex-direction:column;display:flex}.topbar{z-index:30;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);background:#f7f3eaeb;gap:.65rem;padding:.75rem 1rem;position:sticky;top:0}.search-wrap{min-width:0;max-width:none}.search-wrap input{padding:.65rem .85rem}.lang-label{display:none}.content{padding:.85rem 1.15rem 1.75rem}.page{padding-top:.15rem}.page-header{flex-direction:column;align-items:stretch;gap:1rem;margin:.25rem 0 1.35rem}.page-header-copy{gap:.55rem}.page-header h1{letter-spacing:-.01em;font-size:clamp(1.55rem,6.5vw,2rem)}.page-meta{font-size:.9rem}.page-header-actions,.page-header>:last-child{flex-wrap:wrap;align-self:start;gap:.55rem;width:auto;max-width:100%;display:flex}.page-header>button,.page-header-actions>button,.page-header-actions>a{flex:none;width:auto}.panel{border-radius:14px;padding:.95rem 1rem}.hero-metrics{grid-template-columns:1fr 1fr;gap:.75rem}.metric.wide{grid-column:1/-1}.metric-value{font-size:1.55rem}.form-grid,.grid-2{grid-template-columns:1fr}.kv{grid-template-columns:1fr;gap:.2rem 0}.kv dt{color:var(--muted);font-size:.82rem}.row-form{flex-direction:column}.row-item{flex-direction:column;align-items:stretch}.chip-row.tabs{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;margin-left:-.25rem;margin-right:-.25rem;padding-bottom:.25rem;padding-left:.25rem;padding-right:.25rem;overflow-x:auto}.chip-row.tabs button{white-space:nowrap;flex:none}.table-wrap{margin:0 -.25rem;padding-bottom:.15rem}th,td{padding:.65rem .45rem;font-size:.9rem}.calendar-layout{grid-template-columns:1fr}.calendar-cell{border-radius:10px;min-height:52px;padding:.25rem}.calendar-day-num{width:1.45rem;height:1.45rem;font-size:.78rem}.calendar-weekdays{gap:.2rem;font-size:.72rem}.calendar-grid{gap:.2rem}.calendar-event-previews{display:none}.calendar-month-title{font-size:1.2rem}.login-card{padding:1.25rem}}@media (width<=560px){.hero-metrics{grid-template-columns:1fr}.topbar{flex-wrap:wrap}.search-wrap{flex:100%;order:3}.lang-switch{margin-left:auto}button,a.button-link{min-height:2.6rem}.form-actions{flex-direction:column;align-items:stretch}.form-actions button,.form-actions a{justify-content:center;width:100%}.page-header .row-actions,.page-header-actions{flex-direction:row;align-self:start;align-items:center}.page-header .row-actions button,.page-header .row-actions a,.page-header-actions button,.page-header-actions a,.page-header>button{width:auto}}
