:root{--blue:#97cde4;--blue-soft:#e8f5fb;--blue-ink:#24698a;--terra:#d3703b;--terra-ink:#b0531f;--terra-soft:#fbe6da;--peach:#fdd6ad;--bg:#fffaf4;--card:#fff;--ink:#33363f;--muted:#6c707c;--line:#ecdfd2;--danger:#b3261e;--radius:18px;--shadow:0 2px 0 #f0e2d4, 0 8px 24px #97cde42e;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--blue:#7fbfdc;--blue-soft:#1d2d36;--blue-ink:#9fd6ee;--terra:#e0844f;--terra-ink:#c4652f;--terra-soft:#3a2a21;--peach:#6b5440;--bg:#15181d;--card:#1e2229;--ink:#eceef2;--muted:#a2a7b3;--line:#2e333c;--danger:#ff8a80;--shadow:0 2px 0 #0d0f12;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--blue:#7fbfdc;--blue-soft:#1d2d36;--blue-ink:#9fd6ee;--terra:#e0844f;--terra-ink:#c4652f;--terra-soft:#3a2a21;--peach:#6b5440;--bg:#15181d;--card:#1e2229;--ink:#eceef2;--muted:#a2a7b3;--line:#2e333c;--danger:#ff8a80;--shadow:0 2px 0 #0d0f12;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font:16px/1.5 Nunito,system-ui,sans-serif}h1,h2,h3{margin:0 0 .4em;font-family:"Baloo 2",Nunito,sans-serif;line-height:1.2}h1{color:var(--blue-ink);font-size:1.9rem}h2{margin-top:1.4em;font-size:1.3rem}.card h2{margin-top:0}h3{font-size:1.1rem}a{color:var(--blue-ink)}p{margin:0 0 .7em}.muted{color:var(--muted)}.small{font-size:.9rem}.block{display:block}.pre{white-space:pre-wrap}.late{color:var(--danger);font-weight:700}.neg{color:var(--danger)}.dim{opacity:.7}.space{margin-top:1rem}.shell{grid-template-columns:250px 1fr;min-height:100vh;display:grid}.side{background:var(--card);border-right:2px dashed var(--line);flex-direction:column;gap:1rem;height:100vh;padding:1.2rem 1rem;display:flex;position:sticky;top:0;overflow-y:auto}.side-sub:empty{display:none}.side-sections{border-left:2px solid var(--blue-soft);gap:.5rem;margin:.3rem 0 .5rem 1.6rem;padding-left:.6rem;display:grid}.side-sections .section-link{padding:.38rem .7rem;font-size:.95rem}.side-sections .section-title{padding-top:.2rem}.side-logo{align-self:center;width:150px}.side nav{flex-direction:column;gap:4px;display:flex}.nav-link{color:var(--ink);border-radius:999px;align-items:center;gap:.7rem;padding:.6rem .9rem;font-weight:700;text-decoration:none;display:flex}.nav-link:hover{background:var(--blue-soft)}.nav-link.active{background:var(--blue);color:#10384b}.side-me{border-radius:var(--radius);background:var(--blue-soft);flex-direction:column;margin-top:auto;padding:.8rem;display:flex}.main{width:100%;max-width:1100px;padding:1.5rem clamp(16px,4vw,48px) 6rem}.demo-bar{background:var(--terra-soft);border-radius:12px;margin-bottom:1rem;padding:.5rem .9rem;font-size:.9rem}.center{place-items:center;min-height:100vh;display:grid}.pulse{animation:1.6s ease-in-out infinite float}@keyframes float{50%{transform:translateY(-10px)}}@media (width<=760px){.shell{grid-template-columns:1fr}.side-sub{display:none}.side{z-index:20;border-right:0;border-top:2px dashed var(--line);flex-direction:row;height:auto;padding:.3rem;position:fixed;inset:auto 0 0;overflow:visible}.side-logo,.side-me{display:none}.side nav{flex-direction:row;flex:1;justify-content:space-around}.nav-link{text-align:center;border-radius:12px;flex-direction:column;gap:0;padding:.35rem .3rem;font-size:.68rem}.nav-link span:first-child{font-size:1.25rem}.nav-label{max-width:70px;line-height:1.1}.main{padding:1rem 16px 6rem}h1{font-size:1.5rem}}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.page-head p{margin:0}.row{align-items:center;gap:.7rem;display:flex}.row>.field{flex:1;min-width:0}.row.wrap{flex-wrap:wrap}.row.end{justify-content:flex-end}.row.between{justify-content:space-between}.grow{flex:1;min-width:0}.grid{gap:1rem;display:grid}.grid.two{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}.grid.cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr))}.list{flex-direction:column;gap:.6rem;display:flex}.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--line);padding:1.1rem 1.2rem}.row-card,.event-card{color:inherit;align-items:center;gap:1rem;text-decoration:none;transition:transform .12s;display:flex}.row-card:hover,.event-card:hover{transform:translateY(-2px)}.row-card h3,.event-card h3{margin:0}.event-date{background:var(--blue);color:#10384b;border-radius:14px;flex-shrink:0;align-content:center;place-items:center;width:56px;height:60px;line-height:1;display:grid}.event-date strong{font-family:"Baloo 2";font-size:1.5rem}.btn{font:inherit;cursor:pointer;background:var(--terra-ink);color:#fff;white-space:nowrap;border:0;border-radius:999px;padding:.6rem 1.2rem;font-weight:700;box-shadow:0 3px #8d4119}.btn:hover{background:var(--terra)}.btn:active{transform:translateY(2px);box-shadow:0 1px #8d4119}.btn:disabled{opacity:.6;cursor:wait}.btn.ghost{background:var(--card);color:var(--blue-ink);box-shadow:inset 0 0 0 2px var(--blue)}.btn.ghost:hover{background:var(--blue-soft)}.btn.danger{color:var(--danger);box-shadow:inset 0 0 0 2px var(--danger)}.btn.big{width:100%;padding:.8rem;font-size:1.05rem}.link{font:inherit;color:var(--blue-ink);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.link.danger{color:var(--danger)}.icon-btn{cursor:pointer;color:var(--muted);background:0 0;border:0;border-radius:8px;padding:.3rem .5rem;font-size:1.1rem}.icon-btn:hover{background:var(--blue-soft)}.chip{font:inherit;background:var(--blue-soft);color:var(--blue-ink);cursor:pointer;border:0;border-radius:999px;padding:.35rem .8rem;font-size:.85rem}.back{margin-bottom:.6rem;font-weight:700;text-decoration:none;display:inline-block}.more{margin-top:.4rem;font-size:.9rem;font-weight:700;display:inline-block}.badge{vertical-align:middle;white-space:nowrap;border-radius:999px;margin-left:.3rem;padding:.15rem .6rem;font-size:.75rem;font-weight:700;display:inline-block}.badge.blue{background:var(--blue-soft);color:var(--blue-ink)}.badge.peach{background:var(--terra-soft);color:var(--terra-ink)}.badge.gray{background:var(--line);color:var(--muted)}.notice{background:var(--blue-soft);border-radius:12px;padding:.7rem 1rem}.highlight{background:var(--terra-soft);border-radius:12px;padding:.6rem 1rem}.error{color:var(--danger);font-weight:700}.empty{text-align:center;color:var(--muted);background:var(--card);border-radius:var(--radius);border:2px dashed var(--line);padding:1.5rem}.empty img{opacity:.85;width:64px;margin:0 auto .4rem;display:block}.form{flex-direction:column;gap:.8rem;display:flex}.field{border:0;flex-direction:column;gap:.25rem;min-width:0;margin:0;padding:0;display:flex}.field>span{font-size:.9rem;font-weight:700}.field small{color:var(--muted)}input,select,textarea{font:inherit;color:var(--ink);background:var(--card);border:2px solid var(--line);border-radius:12px;width:100%;min-width:0;padding:.55rem .75rem}input:focus,select:focus,textarea:focus{border-color:var(--blue);outline:none}input[type=checkbox]{width:auto;accent-color:var(--terra-ink)}.check{align-items:center;gap:.5rem;display:flex}.chips-pick{flex-wrap:wrap;gap:.4rem;display:flex}.chip-check input{opacity:0;position:absolute}.chip-check span{border:2px solid var(--line);cursor:pointer;border-radius:999px;padding:.35rem .8rem;display:inline-block}.chip-check input:checked+span{background:var(--blue);border-color:var(--blue);color:#10384b;font-weight:700}.chip-check input:focus-visible+span{outline:2px solid var(--terra)}.upload{cursor:pointer;display:inline-block}.overlay{z-index:50;background:#141e2873;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:var(--card);border-radius:22px;width:min(560px,100%);max-height:90vh;padding:1.2rem 1.4rem;overflow:auto}.modal-head{justify-content:space-between;align-items:center;display:flex}.modal-head h2{margin:0}.options{flex-direction:column;gap:.5rem;display:flex}.option{text-align:left;font:inherit;border:2px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;border-radius:14px;grid-template-columns:1fr auto;padding:.7rem 1rem;display:grid;position:relative;overflow:hidden}.option:hover:not(:disabled){border-color:var(--blue)}.option.chosen{border-color:var(--terra-ink)}.option .bar{background:var(--blue-soft);z-index:0;transition:width .3s;position:absolute;inset:0 auto 0 0}.option>span:not(.bar){z-index:1;position:relative}.option-label{font-weight:700}.option-count{color:var(--blue-ink);font-family:"Baloo 2";font-size:1.2rem;font-weight:700}.option-voters{color:var(--muted);grid-column:1/-1;font-size:.85rem}.table-wrap{background:var(--card);border-radius:var(--radius);border:1px solid var(--line);overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:.95rem}.table th,.table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.55rem .7rem}.table th{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);font-size:.8rem}.table .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.table tfoot td{border-bottom:0;font-weight:700}.table tr.win td{background:var(--blue-soft);font-weight:700}.table .actions{white-space:nowrap}.summary .table{margin:.6rem 0 1rem}.stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.7rem;margin-bottom:1rem;display:grid}.stat{background:var(--card);border-radius:var(--radius);border:1px solid var(--line);padding:.8rem 1rem}.stat small{color:var(--muted);font-weight:700;display:block}.stat strong{font-family:"Baloo 2";font-size:1.4rem}.tabs{gap:.4rem;margin:.5rem 0 1rem;display:flex;overflow-x:auto}.tabs button{font:inherit;background:var(--blue-soft);color:var(--blue-ink);cursor:pointer;white-space:nowrap;border:0;border-radius:999px;padding:.5rem 1rem;font-weight:700}.tabs button.on{background:var(--blue);color:#10384b}.facts{grid-template-columns:auto 1fr;gap:.3rem 1rem;margin:.5rem 0;display:grid}.facts dt{color:var(--muted);font-weight:700}.facts dd{margin:0}.member{align-items:flex-start;gap:.9rem;display:flex}.member h3{margin:0 0 .1rem}.member a{word-break:break-all}.avatar{background:var(--peach);width:46px;height:46px;color:var(--terra-ink);border-radius:50%;flex-shrink:0;place-items:center;font-family:"Baloo 2";font-size:1.3rem;font-weight:700;display:grid}.avatar.sm{width:30px;height:30px;font-size:.95rem}.team{flex-direction:column;gap:.4rem;margin:0 0 .7rem;padding:0;list-style:none;display:flex}.team li{align-items:center;gap:.6rem;display:flex}.team-phone{white-space:nowrap;margin-left:auto;font-size:.9rem}.task{align-items:flex-start;gap:.9rem;display:flex}.task h3{margin:0}.task.done h3{color:var(--muted);text-decoration:line-through}.task .meta{color:var(--muted);flex-wrap:wrap;gap:.3rem 1rem;margin-top:.2rem;font-size:.88rem;display:flex}.check-btn{border:2px solid var(--blue);background:var(--card);color:#fff;cursor:pointer;border-radius:50%;flex-shrink:0;width:28px;height:28px;margin-top:2px;font-weight:700}.task.done .check-btn{background:var(--terra-ink);border-color:var(--terra-ink)}.check-btn:disabled{cursor:not-allowed;opacity:.5}.file{font:inherit;border:2px solid var(--line);background:var(--blue-soft);color:var(--blue-ink);cursor:pointer;text-align:left;word-break:break-all;border-radius:12px;margin-bottom:.4rem;padding:.6rem 1rem;font-weight:700}.hello{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.hello img{width:72px}.hello h1{margin:0}ul.plain{margin:0 0 .4rem;padding-left:1.1rem}ul.plain li{margin-bottom:.3rem}.login{background:radial-gradient(circle at 20% 10%, var(--blue-soft), transparent 50%), radial-gradient(circle at 80% 90%, var(--terra-soft), transparent 45%), var(--bg);place-items:center;min-height:100vh;padding:16px;display:grid}.login-card{background:var(--card);width:min(420px,100%);box-shadow:var(--shadow);text-align:center;border-radius:28px;padding:2rem 1.6rem}.login-card .form{text-align:left}.login-logo{width:190px;margin-bottom:.5rem}.demo-login{text-align:center;margin-top:.5rem}.demo-login .row{justify-content:center}.preview{border-radius:12px;max-width:100%;max-height:60vh;margin:.5rem auto;display:block}a.btn{text-decoration:none;display:inline-block}.topic{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer}.topic-icon{font-size:1.4rem}.topic-title{font-family:"Baloo 2",Nunito,sans-serif;font-size:1.1rem}.topic-count{text-align:center;background:var(--blue-soft);min-width:2rem;color:var(--blue-ink);border-radius:999px;padding:.1rem .5rem;font-weight:700}.chat{flex-direction:column;padding:0;display:flex;overflow:hidden}.chat-head{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;padding:.7rem 1rem;display:grid}.chat-head h3{text-align:center;margin:0}.chat-body{background:var(--blue-soft);flex-direction:column;gap:.5rem;height:min(60vh,520px);padding:1rem;display:flex;overflow-y:auto}.chat-day{text-align:center;color:var(--muted);margin:.4rem 0;font-size:.8rem}.bubble{background:var(--card);max-width:min(80%,520px);box-shadow:0 1px 0 var(--line);border-radius:16px 16px 16px 4px;padding:.45rem .8rem}.bubble.mine{background:var(--terra-soft);border-radius:16px 16px 4px;margin-left:auto}.bubble strong{color:var(--blue-ink);font-size:.8rem}.bubble p{overflow-wrap:anywhere;margin:0}.bubble time{text-align:right;color:var(--muted);font-size:.72rem;display:block}.chat-input{border-top:1px solid var(--line);align-items:flex-end;gap:.5rem;padding:.7rem;display:flex}.chat-input textarea{resize:none;field-sizing:content;min-height:2.6rem;max-height:8rem}.center-text{text-align:center}.main,.page-head>div{min-width:0}.who{margin-top:1rem}.opts-edit{flex-direction:column;align-items:stretch;gap:.4rem;display:flex}.opts-edit>.link{align-self:flex-start}.close-box{border-top:2px dashed var(--line);flex-direction:column;gap:.4rem;margin-top:1rem;padding-top:1rem;display:flex}.close-box select{flex:1;width:auto;min-width:12rem}.poll-title{margin:.4rem 0 .2rem}.bar-gap{flex-wrap:wrap;margin-bottom:1rem}.decisions{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.decisions li{background:var(--blue-soft);border-radius:10px;flex-wrap:wrap;justify-content:space-between;gap:1rem;padding:.4rem .7rem;display:flex}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;margin:1.6rem 0 .9rem;display:flex}.section-head h3{margin:0}.buy-item{align-items:center;gap:.8rem;padding:.7rem 1rem;display:flex}.bubble-foot{justify-content:space-between;align-items:center;gap:.6rem;margin-top:.15rem;display:flex}.bubble-foot time{display:inline}.like{font:inherit;cursor:pointer;opacity:.55;color:var(--ink);background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:.25rem;padding:.05rem .45rem;font-size:.8rem;display:inline-flex}.like:hover,.like:focus-visible,.like.has{opacity:1}.like.has{background:var(--blue-soft)}.like.on{border-color:var(--terra-ink);background:var(--card)}.likers{color:var(--muted);font-size:.72rem;display:block}.members-table td{vertical-align:middle}.who-cell{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.who-cell .badge{margin-left:0}.nowrap{white-space:nowrap}.contact{overflow-wrap:anywhere;flex-direction:column;font-size:.9rem;display:flex}.office{background:var(--line);white-space:nowrap;border-radius:999px;padding:.15rem .7rem;font-size:.85rem;font-weight:700;display:inline-block}.office.lead{background:var(--blue);color:#10384b}.mobile-top{display:none}@media (width<=760px){.mobile-top{align-items:center;gap:.6rem;margin-bottom:.8rem;display:flex}}.name-contact{display:none}@media (width<=600px){.members-table .col-contact{display:none}.members-table .name-contact{margin-top:.2rem;display:flex}.members-table th,.members-table td{padding:.5rem}}.modal.wide{width:min(1100px,100%)}.buy-link{overflow-wrap:anywhere;margin-top:.1rem;font-size:.85rem;display:inline-block}.report{flex-direction:column;gap:1rem;display:flex}.report-head{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.report-head img{width:90px}.report-head>div{flex:1;min-width:0}.report-head h2,.report-head p{margin:0}.report-table{font-size:.85rem}.report-table td,.report-table th{padding:.45rem .5rem}.warn{color:var(--danger);font-weight:700}.report-sums{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:1rem;display:grid}.report-sums h3{margin:0 0 .3rem;font-size:1rem}.report-sums p{border-bottom:1px dashed var(--line);font-variant-numeric:tabular-nums;justify-content:space-between;margin:0;padding:.2rem 0;display:flex}.report-warn p{margin:.2rem 0}@media print{body *{visibility:hidden}.report,.report *{visibility:visible}.report{color:#000;width:100%;position:absolute;inset:0 auto auto 0}.overlay{background:0 0}.report .table-wrap{border:0;overflow:visible}.report-table{font-size:9pt}.no-print{display:none!important}}.icon{vertical-align:middle;flex-shrink:0;display:inline-block}.nav-icon{background:var(--card);border-radius:50%;padding:3px}.nav-link.active .nav-icon{box-shadow:0 2px #10384b2e}.icon-head{align-items:center;gap:.5rem;display:flex}.btn .icon,.with-icon .icon,.file .icon{vertical-align:-6px;margin-right:.35rem}.with-icon,.file{align-items:center;display:inline-flex}.like .icon{opacity:.9}@media (width<=760px){.nav-icon{width:30px;height:30px}}.agenda{flex-direction:column;gap:.25rem;margin:0 0 .6rem;padding-left:1.4rem;display:flex}.agenda li::marker{color:var(--terra-ink);font-weight:700}.docs{flex-direction:column;gap:.8rem;display:flex}.docs h3{margin:0}.doc-slot{border:2px dashed var(--line);border-radius:14px;flex-direction:column;align-items:flex-start;gap:.4rem;padding:.7rem .9rem;display:flex}.doc-slot.has{border-style:solid}.doc-slot.signed.has{border-color:var(--peach)}.doc-slot>.row{width:100%}.small-btn{padding:.35rem .9rem;font-size:.9rem}.nav-short{display:none}@media (width<=760px){.nav-label{display:none}.nav-short{display:block}.nav-link{flex:1;min-width:0;padding:.3rem .1rem;font-size:.62rem}.side nav{gap:2px}}.thumb{border:1px solid var(--line);background:var(--soft,var(--blue-soft));cursor:pointer;color:var(--muted);border-radius:10px;place-items:center;padding:0;font-size:1.2rem;display:inline-grid;overflow:hidden}.thumb img{object-fit:cover;width:100%;height:100%;display:block}.thumb.empty{cursor:default;opacity:.5;background:var(--blue-soft)}.budget-table td{vertical-align:middle}.count-pill{font:inherit;background:var(--blue);color:#10384b;cursor:pointer;border:0;border-radius:999px;min-width:2.2rem;padding:.2rem .6rem;font-weight:700}.count-pill.zero{background:var(--line);color:var(--muted)}.winner-cell{min-width:12rem}.winner-cell select{padding:.35rem .5rem;font-size:.9rem}.winner-cell .badge{margin:.3rem 0 0}select.auto{width:auto}.grant h3{margin:0}.grant-amount{text-align:right}.grant-amount small{color:var(--muted);font-size:.8rem;font-weight:700;display:block}.grant-amount strong{color:var(--blue-ink);font-family:"Baloo 2",sans-serif;font-size:1.5rem}.meter{background:var(--blue-soft);border-radius:999px;height:12px;margin:.8rem 0 .3rem;position:relative;overflow:hidden}.meter span{background:var(--blue);border-radius:999px;height:100%;display:block;position:absolute;top:0;left:0}.meter span.spent{background:var(--terra-ink)}.meter-legend{flex-wrap:wrap;gap:.3rem 1.1rem;display:flex}.dot{background:var(--blue);vertical-align:-1px;border-radius:50%;width:.7rem;height:.7rem;margin-right:.35rem;display:inline-block}.dot.spent{background:var(--terra-ink)}.links-row{flex-wrap:wrap;gap:.25rem;margin-top:.3rem;display:flex}.links-row .badge{white-space:normal;margin-left:0}.ai-box{background:var(--blue-soft);border-radius:14px;margin-bottom:.9rem;padding:.8rem .9rem}.ai-box .field{margin-bottom:.5rem}.ai-btn{background:var(--card)}.ok-text{color:var(--blue-ink);margin:.5rem 0 0}.grant h4{margin:0;font-family:"Baloo 2",sans-serif;font-size:1.05rem}.stat>small+strong+small{color:var(--muted);font-size:.8rem;display:block}.meta-item{align-items:center;gap:.3rem;display:inline-flex}.poll-no{color:var(--terra-ink);white-space:nowrap;margin-right:.45rem;font-weight:800}.poll-no.big{letter-spacing:.02em;margin:0 0 .1rem;font-size:.95rem}.office-req{flex-direction:column;align-items:flex-start;gap:.3rem;margin-top:.35rem;display:flex}.office-req small{color:var(--terra-ink)}.head-actions{align-items:center}.avatars{align-items:center;margin-right:.3rem;display:flex}.avatars .avatar{border:2px solid var(--card);margin-left:-8px}.avatars .avatar:first-child{margin-left:0}.avatars .more{background:var(--blue-soft);color:var(--blue-ink);font-size:.75rem}.not-team{margin:-.4rem 0 1rem}.section-body{min-width:0}.section-split{grid-template-columns:230px minmax(0,1fr);align-items:start;gap:1.2rem;display:grid}.section-side{gap:.9rem;padding:.8rem;display:grid;position:sticky;top:1rem}.section-group{gap:2px;display:grid}.section-title{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);align-items:center;gap:.4rem;padding:0 .6rem .2rem;font-size:.72rem;display:flex}.section-link{width:100%;font:inherit;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem .7rem;font-weight:700;display:flex}.section-link:hover{background:var(--blue-soft)}.section-link[aria-current=page]{background:var(--blue);color:#10384b}.section-link small{color:var(--muted);white-space:nowrap;font-size:.78rem;font-weight:700}.section-link[aria-current=page] small{color:inherit;opacity:.75}.section-link small.alert{color:var(--terra-ink)}.section-list{gap:.8rem;display:grid}.section-list .section-group{background:var(--card);border:1px solid var(--line);border-radius:18px;gap:0;overflow:hidden}.section-list .section-title{padding:.7rem 1rem .2rem}.section-list .section-link{border-top:1px solid var(--line);border-radius:0;padding:.85rem 1rem}.section-list .section-title+.section-link,.section-list .section-link:first-child{border-top:0}.section-list .section-link:after{content:"›";color:var(--blue-ink);margin-left:.3rem;font-size:1.3rem;line-height:1}.section-list .section-link span{flex:1}.section-heading{color:var(--blue-ink);margin:0 0 .8rem;font-family:"Baloo 2",sans-serif}.link-back{font:inherit;color:var(--blue-ink);cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-weight:700}.team-req{gap:.5rem;margin-bottom:1rem;display:grid}.alerts{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.alert-row{align-items:center;gap:.8rem;padding:.8rem 1rem;display:flex}.alert-dot{background:var(--blue);border-radius:50%;flex:none;width:.7rem;height:.7rem}.alert-row.peach .alert-dot{background:var(--terra-ink)}.topbar{align-items:center;gap:.6rem;margin:-.6rem 0 .6rem;display:flex}.mobile-only{display:none}.task-bar{margin-bottom:1rem}.task-bar .tabs{margin:0}@media (width<=720px){.topbar{margin:0 0 .8rem}.mobile-only{display:inline}img.mobile-only{display:block}}.bell{position:relative}.bell-btn{background:var(--card);width:46px;height:46px;box-shadow:var(--shadow);cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid;position:relative}.bell-btn:hover,.bell-btn[aria-expanded=true]{background:var(--blue-soft)}.bell-count{color:#fff;border:2px solid var(--bg);background:#d93c2b;border-radius:999px;place-items:center;min-width:1.35rem;height:1.35rem;padding:0 .3rem;font-size:.75rem;font-weight:800;display:grid;position:absolute;top:-2px;right:-4px}.bell-panel{z-index:40;width:min(380px,100vw - 32px);max-height:70vh;padding:.9rem .6rem .6rem;position:absolute;top:calc(100% + .5rem);right:0;overflow-y:auto}.bell-panel h3{padding:0 .5rem .4rem;font-family:"Baloo 2",sans-serif;font-size:1.25rem}.bell-panel ul{gap:2px;margin:0;padding:0;list-style:none;display:grid}.bell-panel a{color:var(--ink);border-radius:12px;align-items:flex-start;gap:.6rem;padding:.6rem .5rem;font-size:.93rem;line-height:1.35;text-decoration:none;display:flex}.bell-panel a:hover{background:var(--blue-soft)}.bell-panel li.new a{background:color-mix(in srgb, var(--blue-soft) 70%, transparent);font-weight:700}.bell-dot{background:var(--blue);border-radius:50%;flex:none;width:.65rem;height:.65rem;margin-top:.35rem}.bell-dot.urgent{background:var(--terra-ink)}@media (width<=720px){.bell-panel{left:max(16px, env(safe-area-inset-left,0px));right:max(16px, env(safe-area-inset-right,0px));top:calc(64px + env(safe-area-inset-top,0px));width:auto;position:fixed}}

/* ----- mobilné menu (tri čiarky) ----- */
.menu-backdrop { display: none; }
.menu-btn { width: 46px; height: 46px; border-radius: 50%; border: 0; background: var(--card); box-shadow: var(--shadow); display: none; flex-direction: column; align-items: center; justify-content: center; gap: 5px; cursor: pointer; padding: 0; flex: none; }
.menu-btn span { display: block; width: 20px; height: 2.5px; border-radius: 2px; background: var(--ink); }
@media (max-width: 760px) {
  .topbar .menu-btn.mobile-only { display: flex; }
  .side {
    position: fixed; top: 0; bottom: 0; left: 0; right: auto; width: min(290px, 84vw); height: 100%; z-index: 41;
    flex-direction: column; gap: 1rem; padding: 1.2rem 1rem calc(1rem + env(safe-area-inset-bottom)); overflow-y: auto;
    border-top: 0; border-right: 2px dashed var(--line);
    transform: translateX(-105%); transition: transform .22s ease; box-shadow: 4px 0 24px rgba(0,0,0,.12);
  }
  body.menu-open { overflow: hidden; }
  body.menu-open .side { transform: none; }
  .menu-backdrop { display: block; position: fixed; inset: 0; z-index: 40; background: rgba(30, 40, 50, .35); opacity: 0; pointer-events: none; transition: opacity .22s ease; }
  body.menu-open .menu-backdrop { opacity: 1; pointer-events: auto; }
  .side-logo { display: block; width: 130px; }
  .side-me { display: flex; }
  .side nav { flex-direction: column; flex: none; justify-content: flex-start; gap: 4px; }
  .nav-link { flex-direction: row; flex: none; gap: .7rem; padding: .5rem .8rem; border-radius: 999px; font-size: 1rem; text-align: left; }
  .nav-label { display: inline; max-width: none; line-height: inherit; }
  .nav-short { display: none; }
  .main { padding-bottom: 2rem; }
}

/* ----- valné zhromaždenie: číslo, program, zápisnica ----- */
.vz-no { display: inline-block; font-weight: 800; letter-spacing: .06em; color: var(--terra-ink); font-size: .85rem; }
.program-head h3 { margin: .6rem 0 .3rem; }
.zap-slot { gap: .5rem; }
.zap-form { gap: 1rem; }
.zap-sec { border: 2px solid var(--line); border-radius: 14px; padding: .8rem .9rem 1rem; margin: 0; display: flex; flex-direction: column; gap: .6rem; min-width: 0; }
.zap-sec legend { font-weight: 800; padding: 0 .4rem; color: var(--blue-ink); }
.zap-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr)); gap: .6rem; }
.zap-label { font-size: .75rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--terra-ink); }
.zap-res { background: var(--blue-soft); border-radius: 12px; padding: .6rem .7rem; display: flex; flex-direction: column; gap: .5rem; }
.zap-votes { display: flex; flex-wrap: wrap; gap: .5rem .8rem; align-items: flex-end; }
.zap-votes label { display: flex; flex-direction: column; font-size: .8rem; font-weight: 700; color: var(--muted); }
.zap-votes input { width: 5.2rem; }
.zap-paper { background: #e9edf1; border-radius: 12px; padding: clamp(6px, 2vw, 18px); overflow-x: auto; }

/* dokument zápisnice (obrazovka aj tlač) */
.zap-doc { --zd-navy: #1d3557; --zd-terra: #c0622e; --zd-blue: #8cbff7; --zd-gray: #6b7280; --zd-row: #eef6fe;
  color: #2b2f36; font-family: 'Nunito', system-ui, sans-serif; font-size: 10.5pt; line-height: 1.5; }
.zap-doc .zd-page { background: #fff; padding: clamp(16px, 5vw, 46px) clamp(14px, 5vw, 52px); max-width: 794px; margin: 0 auto 14px; box-shadow: 0 2px 10px rgba(0,0,0,.08); }
.zap-doc h1, .zap-doc h2, .zap-doc .zd-h3 { font-family: Georgia, 'Times New Roman', serif; color: var(--zd-navy); font-weight: 400; }
.zd-title { text-align: center; margin-bottom: 1.6rem; }
.zd-title img { width: 88px; display: block; margin: 0 auto .4rem; }
.zd-org { color: var(--zd-terra); font-weight: 800; letter-spacing: .3em; text-transform: uppercase; font-size: 9pt; }
.zd-addr { color: var(--zd-gray); font-size: 8.5pt; }
.zd-title hr { width: 46%; border: 0; border-top: 2px solid var(--zd-navy); margin: 1.1rem auto; }
.zd-title h1 { font-size: 28pt; letter-spacing: .28em; text-transform: uppercase; margin: 0; line-height: 1.15; }
.zd-sub { font-style: italic; margin: .2rem 0 0; font-family: Georgia, serif; }
.zd-no { margin: .2rem 0 0; font-weight: 800; letter-spacing: .12em; color: var(--zd-navy); font-size: 9.5pt; }
.zd-topic { font-style: italic; color: var(--zd-terra); margin: .5rem 0 0; font-family: Georgia, serif; }
.zd-title-small h1 { font-size: 20pt; }
.zd-title-small hr { width: 32%; }
.zd-cap { font-size: 7.5pt; font-weight: 800; letter-spacing: .1em; overflow-wrap: anywhere; text-transform: uppercase; color: var(--zd-gray); }
.zd-cap.terra { color: var(--zd-terra); }
.zd-facts { display: grid; grid-template-columns: 1fr 1fr; gap: 0 2rem; margin-bottom: 1.4rem; }
.zd-fact { display: grid; grid-template-columns: minmax(90px, 46%) 1fr; gap: .5rem; align-items: end; border-bottom: 1px solid #cfd8e3; padding: .55rem 0 .25rem; min-width: 0; }
.zd-val { font-weight: 700; color: var(--zd-navy); overflow-wrap: anywhere; white-space: pre-wrap; }
.zap-doc .on { font-weight: 800; color: var(--zd-navy); text-decoration: underline; text-underline-offset: 3px; }
.zap-doc .off { color: #b3b9c2; text-decoration: line-through; }
.zap-doc h2 { font-size: 14pt; border-bottom: 1px solid #cfd8e3; padding-bottom: .25rem; margin: 1.4rem 0 .6rem; }
.zap-doc h2 span { color: var(--zd-terra); }
.zd-agenda { margin: 0 0 .7rem; padding-left: 1.6rem; }
.zd-agenda li::marker { color: var(--zd-terra); font-weight: 800; }
.zd-vote { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem .55rem; margin: .5rem 0; }
.zd-vote .zd-cap { color: var(--zd-navy); margin-right: .6rem; }
.zd-box { display: inline-grid; place-items: center; min-width: 52px; height: 26px; border: 1.5px solid var(--zd-blue); border-radius: 3px; font-weight: 800; color: var(--zd-navy); margin-right: .5rem; }
.zd-result { margin-left: auto; }
.zd-res { border-top: 2px solid var(--zd-terra); border-bottom: 1px solid #cfd8e3; padding: .6rem 0 .3rem; margin: .9rem 0; break-inside: avoid; }
.zd-res p { margin: .3rem 0; }
.zd-section > p { text-align: justify; }
.zd-fill { display: inline-block; min-width: 4.5em; border-bottom: 1px solid #8a94a3; text-align: center; font-weight: 700; color: var(--zd-navy); }
.zd-h3 { font-style: italic; font-weight: 700 !important; margin: 1.1rem 0 .4rem; }
.zd-sign { display: grid; grid-template-columns: minmax(120px, 38%) 1fr; gap: 1rem; align-items: end; margin: 1.1rem 0; break-inside: avoid; }
.zd-sign > div:first-child { display: flex; flex-direction: column; }
.zd-line { border-top: 1.5px solid var(--zd-navy); padding-top: .15rem; font-size: 7.5pt; font-style: italic; color: var(--zd-gray); margin-top: 1.6rem; }
.zd-note { font-style: italic; font-size: 9pt; color: var(--zd-gray); }
.zd-blank-lines { border-bottom: 1px solid #cfd8e3; }
.zd-table { width: 100%; border-collapse: collapse; margin-top: .6rem; }
.zd-table th { text-align: left; font-size: 7.5pt; letter-spacing: .14em; text-transform: uppercase; color: var(--zd-navy); border-bottom: 2px solid var(--zd-navy); padding: .4rem .5rem; }
.zd-table td { padding: .55rem .5rem; height: 1.9rem; border-bottom: 1px solid #dbe3ec; }
.zd-table td:first-child { width: 2.5rem; color: var(--zd-terra); font-weight: 800; }
.zd-table td:nth-child(2) { width: 52%; font-weight: 600; }
.zd-table tbody tr:nth-child(even) td { background: var(--zd-row); }
@media (max-width: 560px) {
  .zd-facts { grid-template-columns: 1fr; }
  .zd-title h1 { font-size: 21pt; letter-spacing: .18em; }
  .zd-result { margin-left: 0; width: 100%; }
}
#zap-print { display: none; }

@page zapisnica {
  size: A4; margin: 16mm 15mm 16mm;
  @top-left { content: "ZÁPISNICA Z VALNÉHO ZHROMAŽDENIA"; font: 7pt sans-serif; letter-spacing: .12em; color: #6b7280; }
  @top-right { content: "Rodinné centrum Alžbetka"; font: bold 7.5pt sans-serif; color: #1d3557; }
  @bottom-left { content: "Rodinné centrum Alžbetka · Alžbetin dvor 52, 900 42 Miloslavov · IČO 42 171 873"; font: 7pt sans-serif; color: #6b7280; }
  @bottom-right { content: "Strana " counter(page) " z " counter(pages); font: 7pt sans-serif; color: #6b7280; }
}
@page zapisnica:first { @top-left { content: none; } @top-right { content: none; } }
@media print {
  body.zap-printing > :not(#zap-print) { display: none !important; }
  body.zap-printing #zap-print { display: block; }
  body.zap-printing #zap-print, body.zap-printing #zap-print * { visibility: visible !important; }
  body.zap-printing { background: #fff !important; }
  #zap-print .zap-doc { page: zapisnica; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  #zap-print .zd-page { box-shadow: none; padding: 0; margin: 0; max-width: none; }
  #zap-print .zd-break { break-before: page; }
  #zap-print .zd-facts { grid-template-columns: 1fr 1fr; }
  #zap-print .zd-title h1 { font-size: 28pt; letter-spacing: .28em; }
  #zap-print .zd-title-small h1 { font-size: 20pt; }
  #zap-print .zd-result { margin-left: auto; width: auto; }
  #zap-print h2 { break-after: avoid; }
}

/* v1.6: program s popisom, vyklikanie, akcie zápisnice */
.program-desc { margin: .1rem 0 .3rem; white-space: pre-wrap; }
.prog-edit { display: flex; flex-direction: column; gap: .4rem; padding: .6rem; border: 2px solid var(--line); border-radius: 12px; }
.prog-edit .row input { flex: 1; min-width: 0; }
.prog-no { font-weight: 800; color: var(--terra-ink); min-width: 1.4rem; }
.zap-sec .row input { flex: 1; min-width: 0; }
.zap-actions { display: flex; flex-wrap: wrap; gap: .5rem; }
.zap-add { align-self: flex-start; }
.zap-choice { display: inline-flex; gap: .4rem; flex-wrap: wrap; }
.zap-choice button { font: inherit; font-weight: 700; padding: .4rem 1rem; border-radius: 999px; border: 2px solid var(--line); background: var(--card); color: var(--ink); cursor: pointer; }
.zap-choice button.on { background: var(--blue); border-color: var(--blue); color: #10384b; }
.zd-annex { margin-top: 1.6rem; font-size: 9.5pt; }
.zd-annex .zd-cap { margin-right: .6rem; }
.zd-title-small img { width: 64px; }

/* v1.8: príloha č. 1 s hlasovaním a podpismi */
.zd-annex-badge { float: right; border: 2px solid var(--zd-terra); color: var(--zd-terra); font-weight: 800; letter-spacing: .12em; text-transform: uppercase; font-size: 9pt; padding: .25rem .7rem; border-radius: 4px; }
.zap-doc .zd-h2-small { font-size: 12pt; margin-top: 1.2rem; }
.zd-votes-table td:first-child { width: auto; color: inherit; font-weight: 600; }
.zd-votes-table td:nth-child(2) { width: auto; font-weight: 400; }
.zd-votes-table th:not(:first-child), .zd-votes-table td:not(:first-child) { width: 16%; text-align: center; border-left: 1px solid #dbe3ec; }
.zd-pt { color: var(--zd-terra); font-weight: 800; }
.zd-signs { display: grid; grid-template-columns: 1fr 1fr; gap: 0 2rem; margin-top: .6rem; break-inside: avoid; }
.zd-signs .zd-sign { grid-template-columns: 1fr; gap: 0; margin: .8rem 0 0; }
.zd-signs .zd-line { margin-top: 2rem; }
.zd-table td { height: 1.75rem; padding: .4rem .5rem; }
@media (max-width: 560px) { .zd-signs { grid-template-columns: 1fr; } }
.msg-del { border: 0; background: none; cursor: pointer; font-size: .85rem; opacity: .45; padding: 0 .2rem; }
.msg-del:hover, .msg-del:focus-visible { opacity: 1; }
@media print { #zap-print .zd-votes-part { break-before: page; } }

/* v1.9: nepovinný koniec eventu, hlavička diskusie */
.row > .field-optional { flex: 1; min-width: 0; }
.field-optional .field > span { font-weight: 600; color: var(--muted); font-size: .85rem; }
.field-optional input { opacity: .6; }
.field-optional input:focus, .field-optional input:not(:placeholder-shown):valid { opacity: 1; }
.disc-head { display: flex; flex-direction: column; align-items: flex-start; gap: .6rem; margin: 1rem 0; }
.disc-head p { margin: 0; }

/* v2.0: komentáre k úlohám */
.task-comments { margin-top: .4rem; }
.tc-panel { margin-top: .5rem; display: flex; flex-direction: column; gap: .5rem; border-top: 1px dashed var(--line); padding-top: .6rem; }
.tc-item { background: var(--blue-soft); border-radius: 12px; padding: .45rem .7rem; }
.tc-item.tc-me { box-shadow: inset 3px 0 0 var(--terra); }
.tc-item p { margin: .15rem 0 0; }
.tc-head { display: flex; align-items: baseline; gap: .5rem; flex-wrap: wrap; }
.tc-head .msg-del { margin-left: auto; }
.mention { color: var(--terra-ink); }
.tc-form { display: flex; flex-direction: column; gap: .4rem; }
.tc-input { position: relative; }
.tc-input textarea { width: 100%; }
.tc-suggest { position: absolute; left: 0; right: 0; top: 100%; z-index: 30; background: var(--card); border: 2px solid var(--line); border-radius: 12px; box-shadow: var(--shadow); display: flex; flex-direction: column; overflow: hidden; }
.tc-suggest button { font: inherit; text-align: left; padding: .5rem .8rem; border: 0; background: none; color: var(--ink); cursor: pointer; }
.tc-suggest button:first-child, .tc-suggest button:hover { background: var(--blue-soft); }
