:root{--bg:#f5f6f8;--surface:#fff;--surface-2:#f0f2f5;--text:#16181d;--muted:#5d6573;--border:#dde1e7;--accent:#1f5fbf;--accent-ink:#fff;--accent-soft:#e6eefb;--accent-text:#1f5fbf;--brand-2:#1f5fbf;--brand-2-ink:#fff;--danger:#b42318;--danger-soft:#fdecea;--ok:#1d7a46;--ok-soft:#e5f4eb;--warn:#9a6200;--warn-soft:#fff4dc;--radius:10px;--shadow:0 1px 2px #1018280f, 0 1px 3px #10182814;--nav-h:60px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.45}@media (prefers-color-scheme:dark){:root{--bg:#111317;--surface:#1a1d23;--surface-2:#22262e;--text:#e8eaee;--muted:#9aa3b2;--border:#2e333d;--accent:#6ea2f5;--accent-ink:#0d1117;--accent-soft:#1c2a42;--accent-text:#6ea2f5;--brand-2:#6ea2f5;--brand-2-ink:#0d1117;--danger:#f28b82;--danger-soft:#3a1d1b;--ok:#7fd3a0;--ok-soft:#173024;--warn:#f5c26b;--warn-soft:#3a2e14;--shadow:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}a{color:var(--accent-text);text-decoration:none}a:hover{text-decoration:underline}h1{margin:0 0 .15rem;font-size:1.45rem}h2{margin:0 0 .8rem;font-size:1.08rem}h3{margin:1rem 0 .3rem;font-size:.95rem}code{background:var(--surface-2);border-radius:5px;padding:.05rem .35rem;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.muted{color:var(--muted)}.small{font-size:.85rem}.center{text-align:center}.num{text-align:right;font-variant-numeric:tabular-nums}ul.plain{margin:0;padding-left:1.1rem}.shell{min-height:100vh;padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom))}.topbar{z-index:20;background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.6rem 1rem;display:flex;position:sticky;top:0}.brand{align-items:center;gap:.6rem;min-width:0;display:flex}.brand-text{flex-direction:column;min-width:0;display:flex}.brand-text strong{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.brand-text small{color:var(--muted);font-size:.75rem}.brand-mark{background:var(--brand-2);width:34px;height:34px;color:var(--brand-2-ink);border-radius:9px;flex:none;place-items:center;font-size:.85rem;font-weight:700;display:inline-grid}.brand-logo{object-fit:contain;flex:none;width:auto;max-width:110px;height:38px}.topbar{border-top:4px solid var(--brand-2)}.brand-mark.lg{width:44px;height:44px;font-size:1rem}.usermenu{position:relative}.usermenu summary{cursor:pointer;background:var(--surface-2);border:1px solid var(--border);border-radius:50%;place-items:center;width:36px;height:36px;font-weight:600;list-style:none;display:grid}.usermenu summary::-webkit-details-marker{display:none}.usermenu-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:220px;box-shadow:var(--shadow);flex-direction:column;gap:.15rem;padding:.5rem;display:flex;position:absolute;top:44px;right:0}.usermenu-panel .muted{border-bottom:1px solid var(--border);margin-bottom:.2rem;padding:.35rem .6rem .5rem}.usermenu-panel button{text-align:left;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:.55rem .6rem}.usermenu-panel button:hover{background:var(--surface-2)}.sidenav{z-index:20;height:calc(var(--nav-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--surface);border-top:1px solid var(--border);display:flex;position:fixed;bottom:0;left:0;right:0}.sidenav a{color:var(--muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-size:.72rem;text-decoration:none;display:flex}.sidenav a.active{color:var(--accent-text)}.content{max-width:1180px;margin:0 auto;padding:1rem}@media (width>=900px){.shell{grid-template-rows:auto 1fr;grid-template-columns:220px 1fr;padding-bottom:0;display:grid}.topbar{grid-column:1/-1}.sidenav{border-top:0;border-right:1px solid var(--border);flex-direction:column;gap:.2rem;height:calc(100vh - 57px);padding:.8rem;position:sticky;top:57px}.sidenav a{border-radius:8px;flex-direction:row;flex:none;justify-content:flex-start;gap:.65rem;padding:.6rem .75rem;font-size:.95rem}.sidenav a.active{background:var(--accent-soft)}.content{width:100%;padding:1.5rem 2rem}}.page{flex-direction:column;gap:1rem;display:flex}.page.narrow{max-width:480px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.75rem;display:flex}.page-head p{margin:.1rem 0 0}.back{margin-bottom:.3rem;font-size:.9rem;display:inline-block}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1rem}@media (width>=900px){.card{padding:1.25rem 1.4rem}}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.6rem;display:flex}.section-head h2{margin:0}.row-gap{flex-wrap:wrap;gap:.5rem;display:flex}.empty{text-align:center;background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius);padding:2.5rem 1rem}.loading{text-align:center;color:var(--muted);padding:3rem}.btn{border:1px solid var(--border);background:var(--surface);min-height:42px;color:var(--text);font:inherit;cursor:pointer;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:.4rem;padding:.5rem 1rem;font-weight:550;text-decoration:none;display:inline-flex}.btn:hover{background:var(--surface-2);text-decoration:none}.btn:disabled{opacity:.6;cursor:default}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn-primary:hover{background:var(--accent);filter:brightness(1.08)}.btn-danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn-danger-outline{color:var(--danger);border-color:var(--danger)}.btn-sm{min-height:34px;padding:.3rem .7rem;font-size:.88rem}.btn-link{color:var(--accent-text);background:0 0;border:0;min-height:auto;padding:.3rem .4rem}.btn-link.danger,.danger{color:var(--danger)}.btn.block{width:100%}.btn-icon{cursor:pointer;color:var(--muted);background:0 0;border:0;padding:0 .3rem;font-size:1.6rem;line-height:1}.form{flex-direction:column;gap:1rem;display:flex}fieldset{border:0;flex-direction:column;gap:1rem;min-width:0;margin:0;padding:0;display:flex}.grid{grid-template-columns:1fr;gap:.8rem 1rem;display:grid}@media (width>=640px){.grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1000px){.grid:not(.two){grid-template-columns:repeat(3,1fr)}}.field{flex-direction:column;gap:.25rem;min-width:0;display:flex}.field.wide{grid-column:1/-1}.field-label{color:var(--muted);font-size:.85rem;font-weight:600}.field-error{color:var(--danger);font-size:.8rem}.field-hint{color:var(--muted);font-size:.8rem}input,select,textarea{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:8px;width:100%;min-height:42px;padding:.55rem .7rem}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}.has-error input,.has-error select{border-color:var(--danger)}fieldset:disabled input,fieldset:disabled select,fieldset:disabled textarea{background:var(--surface-2);color:var(--text)}.check{cursor:pointer;align-items:center;gap:.45rem;font-size:.92rem;display:inline-flex}.check input{width:18px;height:18px;min-height:auto}.form-actions{justify-content:flex-end;gap:.6rem;display:flex}.form-actions.sticky{bottom:calc(var(--nav-h) + env(safe-area-inset-bottom));background:var(--bg);border-top:1px solid var(--border);z-index:5;padding:.75rem 0;position:sticky}@media (width>=900px){.form-actions.sticky{bottom:0}}.guardian{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;margin-top:.7rem;padding:.8rem}.guardian input,.guardian select{background:var(--surface)}.guardian-flags{flex-wrap:wrap;align-items:center;gap:.5rem 1.2rem;margin-top:.6rem;display:flex}.months{grid-template-columns:repeat(3,1fr);gap:.4rem;margin:.5rem 0;display:grid}@media (width>=640px){.months{grid-template-columns:repeat(6,1fr)}}.month{border:1px solid var(--border);cursor:pointer;border-radius:8px;align-items:center;gap:.4rem;padding:.45rem .55rem;font-size:.9rem;display:flex}.month.on{background:var(--accent-soft);border-color:var(--accent)}.month input{width:16px;height:16px;min-height:auto}.filters{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.filters .search{grid-column:1/-1}@media (width>=900px){.filters{grid-template-columns:2fr 1fr 1.4fr 1.2fr}.filters .search{grid-column:auto}}.search{width:100%}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;background:var(--surface);width:100%}.table th{text-align:left;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);font-size:.8rem;font-weight:600}.table th,.table td{border-bottom:1px solid var(--border);vertical-align:top;padding:.65rem .7rem}.table tr.clickable{cursor:pointer}.table tr.clickable:hover td{background:var(--surface-2)}.table tr.inactive td{opacity:.6}.table td.actions{text-align:right;white-space:nowrap}.table td.actions .btn{margin-left:.3rem}@media (width<=719px){.table.responsive thead{display:none}.table.responsive,.table.responsive tbody,.table.responsive tr,.table.responsive td{width:100%;display:block}.table.responsive tr{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin-bottom:.6rem;padding:.4rem .2rem}.table.responsive td{text-align:left;border:0;padding:.3rem .7rem}.table.responsive td[data-label]:before{content:attr(data-label);color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:.72rem;display:block}.table.responsive td.num,.table.responsive td.actions{text-align:left}.table.responsive td.actions .btn{margin:.2rem .3rem 0 0}.card>.table-wrap .table.responsive tr{box-shadow:none}}.badge{background:var(--surface-2);color:var(--muted);vertical-align:middle;border-radius:999px;padding:.1rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}.badge-active{background:var(--ok-soft);color:var(--ok)}.badge-paused,.badge-warn{background:var(--warn-soft);color:var(--warn)}.badge-left{background:var(--danger-soft);color:var(--danger)}.badge-info{background:var(--accent-soft);color:var(--accent-text)}.alert{border:1px solid;border-radius:8px;padding:.7rem .9rem;font-size:.93rem}.alert-error{background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.alert-ok{background:var(--ok-soft);border-color:var(--ok);color:var(--ok)}.alert-info{background:var(--accent-soft);border-color:var(--accent);color:var(--text)}.alert-warn{background:var(--warn-soft);border-color:var(--warn);color:var(--text)}.modal-backdrop{z-index:50;background:#0a0c1080;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border-radius:14px 14px 0 0;flex-direction:column;width:100%;max-height:92vh;display:flex;overflow:auto}@media (width>=640px){.modal-backdrop{align-items:center}.modal{border-radius:14px;width:560px}}.modal-head{justify-content:space-between;align-items:center;padding:1rem 1.1rem .4rem;display:flex}.modal-head h2{margin:0}.modal-body{flex-direction:column;gap:.8rem;padding:.5rem 1.1rem 1rem;display:flex}.modal-foot{border-top:1px solid var(--border);padding:.8rem 1.1rem;padding-bottom:calc(.8rem + env(safe-area-inset-bottom));justify-content:flex-end;gap:.5rem;display:flex}.pick-list{flex-direction:column;gap:.3rem;display:flex}.pick-item,.club-item{text-align:left;border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);font:inherit;cursor:pointer;border-radius:8px;flex-direction:column;align-items:flex-start;gap:.1rem;padding:.7rem .8rem;display:flex}.pick-item:hover,.club-item:hover{background:var(--surface-2)}.club-item.current{border-color:var(--accent)}.club-list{flex-direction:column;gap:.5rem;margin:.8rem 0;display:flex}.secret{align-items:center;gap:.6rem;display:flex}.secret code{letter-spacing:.05em;padding:.4rem .7rem;font-size:1.25rem}.auth-page{place-items:center;min-height:100vh;padding:1rem;display:grid}.auth-card{flex-direction:column;gap:.8rem;width:100%;max-width:400px;display:flex}.auth-card h1{margin:0}.auth-brand{align-items:center;gap:.7rem;display:flex}.toaster{left:50%;bottom:calc(var(--nav-h) + 1rem);z-index:60;flex-direction:column;gap:.4rem;display:flex;position:fixed;transform:translate(-50%)}@media (width>=900px){.toaster{bottom:1.5rem}}.toast{background:var(--text);color:var(--bg);box-shadow:var(--shadow);border-radius:8px;padding:.6rem 1rem;font-size:.92rem}@media (width<=719px){.table.members-table tr{grid-template-columns:2.6rem 1fr auto;grid-template-areas:"id name status""id cat dob""id contact contact";column-gap:.5rem;padding:.6rem .7rem;display:grid}.table.members-table td{padding:.1rem 0}.table.members-table td[data-label]:before{display:none}.members-table .c-id{color:var(--muted);grid-area:id;font-size:1.05rem}.members-table .c-name{grid-area:name}.members-table .c-status{text-align:right;grid-area:status}.members-table .c-cat{grid-area:cat;font-size:.88rem}.members-table .c-dob{text-align:right;color:var(--muted);grid-area:dob;font-size:.88rem}.members-table .c-contact{grid-area:contact;margin-top:.2rem}}.date-input{display:flex;position:relative}.date-input input[type=text]{padding-right:2.6rem}.date-btn{width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;display:grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.date-btn:hover{background:var(--surface-2);color:var(--text)}.date-native{opacity:0;pointer-events:none;border:0;width:1px;height:1px;min-height:0;padding:0;position:absolute;bottom:0;right:0}.brand-row{flex-wrap:wrap;align-items:flex-end;gap:1rem;display:flex}.color-field{align-items:center;gap:.5rem;display:flex}.color-field input[type=color]{cursor:pointer;width:48px;height:42px;padding:2px}.color-field input[type=text]{width:7.5rem;font-family:ui-monospace,monospace}.swatches{flex-wrap:wrap;gap:.35rem;display:flex}.swatch{border:2px solid var(--surface);width:28px;height:28px;box-shadow:0 0 0 1px var(--border);cursor:pointer;border-radius:50%;padding:0}.preview{border:1px dashed var(--border);border-radius:8px;flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:.8rem;padding:.8rem;display:flex}.logo-box{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.logo-preview{border:1px solid var(--border);background:#fff;border-radius:10px;place-items:center;width:120px;height:120px;display:grid;overflow:hidden}.logo-preview img{object-fit:contain;max-width:100%;max-height:100%}.warn-text{color:var(--warn);font-size:.85rem}.group-grid{grid-template-columns:1fr;gap:1rem;display:grid}@media (width>=900px){.group-grid{grid-template-columns:repeat(2,1fr)}}.group-card h2{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.group-list{margin:0;padding:0;list-style:none}.group-list li{border-bottom:1px solid var(--border);justify-content:space-between;gap:.5rem;padding:.45rem 0;display:flex}.group-list li:last-child{border-bottom:0}details.fold{border:1px solid var(--border);border-radius:8px;margin-top:.8rem;padding:.2rem .8rem}details.fold>summary{cursor:pointer;color:var(--muted);padding:.5rem 0;font-size:.92rem;font-weight:600}details.fold[open]>summary{margin-bottom:.4rem}.dropzone{text-align:center;border:2px dashed var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;min-height:180px;padding:1.5rem;display:flex}.dropzone:hover,.dropzone.over{border-color:var(--accent);background:var(--accent-soft)}.modes{gap:.5rem;display:grid}@media (width>=900px){.modes{grid-template-columns:repeat(3,1fr)}}.mode{border:1px solid var(--border);cursor:pointer;border-radius:8px;align-items:flex-start;gap:.6rem;padding:.75rem;display:flex}.mode.on{border-color:var(--accent);background:var(--accent-soft)}.mode input{flex:none;width:18px;height:18px;min-height:auto;margin-top:.15rem}.mode>span{flex-direction:column;gap:.15rem;display:flex}.map-table select{min-width:220px}.stats-line{flex-wrap:wrap;gap:.4rem;margin:.3rem 0 .8rem;display:flex}.stats-line .badge{padding:.25rem .65rem;font-size:.85rem}.table tr.row-error td{background:var(--danger-soft)}.name-pair{grid-template-columns:1fr 1fr;gap:.3rem;margin-bottom:.3rem;display:grid}.name-pair input{min-height:34px;padding:.3rem .5rem}details.menu{position:relative}details.menu>summary{list-style:none}details.menu>summary::-webkit-details-marker{display:none}.menu-panel{z-index:10;background:var(--surface);border:1px solid var(--border);min-width:220px;box-shadow:var(--shadow);border-radius:8px;flex-direction:column;padding:.3rem;display:flex;position:absolute;top:calc(100% + 4px);right:0}.menu-panel a{color:var(--text);border-radius:6px;padding:.55rem .7rem}.menu-panel a:hover{background:var(--surface-2);text-decoration:none}.th-sort{cursor:pointer;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;font-weight:inherit;background:0 0;border:0;align-items:center;gap:.3rem;padding:0;display:inline-flex}.th-sort:hover{color:var(--text)}.th-sort.active{color:var(--accent-text)}.th-arrow{opacity:.55;font-size:.7rem}.th-sort.active .th-arrow{opacity:1}th.num .th-sort{flex-direction:row-reverse}.sort-mobile{grid-column:1/-1;gap:.5rem;display:none}.sort-mobile select{flex:1}@media (width<=719px){.sort-mobile{display:flex}}.sidenav a.mobile-only{display:none}@media (width<=899px){.sidenav a.desktop-only{display:none}.sidenav a.mobile-only{display:flex}}.month-nav{align-items:center;gap:.5rem;margin-top:.2rem;display:flex}.month-nav strong{text-align:center;min-width:9.5rem;font-size:1.05rem}.tiles{grid-template-columns:repeat(2,1fr);gap:.6rem;display:grid}@media (width>=900px){.tiles{grid-template-columns:repeat(4,1fr)}}.tile{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:.1rem;padding:.8rem 1rem;display:flex}.tile strong{font-variant-numeric:tabular-nums;font-size:1.3rem}.tile.ok strong{color:var(--ok)}.tile.bad strong{color:var(--danger)}.billing-filters{grid-template-columns:1fr}@media (width>=900px){.billing-filters{grid-template-columns:2fr auto}}.seg{flex-wrap:wrap;gap:.3rem;display:flex}.linklike{font:inherit;color:var(--accent-text);cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-weight:600}.linklike:hover{text-decoration:underline}.scroll-box{border:1px solid var(--border);border-radius:8px;max-height:45vh;overflow:auto}.invoice-head{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.barcode{border:1px solid var(--border);background:#fff;border-radius:6px;width:220px;max-width:100%;padding:4px}.strike{color:var(--muted);text-decoration:line-through}.member-pick{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.3rem 0;display:flex}.link-card{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.link-card h2{margin:0 0 .2rem}.link-card p{margin:0}.add-mail{gap:.8rem;display:grid}@media (width>=900px){.add-mail{grid-template-columns:repeat(3,1fr)}}.add-opt{border:1px solid var(--border);border-radius:8px;flex-direction:column;align-items:flex-start;gap:.45rem;padding:.9rem;display:flex}@media (width<=719px){.page-head>.row-gap{grid-template-columns:1fr 1fr;width:100%;display:grid}.page-head>.row-gap>.btn-primary:last-child{grid-column:1/-1}.table.billing-table tr{grid-template-columns:1fr auto;column-gap:.6rem;padding:.6rem .7rem;display:grid}.table.billing-table td{padding:.1rem 0}.table.billing-table td[data-label]:before{display:none}.table.billing-table td[data-label=Obveznik]{grid-column:1}.table.billing-table td[data-label=Iznos]{text-align:right;grid-area:1/2;font-weight:600}.table.billing-table td[data-label="Poziv na broj"]{grid-column:1}.table.billing-table td[data-label=Status]{text-align:right;grid-area:2/2}.table.billing-table td[data-label=Mail]{grid-column:1/-1}.table.billing-table td.actions{grid-column:1/-1;gap:.4rem;margin-top:.3rem;display:flex}.table.billing-table td.actions .btn{flex:1;margin:0}}.training-filters{grid-template-columns:1fr auto;align-items:center;margin-bottom:.6rem}@media (width>=900px){.training-filters{grid-template-columns:320px auto;justify-content:start}}.stats-filters{grid-template-columns:1fr 1fr}@media (width>=900px){.stats-filters{grid-template-columns:repeat(5,minmax(0,220px))}}.week{flex-direction:column;gap:.4rem;display:flex}.day{background:0 0}.day-head{text-transform:capitalize;color:var(--muted);align-items:center;gap:.5rem;margin:.7rem 0 .35rem;font-size:.95rem;display:flex}.day.today .day-head{color:var(--text)}@media (width<=719px){.day.empty-day:not(.today){display:none}}.day.empty-day .muted{margin:0 0 .2rem}.event-card{background:var(--surface);border:1px solid var(--border);border-left:5px solid var(--accent);border-radius:var(--radius);color:inherit;grid-template-columns:5.4rem 1fr auto;align-items:center;gap:.6rem;min-height:58px;margin-bottom:.45rem;padding:.75rem .9rem;text-decoration:none;display:grid}.event-card:hover{background:var(--surface-2)}.event-card.cancelled{opacity:.65}.event-card.cancelled .event-main strong{text-decoration:line-through}.event-time{font-variant-numeric:tabular-nums;font-size:.95rem;font-weight:600}.event-main{min-width:0}.event-main strong{overflow-wrap:anywhere}.event-att{text-align:right}@media (width<=480px){.event-card{grid-template-columns:1fr auto}.event-time{color:var(--muted);grid-column:1/-1;font-size:.85rem}}.event-title{border-left:6px solid var(--accent);padding-left:.6rem}.event-meta{margin:.3rem 0 .4rem;line-height:1.5}.roster{gap:.35rem;margin:.4rem 0 0;padding:0;list-style:none;display:grid}@media (width>=900px){.roster{grid-template-columns:repeat(2,1fr)}}.roster-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;min-height:52px;color:var(--text);font:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;align-items:center;gap:.75rem;padding:.55rem .8rem;display:flex}.roster-row:disabled{cursor:default}.roster-row .roster-name{flex:1;font-weight:500}.roster-mark{border:2px solid var(--border);border-radius:50%;flex:none;justify-content:center;align-items:center;width:30px;height:30px;font-weight:700;display:inline-flex}.roster-row.present{border-color:var(--ok);background:var(--ok-soft)}.roster-row.present .roster-mark{background:var(--ok);border-color:var(--ok);color:var(--surface)}.roster-row.absent{border-color:var(--danger);background:var(--danger-soft)}.roster-row.absent .roster-mark{background:var(--danger);border-color:var(--danger);color:var(--surface)}.roster-row.absent .roster-name{color:var(--muted)}.group-cards{grid-template-columns:1fr;gap:.7rem;margin-bottom:.8rem;display:grid}@media (width>=700px){.group-cards{grid-template-columns:repeat(2,1fr)}}@media (width>=1100px){.group-cards{grid-template-columns:repeat(3,1fr)}}.group-tile{color:inherit;border-top:5px solid var(--accent);margin:0;text-decoration:none;display:block}.group-tile:hover{background:var(--surface-2)}.group-tile.inactive{opacity:.6}.group-tile h2{margin:0}.slot-list{margin:.3rem 0 0}.slot-rows li{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;padding:.55rem 0;display:flex}.slot-rows li:last-child{border-bottom:0}.check-list{flex-wrap:wrap;gap:.4rem 1.1rem;padding:.2rem 0;display:flex}.swatch.on{box-shadow:0 0 0 3px var(--text)}.pick-item.on{border-color:var(--accent);background:var(--accent-soft)}.pick-item:disabled{opacity:.5;cursor:default}.pct-bar{background:var(--surface-2);border-radius:999px;max-width:160px;height:8px;margin-bottom:.2rem;overflow:hidden}.pct-bar span{background:var(--ok);height:100%;display:block}.pct-bar span.mid{background:var(--warn)}.pct-bar span.low{background:var(--danger)}.att-chips{flex-wrap:wrap;gap:.35rem;display:flex}.att-chip{font-variant-numeric:tabular-nums;border-radius:999px;padding:.2rem .55rem;font-size:.8rem;text-decoration:none}.att-chip.present{background:var(--ok-soft);color:var(--ok)}.att-chip.absent{background:var(--danger-soft);color:var(--danger)}.event-card{grid-template-columns:6.8rem 1fr auto}@media (width<=480px){.event-card{grid-template-columns:1fr auto}}@media (width<=719px){.form-actions.att-actions{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.form-actions.att-actions .btn{width:100%;margin:0}.form-actions.att-actions .btn-primary{grid-column:1/-1;min-height:48px}}.cat-filters{grid-template-columns:1fr auto;align-items:center;margin-bottom:.4rem}@media (width>=900px){.cat-filters{grid-template-columns:320px auto;justify-content:start}}.group-list li.with-select{flex-wrap:wrap;gap:.3rem .6rem}.group-list li.with-select>span{flex:10rem;min-width:0}.cat-select{flex:0 13rem;min-width:9rem;min-height:38px;padding-top:.35rem;padding-bottom:.35rem;font-size:.88rem}.group-card.no-cat{border-color:var(--warn)}.form-group{margin:.3rem 0 .6rem}.form-group h3,.card h3.small{text-transform:uppercase;letter-spacing:.03em;margin:.6rem 0 .35rem;font-size:.75rem;font-weight:600}.form-buttons{flex-wrap:wrap;gap:.4rem;display:flex}.form-btn{text-align:left;white-space:normal;line-height:1.25}@media (width<=719px){.form-buttons{grid-template-columns:1fr;display:grid}.form-btn{width:100%;min-height:44px}}.doc-list li{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;padding:.5rem 0;display:flex}.doc-list li:last-child{border-bottom:0}.licence-row{max-width:420px;margin-bottom:.2rem}.stamp-grid{grid-template-columns:1fr;gap:.8rem;display:grid}@media (width>=640px){.stamp-grid{grid-template-columns:1fr 1fr}}.stamp-box{border:1px dashed var(--border);border-radius:var(--radius);flex-direction:column;gap:.5rem;padding:.8rem;display:flex}.stamp-preview{background:#fff;border-radius:6px;justify-content:center;align-items:center;height:110px;display:flex}.stamp-preview img{object-fit:contain;max-width:100%;max-height:100px}.jersey-list li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.35rem 0;display:flex}.jersey-list input{text-align:center;width:5rem}.q-wrap{max-width:620px;margin:0 auto;padding:0 16px 2.5rem}.q-head{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;margin-bottom:1rem;padding:1rem 0 .9rem;display:flex}.q-head img{object-fit:contain;width:46px;height:46px}.q-head div{flex-direction:column;line-height:1.25;display:flex}.q-card h1{margin-bottom:.6rem;font-size:1.3rem}.q-card .grid.two{margin-bottom:.4rem}.q-forms{margin:.2rem 0 .8rem;padding-left:1.2rem}.q-forms li{margin:.15rem 0}.q-steps{gap:.25rem;margin:0;padding:0;list-style:none;display:flex;overflow-x:auto}.q-steps li{flex:1;min-width:0}.q-steps button{width:100%;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:.15rem;padding:.2rem 0;font-size:.74rem;display:flex}.q-steps button:disabled{cursor:default}.q-steps span{border:2px solid var(--border);background:var(--surface);border-radius:50%;place-items:center;width:28px;height:28px;font-size:.85rem;font-weight:600;display:grid}.q-steps li.on button{color:var(--text);font-weight:600}.q-steps li.on span{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.q-steps li.done span{border-color:var(--ok);color:var(--ok)}.q-nav{background:linear-gradient(to top, var(--bg) 70%, transparent);justify-content:flex-end;gap:.6rem;padding:.7rem 0;display:flex;position:sticky;bottom:0}.q-nav .btn{min-width:120px}.q-nav .btn-primary{flex:1;max-width:260px}.q-check{margin:.4rem 0 .6rem}.q-notice{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;margin-bottom:.9rem;padding:.55rem .8rem}.q-notice summary{cursor:pointer;font-weight:600}.q-notice p{margin:.3rem 0;font-size:.9rem}.q-allbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.3rem;display:flex}.q-group h3{margin-top:1.1rem}.q-consent{border:1px solid var(--border);cursor:pointer;border-radius:8px;align-items:flex-start;gap:.7rem;margin:.45rem 0;padding:.65rem .7rem;font-size:.92rem;display:flex}.q-consent input{flex:none;width:22px;height:22px;min-height:auto;margin-top:.1rem}.q-consent:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.q-consent.missing{border-color:var(--danger);background:var(--danger-soft)}.q-summary{grid-template-columns:max-content 1fr;gap:.25rem .8rem;margin:0 0 .8rem;font-size:.9rem;display:grid}.q-summary dt{color:var(--muted)}.q-summary dd{margin:0}.q-done{text-align:center}.q-done-icon{background:var(--ok-soft);width:56px;height:56px;color:var(--ok);border-radius:50%;place-items:center;margin:.3rem auto .6rem;font-size:1.8rem;font-weight:700;display:grid}.sig{margin:.8rem 0}.sig-head{justify-content:space-between;align-items:center;margin-bottom:.3rem;display:flex}.sig-box{border:1px dashed var(--muted);background:#fff;border-radius:8px;height:170px;position:relative}.sig-canvas{touch-action:none;cursor:crosshair;border-radius:8px;width:100%;height:100%;display:block}.sig-hint{color:#8a93a3;pointer-events:none;place-items:center;font-size:.95rem;display:grid;position:absolute;inset:0}.sig-line{pointer-events:none;border-bottom:1px solid #c9ced8;position:absolute;bottom:28%;left:8%;right:8%}.photo-drop{text-align:center;border:2px dashed var(--border);cursor:pointer;color:var(--accent-text);border-radius:10px;flex-direction:column;align-items:center;gap:.35rem;padding:1.6rem 1rem;display:flex}.photo-drop:hover{border-color:var(--accent)}.crop-frame{aspect-ratio:35/45;touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;background:#ddd;border-radius:6px;width:min(240px,70vw);margin:.6rem auto;position:relative;overflow:hidden}.crop-frame img{pointer-events:none;max-width:none;position:absolute;top:50%;left:50%}.crop-guide{pointer-events:none;border:2px dashed #ffffffd9;border-radius:50%;height:56%;position:absolute;top:12%;left:22%;right:22%;box-shadow:0 0 0 1px #00000040}.crop-zoom{flex-direction:column;gap:.2rem;max-width:280px;margin:0 auto .6rem;display:flex}.crop-zoom input{width:100%}.photo-actions{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.photo-done{flex-direction:column;align-items:center;gap:.5rem;display:flex}.photo-preview{aspect-ratio:35/45;object-fit:cover;border:1px solid var(--border);border-radius:6px;width:140px}.req-row{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;gap:.4rem .8rem;padding:.55rem 0;display:flex}.req-row:first-of-type{border-top:0}.req-actions{flex-wrap:wrap;align-self:flex-start;align-items:flex-start;gap:.3rem;display:flex}.link-box{gap:.4rem;display:flex}.link-box input{flex:1;min-width:0;font-size:.85rem}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.4rem;display:flex}.card-head h2{margin:0}.badge-ok{background:var(--ok-soft);color:var(--ok)}.q-consent-box{border:1px solid var(--border);border-radius:10px;margin:.8rem 0;padding:.3rem .6rem .6rem}.q-consent-box.missing{border-color:var(--danger);background:var(--danger-soft)}.q-consent.q-big{border:0;margin:0;padding:.55rem .2rem;font-size:.95rem;background:0 0!important}.q-links{flex-direction:column;gap:.4rem;display:flex}.q-links .btn{align-self:flex-start}.q-consent-box .q-notice{margin:.2rem 0 0}.q-notice p{font-size:.88rem}.sub-media{flex-wrap:wrap;align-items:flex-end;gap:1rem;margin:.4rem 0 .6rem;display:flex}.sub-media figure{text-align:center;margin:0}.sub-media figcaption{color:var(--muted);font-size:.8rem}.sub-photo{aspect-ratio:35/45;object-fit:cover;border:1px solid var(--border);border-radius:6px;width:140px}.sub-sig{border:1px solid var(--border);background:#fff;border-radius:6px;max-width:220px;max-height:80px;padding:4px}.member-photo{align-items:flex-start;gap:1rem;display:flex}.member-photo img{aspect-ratio:35/45;object-fit:cover;border:1px solid var(--border);border-radius:6px;flex:none;width:105px}.member-photo h2{margin-bottom:.3rem}.photo-choice{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.photo-choice .photo-drop{padding:1.1rem .5rem}.q-prepare{margin:.2rem 0 .8rem;padding-left:1.2rem}.q-prepare li{margin:.35rem 0}.doc-pages{flex-wrap:wrap;gap:.6rem;margin-top:.7rem;display:flex}.doc-page{width:calc(50% - .3rem);max-width:180px;margin:0}.doc-page img,.doc-pdf{aspect-ratio:3/4;object-fit:cover;border:1px solid var(--border);background:#fff;border-radius:6px;width:100%}.doc-pdf{color:var(--muted);place-items:center;font-weight:700;display:grid}.doc-page figcaption{color:var(--muted);margin-top:.2rem;font-size:.8rem}.doc-list{flex-direction:column;gap:.5rem;margin:.4rem 0;display:flex}.doc-item{border:1px solid var(--border);border-radius:8px;flex-wrap:wrap;justify-content:space-between;gap:.4rem .8rem;padding:.5rem .6rem;display:flex}.doc-item.deleted{color:var(--muted);background:var(--surface-2)}.med-filters{flex-wrap:wrap;gap:.5rem;margin-bottom:.6rem;display:flex}.med-filters>*{flex:12rem}.med-chips{margin-bottom:.6rem}.med-bulk{border-top:1px solid var(--border);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.3rem;padding:.5rem 0;display:flex}.med-list{flex-direction:column;display:flex}.med-row{border-bottom:1px solid var(--border);align-items:center;gap:.7rem;padding:.6rem .3rem;display:flex}.med-row:last-child{border-bottom:0}.med-row.on{background:var(--accent-soft)}.med-row>input[type=checkbox]{flex:none;width:20px;height:20px;min-height:auto}.med-main{flex:1;min-width:0}.med-main .small{margin-top:.2rem}.med-hist{margin:.5rem 0 0;padding:0;list-style:none}.med-hist li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:.5rem;padding:.35rem 0;font-size:.9rem;display:flex}@media (width<=640px){.med-bulk .btn{width:100%}}.zs-facts{margin:.2rem 0 .8rem;padding-left:1.1rem}.zs-facts li{margin:.2rem 0}.zs-score td,.zs-hours td,.zs-hours th{vertical-align:top}.zs-score .num,.zs-hours .num{text-align:right;white-space:nowrap}.zs-score tr.total td{border-top:2px solid var(--border)}.zs-result{grid-template-columns:1fr 1.4fr 1fr 1.4fr .9fr auto;align-items:center;gap:.4rem;margin-bottom:.4rem;display:grid}@media (width<=760px){.zs-result{border-bottom:1px solid var(--border);grid-template-columns:1fr 1fr;padding:.5rem 0}.zs-result>:nth-child(2){grid-column:1/-1}}
