:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--primary:#b11226;--primary-hover:color-mix(in srgb, var(--primary) 85%, black);--primary-light:color-mix(in srgb, var(--primary) 9%, white);--primary-text:var(--primary);--bg-main:#f0f2f5;--bg-card:#fff;--bg-soft:#f2f4f7;--bg-input:#fff;--text:#1a1d23;--text-2:#4a515e;--muted:#6b7280;--border:#d9dce2;--border-soft:#e8eaee;--success:#15803d;--success-light:#e8f5ec;--danger:#c42b2b;--danger-light:#fcebeb;--warning:#a35c06;--warning-light:#fdf3e2;--info:#1f6fa8;--info-light:#e8f1f8;--gold-light:#fdf6dc;--t-red:#c0283b;--t-red-bg:#fdecee;--t-blue:#17699b;--t-blue-bg:#e6f3fa;--t-green:#157347;--t-green-bg:#e7f6ec;--t-orange:#b45309;--t-orange-bg:#fff1e4;--t-purple:#6f42c1;--t-purple-bg:#f1ebfb;--t-teal:#0b726c;--t-teal-bg:#e2f6f4;--t-gold:#8a6a00;--t-gold-bg:#fdf6dc;--shadow:0 1px 2px #1018280a, 0 2px 8px #1018280a;--shadow-lg:0 18px 48px #1018282e;--radius:14px;--topbar-h:60px}html.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--primary-hover:color-mix(in srgb, var(--primary) 80%, white);--primary-light:color-mix(in srgb, var(--primary) 20%, #17191e);--primary-text:color-mix(in srgb, var(--primary) 50%, white);--bg-main:#0e1013;--bg-card:#17191e;--bg-soft:#1e2127;--bg-input:#1e2127;--text:#e6e8eb;--text-2:#a3a9b4;--muted:#767d89;--border:#2a2e35;--border-soft:#22252b;--success:#4ade80;--success-light:#4ade801f;--danger:#f87171;--danger-light:#f871711f;--warning:#fbbf24;--warning-light:#fbbf241f;--info:#60a5fa;--info-light:#60a5fa1f;--gold-light:#d4a10624;--t-red:#f47b8a;--t-red-bg:#f47b8a24;--t-blue:#6cb8ea;--t-blue-bg:#6cb8ea24;--t-green:#4ade80;--t-green-bg:#4ade8021;--t-orange:#fb9d4c;--t-orange-bg:#fb9d4c24;--t-purple:#b49af0;--t-purple-bg:#b49af026;--t-teal:#4fd1c5;--t-teal-bg:#4fd1c521;--t-gold:#f5c84c;--t-gold-bg:#f5c84c24;--shadow:0 1px 2px #0000004d;--shadow-lg:0 18px 48px #0009}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}html,body{overflow-x:clip}html{background:var(--bg-main)}body{background:var(--bg-main);color:var(--text);-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,Segoe UI,system-ui,sans-serif;font-size:14px;line-height:1.5}a{color:var(--primary-text);text-decoration:none}h1{letter-spacing:-.01em;font-size:22px;font-weight:650;line-height:1.25}h2{font-size:16px;font-weight:650}h3{font-size:14px;font-weight:650}svg{vertical-align:middle;flex-shrink:0}.topbar{height:var(--topbar-h);background:var(--primary);color:#fff;z-index:50;align-items:center;gap:12px;padding:0 16px;display:flex;position:sticky;top:0;box-shadow:0 2px 8px #0000001f}.topbar img{object-fit:contain;background:#fff;border-radius:10px;width:38px;height:38px;padding:4px}.topbar .brand{white-space:nowrap;text-overflow:ellipsis;color:#fff;flex:1;min-width:0;font-size:15.5px;font-weight:700;overflow:hidden}.topbar .top-btn{color:#fff;cursor:pointer;background:#ffffff24;border:1px solid #ffffff2e;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.topbar .top-btn:hover{background:#ffffff3d}.topbar .menu-btn{display:none}.topbar .who{color:#fff;align-items:center;gap:12px;font-size:13px;line-height:1.2;display:flex}.topbar .who small{color:#ffffffbf;font-size:11px;display:block}.topbar .avatar{color:#fff!important;background:#fff3!important}.avatar{background:var(--primary-light);width:34px;height:34px;color:var(--primary-text);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:650;display:inline-flex}.app-body{display:flex}.sidebar{background:var(--bg-card);border-right:1px solid var(--border);width:232px;top:var(--topbar-h);height:calc(100vh - var(--topbar-h));flex-shrink:0;padding:12px 12px 20px;position:sticky;overflow-y:auto}.sidebar .section{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:16px 12px 8px;font-size:11px;font-weight:600}.nav-item{color:var(--text-2);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;width:100%;padding:8px 12px;font-family:inherit;font-size:14px;display:flex}.nav-item:hover{background:var(--bg-soft);color:var(--text)}.nav-item.active{background:var(--primary-light);color:var(--primary-text);box-shadow:inset 3px 0 0 var(--primary);font-weight:600}.nav-item.logout{color:var(--danger)}.nav-item .chev{margin-left:auto;transition:transform .15s}.nav-item .chev.open{transform:rotate(180deg)}.nav-item.active-group{color:var(--text);font-weight:600}.nav-group{border-left:1px solid var(--border);margin:2px 0 4px 20px;padding-left:8px}.nav-item.sub{padding:8px 12px;font-size:13.5px}.topbar .logout-btn{width:auto;font:inherit;gap:8px;padding:0 12px;font-size:13px;font-weight:600}@media (width<=600px){.topbar .logout-btn span{display:none}.topbar .logout-btn{width:36px;padding:0}.topbar{gap:8px}.topbar img{border-radius:8px;width:32px;height:32px;padding:3px}.topbar .brand{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13.5px;line-height:1.2;display:-webkit-box}}.nav-item .count{background:var(--primary);color:#fff;border-radius:999px;margin-left:auto;padding:0 8px;font-size:11px;font-weight:600;line-height:18px}.readings-day{color:var(--muted);margin-top:2px;font-size:13px;font-weight:500;display:block}.readings-list{gap:8px;display:grid}.reading{border:1px solid var(--border);color:var(--text);border-radius:8px;grid-template-columns:112px 1fr;gap:2px 12px;padding:10px 12px;display:grid}.reading:hover{background:var(--bg-soft)}.reading.lector{background:var(--t-purple-bg)}.reading-type{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);grid-row:span 2;font-size:12px;font-weight:700}.reading.lector .reading-type{color:var(--t-purple)}.reading-type small{text-transform:none;letter-spacing:0;opacity:.8;font-weight:600;display:block}.reading-sigla{font-size:17px}.reading-title{color:var(--muted);font-size:14px;font-style:italic}@media (width<=520px){.reading{grid-template-columns:1fr}.reading-type{grid-row:auto}}.readings .card-title{flex-wrap:nowrap;align-items:flex-start}.readings .seg{grid-auto-columns:1fr;grid-auto-flow:column;width:100%;display:grid}.readings .seg button{line-height:1.3}.readings .seg button:first-letter{text-transform:uppercase}@media (width<=600px){.readings .seg{grid-auto-flow:row}.readings .seg button{border-right:0;border-bottom:1px solid var(--border);text-align:left}.readings .seg button:last-child{border-bottom:0}}.dash-cards>.card{margin-bottom:0}.link-edit{grid-template-columns:20px minmax(140px,1fr) minmax(180px,2fr) auto;align-items:center;gap:8px;margin-bottom:8px;display:grid}@media (width<=600px){.link-edit{grid-template-columns:20px 1fr auto}.link-edit input[type=url]{grid-area:2/2/auto/4}}.role-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.role-row input{flex:180px}.role-row select{flex:0 200px}.parish-links{flex-wrap:wrap;gap:8px;display:flex}.rotation-list{align-content:start;gap:6px;display:grid}.rotation-list>.badge{justify-self:start}.rotation-week{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.rotation-edit{border:1px solid var(--border);border-radius:10px;margin-bottom:8px;padding:10px 12px}.rotation-edit-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.rotation-edit-head .who{flex:1;min-width:140px}.rotation-edit .people-picker,.rotation-edit .pick-list{margin-top:8px}.nav-item.today{color:var(--danger);background:color-mix(in srgb, var(--danger) 12%, transparent);font-weight:600}.nav-item.today .count,.dot-count.today{background:var(--danger)}.bottombar a.today{color:var(--danger)}.main{flex:1;width:100%;min-width:0;padding:32px}@media (width<=1200px){.main{padding:24px}}.backdrop,.bottombar{display:none}@media (width<=900px){.topbar{gap:12px;padding:0 12px}.topbar .menu-btn{display:inline-flex}.topbar .who{display:none}.sidebar{left:0;top:var(--topbar-h);z-index:60;height:auto;box-shadow:var(--shadow-lg);width:272px;padding-bottom:calc(20px + env(safe-area-inset-bottom));transition:transform .22s;position:fixed;bottom:0;transform:translate(-105%)}.sidebar.open{transform:none}.backdrop.open{inset:var(--topbar-h) 0 0;z-index:55;background:#00000059;display:block;position:fixed}.main{padding:16px 16px calc(88px + env(safe-area-inset-bottom))}.bottombar{z-index:50;background:var(--bg-card);border-top:1px solid var(--border);padding:2px 4px env(safe-area-inset-bottom);display:flex;position:fixed;bottom:0;left:0;right:0}.bottombar a,.bottombar button{height:58px;color:var(--muted);background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;font-family:inherit;font-size:11px;font-weight:500;display:flex;position:relative}.bottombar .active{color:var(--primary-text);font-weight:600}.bottombar .dot-count{background:var(--primary);color:#fff;border-radius:999px;padding:0 4px;font-size:10px;line-height:16px;position:absolute;top:5px;left:calc(50% + 6px)}h1{font-size:19px}}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}.page-head h1{align-items:center;gap:12px;display:flex}.page-head h1 svg{color:var(--primary-text)}.subtitle{color:var(--text-2);margin-top:4px;font-size:13px}.card{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow);margin-bottom:16px;padding:24px}.ico{background:var(--primary-light);width:30px;height:30px;color:var(--primary-text);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.ico svg{width:16px;height:16px}.card-title{color:var(--text);flex-wrap:nowrap;align-items:center;gap:12px;margin-bottom:16px;font-size:15px;font-weight:650;display:flex}.card-title>svg{color:var(--primary-text)}.page-head h1 .ico{border-radius:10px;width:38px;height:38px}.page-head h1 .ico svg{width:20px;height:20px;color:inherit}.card-title .hint{flex-shrink:1;min-width:0}@media (width<=600px){.card-title .hint{display:none}}.card-title .right{margin-left:auto;font-size:13px;font-weight:500}.grid{gap:16px;display:grid}.grid>*{min-width:0}.grid.top{align-items:start}.grid-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}@media (width>=901px){.grid-4.even{grid-template-columns:repeat(4,1fr)}}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.spacer{flex:1}.muted{color:var(--text-2)}.small{font-size:13px}.center{text-align:center}.mt{margin-top:16px}.mb{margin-bottom:16px}.empty{text-align:center;color:var(--muted);padding:24px 12px;font-size:13px}.help{background:var(--bg-card);border:1px solid var(--border);color:var(--text-2);border-radius:10px;align-items:flex-start;gap:12px;margin-bottom:16px;padding:12px 16px;font-size:13px;display:flex}.help svg{color:var(--primary-text);margin-top:1px}.help b{color:var(--text);font-weight:600}.btn{height:40px;font:inherit;cursor:pointer;background:var(--primary);color:#fff;white-space:nowrap;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:13.5px;font-weight:600;transition:background .15s;display:inline-flex}.btn:hover{background:var(--primary-hover)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.secondary{background:var(--bg-card);color:var(--text);border-color:var(--border)}.btn.secondary:hover{background:var(--bg-soft)}.btn.success{background:var(--success)}.btn.danger{background:var(--danger)}.btn.outline-danger{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 45%, transparent);background:0 0}.btn.sm{border-radius:7px;height:32px;padding:0 12px;font-size:12.5px}.btn.block{width:100%}label.field,div.field{color:var(--text-2);text-transform:uppercase;letter-spacing:.03em;font-size:12px;font-weight:600;display:block}label.field>:not(.hint,b),div.field>:not(.hint,b){margin-top:8px;display:flex}label.field>:is(input,select,textarea),div.field>:is(input,select,textarea){text-transform:none;letter-spacing:0;font-weight:400}.field .hint{margin-left:4px}.input-group{gap:8px;display:flex}.input-group input{flex:1;min-width:0}.input-group input.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.input-group .btn{flex-shrink:0;height:auto}.input-suffix{border:1px solid var(--border);background:var(--bg-soft);color:var(--text-2);text-transform:none;letter-spacing:0;white-space:nowrap;border-radius:8px;align-items:center;padding:0 12px;font-size:13px;font-weight:500;display:flex}.section-label{color:var(--text);border-top:1px solid var(--border-soft);margin:4px 0 12px;padding-top:12px;font-size:13px;font-weight:650}.section-label:first-child,.card-title+.section-label{border-top:0;padding-top:0}.add-box{border:1px dashed var(--border);background:var(--bg-soft);border-radius:12px;margin-top:12px;padding:16px}input,select,textarea{font:inherit;border:1px solid var(--border);background:var(--bg-input);color:var(--text);border-radius:8px;width:100%;min-height:44px;padding:8px 12px;font-size:16px;transition:border-color .15s,box-shadow .15s}@media (width>=901px){input,select,textarea{min-height:40px;font-size:14px}.ss-trigger{min-height:40px}}input:focus,select:focus,textarea:focus{border-color:color-mix(in srgb, var(--primary) 65%, var(--bg-card));box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 12%, transparent);outline:none}input[type=checkbox],input[type=radio]{width:17px;height:17px;min-height:0;accent-color:var(--primary);box-shadow:none;flex-shrink:0}input[type=color]{height:44px;padding:4px}@media (width>=901px){input[type=color]{height:40px}}input:is([type=date],[type=time],[type=datetime-local],[type=month]){appearance:none;min-width:0;max-width:100%}input::-webkit-date-and-time-value{text-align:left;min-height:1.5em}input::-webkit-datetime-edit{padding:0}.check{cursor:pointer;align-items:center;gap:12px;min-height:32px;font-size:14px;display:flex}.form-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:16px;display:grid}.form-grid>*,.field>input,.field>select,.field>.ss{min-width:0}.error{color:var(--danger);margin-top:4px;font-size:13px}.hint{color:var(--muted);text-transform:none;letter-spacing:0;font-size:12px;font-weight:400}.alert{cursor:pointer;border:1px solid #0000;border-radius:10px;margin-bottom:16px;padding:12px 16px;font-size:13.5px;font-weight:500}.alert.success{background:var(--success-light);color:var(--success);border-color:color-mix(in srgb, var(--success) 25%, transparent)}.alert.error{background:var(--danger-light);color:var(--danger);border-color:color-mix(in srgb, var(--danger) 25%, transparent)}.alert.warning{background:var(--warning-light);color:var(--warning);border-color:color-mix(in srgb, var(--warning) 25%, transparent)}.alert.info{background:var(--info-light);color:var(--info);border-color:color-mix(in srgb, var(--info) 25%, transparent);cursor:default}.badge{background:var(--bg-soft);color:var(--text-2);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:11.5px;font-weight:600;display:inline-flex}.badge.success{background:var(--success-light);color:var(--success)}.badge.danger{background:var(--danger-light);color:var(--danger)}.badge.warning{background:var(--warning-light);color:var(--warning)}.badge.info,.badge.primary{background:var(--info-light);color:var(--info)}.badge.secondary{background:var(--bg-soft);color:var(--text-2)}.badge.solid{background:var(--primary-light);color:var(--primary-text)}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13.5px}th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border-bottom:1px solid var(--border);white-space:nowrap;padding:8px 12px;font-size:11.5px;font-weight:600}td{border-bottom:1px solid var(--border-soft);vertical-align:middle;padding:12px}tbody tr:last-child td{border-bottom:0}tr.highlight td{background:var(--primary-light)}.pos{color:var(--success);font-weight:600}.neg{color:var(--danger);font-weight:600}.actions{flex-wrap:nowrap;justify-content:flex-end;gap:8px;display:flex}td.actions{text-align:right;white-space:nowrap;display:table-cell}td.actions>*+*{margin-left:8px}tr.details-row>td{padding:0 0 16px}.ranking-details{border:1px solid var(--border);background:var(--bg-card);box-shadow:var(--shadow);border-radius:12px;padding:16px 20px}.ranking-details-head{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;padding-bottom:12px;display:flex}.ranking-details-head h3{color:var(--primary-text);margin-right:4px;font-size:18px}.ranking-details-body{grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:24px;display:grid}.ranking-details-stats{text-align:center;border-right:1px solid var(--border);align-self:start;padding-right:24px}.ranking-details-stats .big{margin:4px 0;font-size:48px;font-weight:800;line-height:1.1}.ranking-details h4{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:8px;font-size:11.5px;font-weight:600}.ranking-history{border:1px solid var(--border);border-radius:8px;max-height:400px;overflow:auto}.ranking-history table{border-collapse:collapse;width:100%;font-size:13px}.ranking-history th{background:var(--bg-soft);border-bottom:1px solid var(--border);padding:8px;position:sticky;top:0}.ranking-history td{border-bottom:1px solid var(--border-soft);vertical-align:middle;padding:6px 8px}.ranking-history td+td,.ranking-history th+th{border-left:1px solid var(--border-soft)}.ranking-history tbody tr:last-child td{border-bottom:0}.ranking-history .pts{text-align:right;white-space:nowrap;font-weight:700}.ranking-history .when{white-space:nowrap}@media (width<=700px){table.cards>tbody>tr.details-row{border:0;margin-top:-4px;padding:0}table.cards>tbody>tr>td.details-cell{text-align:left;padding:0;display:block}.ranking-details{padding:12px}.ranking-details-body{grid-template-columns:minmax(0,1fr);gap:16px}.ranking-details{min-width:0;overflow:hidden}.ranking-details-stats{border-right:0;border-bottom:1px solid var(--border);padding-bottom:12px;padding-right:0}.ranking-history table{min-width:520px}table.cards td.actions>*+*{margin-left:0}table.cards>thead{display:none}table.cards,table.cards>tbody,table.cards>tbody>tr,table.cards>tbody>tr>td{width:100%;display:block}table.cards>tbody>tr{border:1px solid var(--border);border-radius:12px;margin-bottom:12px;padding:12px}table.cards>tbody>tr>td{text-align:right;border:0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;padding:4px 0;display:flex}table.cards>tbody>tr>td[data-label]:before{content:attr(data-label);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);text-align:left;font-size:11px;font-weight:600}table.cards td.main-cell{text-align:left;flex-wrap:wrap;justify-content:flex-start;font-size:15px}table.cards td.actions{justify-content:stretch;padding-top:8px}table.cards td.actions>*{flex:1}table.cards td.empty{justify-content:center}}.list-row{border-bottom:1px solid var(--border-soft);align-items:center;gap:16px;padding:12px 0;display:flex}.list-row:last-child{border-bottom:0}.date-tile{text-align:center;border:1px solid var(--border);border-radius:10px;flex-shrink:0;width:50px;padding:4px 0;line-height:1.15}.date-tile b{font-size:18px;font-weight:700;display:block}.date-tile span{text-transform:uppercase;color:var(--muted);font-size:10.5px;font-weight:600}.list-row .grow{overflow-wrap:anywhere;flex:1;min-width:0}.badges{flex-shrink:0;justify-content:flex-end;gap:4px}@media (width<=600px){.badges{flex-direction:column;align-items:flex-end}}.clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.stat{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);color:var(--text);flex-direction:column;gap:2px;padding:16px;display:flex;position:relative}a.stat:hover{border-color:color-mix(in srgb, var(--primary) 40%, var(--border))}.stat .icon{background:var(--primary-light);width:30px;height:30px;color:var(--primary-text);border-radius:8px;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:14px;right:14px}.stat .icon svg{width:16px;height:16px}.stat .label{color:var(--text-2);order:-1;padding-right:36px;font-size:12px;font-weight:500}.stat .value{font-size:24px;font-weight:700;line-height:1.2}.stat{box-shadow:var(--shadow)}.red .icon,.ico.red,.badge.red{background:var(--t-red-bg);color:var(--t-red)}.blue .icon,.ico.blue,.badge.blue{background:var(--t-blue-bg);color:var(--t-blue)}.green .icon,.ico.green,.badge.green{background:var(--t-green-bg);color:var(--t-green)}.orange .icon,.ico.orange,.badge.orange{background:var(--t-orange-bg);color:var(--t-orange)}.purple .icon,.ico.purple,.badge.purple{background:var(--t-purple-bg);color:var(--t-purple)}.teal .icon,.ico.teal,.badge.teal{background:var(--t-teal-bg);color:var(--t-teal)}.gold .icon,.ico.gold,.badge.gold{background:var(--t-gold-bg);color:var(--t-gold)}.stat.red .value{color:var(--t-red)}.stat.blue .value{color:var(--t-blue)}.stat.green .value{color:var(--t-green)}.stat.orange .value{color:var(--t-orange)}.stat.purple .value{color:var(--t-purple)}.stat.teal .value{color:var(--t-teal)}.badge.role-aspirant{background:var(--t-teal-bg);color:var(--t-teal)}.badge.role-ministrant{background:var(--t-blue-bg);color:var(--t-blue)}.badge.role-lektor{background:var(--t-green-bg);color:var(--t-green)}.badge.role-ceremoniarz{background:var(--t-orange-bg);color:var(--t-orange)}.badge.role-ksiadz{background:var(--t-purple-bg);color:var(--t-purple)}.badge[class*=role-x]{background:var(--t-red-bg);color:var(--t-red)}.stat.alert-on{border-color:color-mix(in srgb, var(--warning) 50%, var(--border))}.stat.alert-on .icon{background:var(--warning-light);color:var(--warning)}.hero{background:var(--primary);color:#fff;border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:16px;padding:20px 24px;display:flex}.hero h1{font-size:22px}.hero .tag{text-transform:uppercase;letter-spacing:.08em;opacity:.8;font-size:10.5px;font-weight:600}.hero .big{text-align:right;font-size:30px;font-weight:700;line-height:1}@media (width<=600px){.hero .big{text-align:left}.grid-4{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.card-title{flex-wrap:wrap}.stat .value{font-size:20px}.stat .icon{top:auto;bottom:14px}.stat .label{padding-right:0}.grid-4>:last-child:nth-child(odd){grid-column:1/-1}.card{padding:16px}}.tiles{grid-template-columns:repeat(auto-fill,minmax(min(100%,210px),1fr));gap:12px;display:grid}.tile{border:1px solid var(--border);color:var(--text);border-radius:10px;align-items:center;gap:12px;padding:12px;font-size:13.5px;font-weight:600;display:flex}.tile:hover{background:var(--bg-soft)}.tile>svg{color:var(--primary-text)}.tile small{color:var(--muted);font-size:12px;font-weight:400;display:block}@media (width<=600px){.tiles{grid-template-columns:1fr 1fr;gap:8px}.tile{overflow-wrap:anywhere;gap:8px;min-width:0;padding:8px}.tile small{display:none}}.cal-head,.cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.cal-head div{text-align:center;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding-bottom:8px;font-size:11.5px;font-weight:600}.cal-head div:last-child{color:var(--danger)}.day{background:var(--bg-card);cursor:pointer;border:1px solid var(--border);text-align:left;min-height:84px;font:inherit;color:inherit;border-radius:10px;flex-direction:column;padding:8px;transition:border-color .12s,background .12s;display:flex;overflow:hidden}.day:hover{border-color:color-mix(in srgb, var(--primary) 45%, var(--border))}.day.blank{cursor:default;background:0 0;border:0}.day.duty{background:var(--info-light)}.day.mandatory{background:var(--danger-light)}.day.present{background:var(--success-light);border-color:color-mix(in srgb, var(--success) 45%, transparent)}.day.excused{background:var(--warning-light)}.day.today{border:2px solid var(--primary)}.day .num{font-size:14px;font-weight:650}.day.today .num{color:var(--primary-text)}.day .dots{flex-wrap:wrap;gap:4px;margin-top:auto;display:flex}.dot{background:var(--info);border-radius:50%;width:8px;height:8px;display:inline-block}.dot.red{background:var(--danger)}.dot.green{background:var(--success)}.event-tag{color:#fff;white-space:nowrap;text-overflow:ellipsis;border-radius:4px;margin-top:4px;padding:1px 4px;font-size:11px;overflow:hidden}.legend{color:var(--text-2);flex-wrap:wrap;gap:8px 16px;margin-top:12px;font-size:12px;display:flex}.legend span{align-items:center;gap:8px;display:inline-flex}@media (width<=700px){.cal-head,.cal-grid{gap:4px}.cal-head div{font-size:10px}.day{border-radius:8px;align-items:center;min-height:52px;padding:4px}.day .num{font-size:13px}.day .dots{justify-content:center}.dot{width:6px;height:6px}.event-tag{width:100%;height:4px;margin-top:4px;padding:0;font-size:0}.card.cal-card{padding:12px}}.duty-box{border:1px solid var(--border);background:var(--bg-card);border-radius:12px;margin-bottom:12px;padding:16px}.duty-box.ok{border-color:color-mix(in srgb, var(--success) 45%, transparent);background:var(--success-light)}.duty-box.warn{border-color:color-mix(in srgb, var(--warning) 45%, transparent);background:var(--warning-light)}.duty-box.must{border-color:color-mix(in srgb, var(--danger) 35%, transparent);background:var(--danger-light)}.duty-time{font-size:20px;font-weight:700}.switch{flex-shrink:0;width:46px;height:26px;position:relative}.switch input{opacity:0;width:0;height:0;position:absolute}.switch span{background:var(--border);cursor:pointer;border-radius:26px;transition:all .2s;position:absolute;inset:0}.switch span:before{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:all .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #00000040}.switch input:checked+span{background:var(--success)}.switch input:checked+span:before{transform:translate(20px)}.switch input:disabled+span{opacity:.45;cursor:not-allowed}.switch-row{border-top:1px solid var(--border);align-items:center;gap:12px;margin-top:12px;padding-top:12px;display:flex}.modal-bg{z-index:100;background:#0a0c1073;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{background:var(--bg-card);width:100%;max-width:560px;max-height:92vh;box-shadow:var(--shadow-lg);border:1px solid var(--border);border-radius:14px;flex-direction:column;animation:.14s ease-out pop;display:flex}.modal.wide{max-width:1000px}.modal.large{max-width:min(1280px,100%);height:90dvh}.modal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:16px 24px;display:flex}.modal-head h2{align-items:center;gap:8px;font-size:16px;display:flex}.modal-body{flex:1;padding:24px;overflow-y:auto}.modal-foot{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:16px 24px;display:flex}body:has(.modal-bg){overflow:hidden}@keyframes pop{0%{opacity:0;transform:scale(.98)}}@keyframes slide{0%{opacity:.5;transform:translateY(40px)}}@media (width<=700px){.modal-bg{align-items:flex-end;padding:0}.modal,.modal.wide{max-width:none;max-height:92dvh;padding-bottom:env(safe-area-inset-bottom);border:0;border-radius:16px 16px 0 0;animation:.2s ease-out slide}.modal-head{padding-top:20px;position:relative}.modal-head:before{content:"";background:var(--border);border-radius:4px;width:36px;height:4px;position:absolute;top:6px;left:50%;transform:translate(-50%)}.modal-foot>.btn{flex:1}.modal-head,.modal-body,.modal-foot{padding-left:16px;padding-right:16px}.modal-body{overscroll-behavior:contain}.seg button{padding:10px 12px}}.icon-btn{cursor:pointer;color:var(--text-2);background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;min-width:34px;min-height:34px;display:inline-flex}.icon-btn:hover{background:var(--bg-soft);color:var(--text)}.pick-list{border:1px solid var(--border);border-radius:10px;max-height:320px;overflow-y:auto}.pick-list label{border-bottom:1px solid var(--border-soft);cursor:pointer;align-items:center;gap:12px;padding:8px 12px;font-size:14px;display:flex}.pick-list label:last-child{border-bottom:0}.pick-list label:hover{background:var(--bg-soft)}.pick-list label:has(input:checked){background:var(--primary-light)}.chip{background:var(--primary-light);color:var(--primary-text);border-radius:6px;align-items:center;gap:4px;margin:2px;padding:2px 8px;font-size:12px;display:inline-flex}.chip button{color:inherit;cursor:pointer;background:0 0;border:0;font-weight:700}.ss{flex:1;min-width:160px;position:relative}.ss-trigger{border:1px solid var(--border);background:var(--bg-input);width:100%;min-height:44px;color:var(--text);font:inherit;cursor:pointer;text-align:left;text-transform:none;letter-spacing:0;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:0 12px;font-size:14px;font-weight:400;display:flex}.ss-trigger span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ss-trigger:focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 12%, transparent);outline:none}.ss-pop{z-index:300;background:var(--bg-card);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:10px;padding:8px;position:fixed}.ss-list{gap:2px;margin-top:4px;display:grid;overflow-y:auto}.ss-list button{color:var(--text);font:inherit;cursor:pointer;text-align:left;text-transform:none;letter-spacing:0;background:0 0;border:0;border-radius:7px;flex-direction:column;align-items:flex-start;padding:8px 12px;font-size:14px;font-weight:400;display:flex}.ss-list button small{color:var(--muted);font-size:12px}.ss-list button:hover{background:var(--bg-soft)}.ss-list button.ss-create{color:var(--primary-text);flex-direction:row;align-items:center;gap:8px;font-weight:600}.ss-list button.ss-create small{margin-left:auto;font-weight:400}.ss-list button.on{background:var(--primary-light);color:var(--primary-text);font-weight:600}.search-input{flex:2;align-items:center;min-width:160px;display:flex;position:relative}.search-input>svg{color:var(--muted);pointer-events:none;position:absolute;left:11px}.search-input input{padding-left:36px;padding-right:36px}.search-input .icon-btn{min-width:30px;min-height:30px;position:absolute;right:4px}.seg{border:1px solid var(--border);background:var(--bg-card);border-radius:8px;display:inline-flex;overflow:hidden}.seg button{font:inherit;color:var(--text-2);cursor:pointer;border:0;border-right:1px solid var(--border);background:0 0;padding:8px 12px;font-size:13px}.seg button:last-child{border-right:0}.seg button.on{background:var(--primary);color:#fff;font-weight:600}.filters{border-bottom:1px solid var(--border-soft);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:16px;display:flex}.filters input[type=date]{width:150px}@media (width<=600px){.filters>.row{flex:100%;min-width:0}.filters>.row>input[type=date]{flex:1;width:auto;min-width:0;padding:8px;font-size:14px}}.empty-state{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:36px 12px;display:flex}.empty-state .ico{margin-bottom:8px}.empty-state .ico svg{width:24px;height:24px}.mascot{text-align:center;color:var(--muted);flex-direction:column;align-items:center;gap:8px;padding:20px 12px;font-size:14px;display:flex}.mascot img{display:block}td .mascot{padding:12px}html.dark img[src^="/mascots/"]{filter:drop-shadow(1.5px 0 #e6ebf2)drop-shadow(-1.5px 0 #e6ebf2)drop-shadow(0 1.5px #e6ebf2)drop-shadow(0 -1.5px #e6ebf2)}@media (width>=900px){.mascot img{width:128px;height:128px}td .mascot img{width:104px;height:104px}.mascot{font-size:15px}}.streak{align-items:center;gap:16px;display:flex}.streak img{flex-shrink:0}.streak b{font-size:17px}.points-pill{text-align:center;border-radius:999px;min-width:54px;padding:4px 12px;font-size:13px;font-weight:700;display:inline-block}.points-pill.plus{background:var(--t-green-bg);color:var(--t-green)}.points-pill.minus{background:var(--t-red-bg);color:var(--t-red)}.quick{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.quick button{border:1px solid var(--border);background:var(--bg-card);font:inherit;cursor:pointer;text-transform:none;letter-spacing:0;border-radius:999px;padding:4px 12px;font-size:12.5px;font-weight:600}.quick button.plus{color:var(--t-green)}.quick button.minus{color:var(--t-red)}.bulk-list{gap:8px;max-height:380px;display:grid;overflow-y:auto}.bulk-row{border:1px solid var(--border);border-radius:10px;align-items:center;gap:12px;padding:8px 12px;display:flex}.bulk-row.on{border-color:color-mix(in srgb, var(--primary) 45%, var(--border));background:var(--primary-light)}.filter-chips button .badge{color:inherit;background:0 0;padding:0}.toolbar{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:12px;display:grid}.tool{border:1px solid var(--border);background:var(--bg-card);color:var(--text);font:inherit;cursor:pointer;text-align:left;box-shadow:var(--shadow);border-radius:12px;align-items:center;gap:12px;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.tool:hover{border-color:color-mix(in srgb, var(--primary) 40%, var(--border))}.tool .ico{border-radius:10px;width:38px;height:38px}.tool .ico svg{width:19px;height:19px}.tool small{color:var(--muted);font-size:12px;font-weight:400;display:block}@media (width<=600px){.toolbar{grid-template-columns:1fr 1fr;gap:8px}.tool{gap:8px;padding:12px;font-size:13px}.tool .ico{width:32px;height:32px}.tool small{display:none}}.day-group{margin-bottom:16px}.day-head{border-bottom:1px solid var(--border-soft);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;padding:8px 0;display:flex}.duty-item{border:1px solid var(--border);background:var(--bg-card);border-radius:10px;align-items:center;gap:12px;margin-bottom:8px;padding:12px;display:flex}.duty-item .time{min-width:52px;font-size:16px;font-weight:700}.duty-item .people-line{color:var(--text-2);overflow-wrap:anywhere;margin-top:4px;font-size:13px}.slot{border:1px solid var(--border);background:var(--bg-soft);border-radius:12px;margin-bottom:12px;padding:12px}.days{gap:4px;display:flex}.days button{border:1px solid var(--border);background:var(--bg-card);width:36px;height:36px;color:var(--text-2);font:inherit;cursor:pointer;text-transform:none;letter-spacing:0;border-radius:8px;font-size:12.5px;font-weight:600}.days button.on{background:var(--primary);border-color:var(--primary);color:#fff}.seg button svg{vertical-align:-2px}.status-seg button{padding:8px 12px;font-size:12.5px}.status-seg button.on.obecny{background:var(--t-green)}.status-seg button.on.nieobecny{background:var(--t-red)}.status-seg button.on.usprawiedliwiony{background:var(--t-orange)}.att-tools{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.att-tools>:first-child{flex:200px}.att-summary{z-index:2;background:var(--bg-soft);color:var(--text-2);border-radius:8px;flex-wrap:wrap;gap:4px 16px;margin:0 0 12px;padding:8px 12px;font-size:13px;display:flex;position:sticky;top:-24px}.att-summary b{color:var(--text);font-size:15px}.att-summary .obecny b{color:var(--t-green)}.att-summary .nieobecny b{color:var(--t-red)}.att-summary .usprawiedliwiony b{color:var(--t-orange)}.att-summary .unset b{color:var(--warning,var(--t-orange))}.att-row{border-bottom:1px solid var(--border-soft);align-items:center;gap:12px;padding:10px 8px;display:flex}.att-row .grow{overflow-wrap:anywhere;flex:1;min-width:0}.att-row .status-seg{flex-shrink:0}@media (width<=600px){.att-row{flex-direction:column;align-items:stretch;gap:8px;padding:12px 4px 12px 8px}.att-row .status-seg{grid-template-columns:repeat(3,1fr);display:grid}.att-row .status-seg button{min-height:44px;padding:12px 4px;font-size:14px}.att-tools .btn{flex:100%}}.edit-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:16px;display:grid}.edit-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;padding:24px;display:flex}.edit-card-foot{justify-content:flex-end;gap:8px;margin-top:auto;padding-top:16px;display:flex}@media (width<=600px){.edit-card{padding:16px}.edit-card-foot>.btn{flex:1}}.edit-card.new{box-shadow:none;border-style:dashed}.edit-card-head{align-items:center;gap:12px;margin-bottom:12px;display:flex}.add-card{min-height:120px;font:inherit;color:var(--text-2);cursor:pointer;justify-content:center;align-items:center;gap:8px;font-weight:600;display:flex}.add-card:hover{color:var(--primary-text);border-color:var(--primary)}.form-grid.compact{grid-template-columns:repeat(auto-fit,minmax(min(100%,130px),1fr));align-items:end;gap:12px}@media (width<=600px){.form-grid.compact{grid-template-columns:1fr 1fr}}.calendar{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.calendar-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.calendar-head h3{font-size:16px;font-weight:650}.calendar-nav{border:1px solid var(--border);background:var(--bg-card);width:32px;height:32px;color:var(--text-2);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;transition:all .15s;display:flex}.calendar-nav:hover{background:var(--primary-light);color:var(--primary-text);border-color:var(--primary)}.calendar-today{color:var(--primary-text);border:1px solid var(--border);font:inherit;cursor:pointer;background:0 0;border-radius:999px;margin:-4px auto 12px;padding:4px 12px;font-size:12px;font-weight:600;display:block}.calendar-today:hover{background:var(--primary-light);border-color:var(--primary)}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.calendar-weekdays{margin-bottom:8px}.calendar-weekdays div{text-align:center;color:var(--muted);font-size:11px;font-weight:600}.calendar-weekdays div:last-child{color:var(--t-red)}.cal-day{aspect-ratio:1;background:var(--bg-main);color:var(--text);font:inherit;cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;padding:0;font-size:13px;font-weight:550;transition:background .15s,transform .15s,box-shadow .15s,filter .15s;display:flex;position:relative}.cal-day:hover:not(.is-empty){background:var(--primary-light);color:var(--primary-text);transform:translateY(-1px)}.cal-day.is-empty{cursor:default;background:0 0}.cal-day.is-filled,.cal-day.is-filled:hover{background:var(--day);color:#fff;box-shadow:0 2px 6px #0000001a}.cal-day.is-filled:hover{filter:brightness(.93)}.cal-day.is-soft,.cal-day.is-soft:hover{background:var(--day-bg);color:var(--day);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--day) 30%, transparent)}.cal-day.is-soft .cal-count{background:color-mix(in srgb, var(--day) 15%, transparent);color:var(--day)}.cal-day.is-today.is-soft:after{background:var(--day)}.cal-day.is-today{font-weight:800}.cal-day.is-service,.cal-day.is-service:hover{background:color-mix(in srgb, var(--svc) 22%, var(--bg-main));color:color-mix(in srgb, var(--svc) 75%, var(--text));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--svc) 45%, transparent)}.cal-day.is-today:not(.is-filled){color:var(--primary-text)}.cal-day.is-today:after{content:"";background:var(--primary);border-radius:2px;width:16px;height:3px;margin-left:-8px;position:absolute;bottom:5px;left:50%}.cal-day.is-today.is-filled:after{background:#fff}.cal-day.is-selected{outline:2px solid var(--text);outline-offset:1px}.cal-num{z-index:1;position:relative}.cal-event{border:1.5px solid #fff;border-radius:6px;min-width:9px;height:9px;font-size:0;position:absolute;top:4px;right:4px;box-shadow:0 1px 2px #00000040}.cal-count{color:#fff;background:#ffffff40;border-radius:6px;padding:0 4px;font-size:9px;font-weight:700;line-height:13px;position:absolute;bottom:3px;right:4px}.calendar-legend{border-top:1px solid var(--border-soft);color:var(--muted);flex-wrap:wrap;gap:8px 16px;margin-top:16px;padding-top:12px;font-size:11.5px;display:flex}.calendar-legend span{align-items:center;gap:4px;display:inline-flex}.calendar-legend i{border-radius:50%;width:8px;height:8px;display:inline-block}.calendar-legend i.ring{border:2px solid var(--muted);background:#fff;width:9px;height:9px}@media (width>=700px){.cal-day{aspect-ratio:4/3;font-size:14px}}.perm-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:8px;display:grid}.perm{border:1px solid var(--border);cursor:pointer;border-radius:10px;align-items:flex-start;gap:12px;padding:12px;display:flex}.perm:has(input:checked){border-color:color-mix(in srgb, var(--primary) 55%, var(--border));background:var(--primary-light)}.perm b{font-size:13.5px;font-weight:600;display:block}.perm small{color:var(--text-2);font-size:12px}.perm.disabled{opacity:.6;cursor:default}.board-top{justify-content:center;margin-bottom:20px;display:flex}.board-top .profile{width:min(100%,420px)}.board-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:20px;display:grid}.profile{--c:var(--t-blue);--cbg:var(--t-blue-bg);background:var(--bg-card);border:1px solid var(--border);text-align:center;box-shadow:var(--shadow);border-radius:18px;flex-direction:column;align-items:center;padding:28px 20px;transition:transform .2s,box-shadow .2s;display:flex}.profile:hover{transform:translateY(-4px);box-shadow:0 10px 24px #1018281a}.profile .p-icon{background:var(--cbg);width:78px;height:78px;color:var(--c);border-radius:50%;justify-content:center;align-items:center;margin-bottom:16px;display:flex}.profile .p-name{font-size:20px;font-weight:750}.profile .p-role{text-transform:uppercase;letter-spacing:.08em;color:var(--c);margin-top:4px;font-size:12px;font-weight:700}.profile.opiekun{--c:var(--t-purple);--cbg:var(--t-purple-bg)}.profile.prezes{--c:var(--t-red);--cbg:var(--t-red-bg)}.podium{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:12px;margin-bottom:16px;display:grid}.podium .place{background:var(--bg-card);border:1px solid var(--border);text-align:center;box-shadow:var(--shadow);border-radius:14px;padding:16px 12px}.podium .place.p1{--c:#d4a106;padding-top:28px}.podium .place.p2{--c:#9aa3ad}.podium .place.p3{--c:#c07a3c}.podium .medal{background:var(--c);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;margin:0 auto 8px;font-weight:800;display:flex}.podium .pname,.podium .small{white-space:nowrap;text-overflow:ellipsis;font-weight:650;overflow:hidden}.podium .small{font-weight:400}@media (width<=600px){.podium{gap:8px}.podium .place{padding:12px 4px;font-size:12px}.podium .pname{white-space:normal;overflow-wrap:anywhere;line-height:1.25}}.card.notice{background:var(--t-orange-bg);border-color:color-mix(in srgb, var(--t-orange) 30%, transparent)}.article.is-important{background:color-mix(in srgb, var(--t-red-bg) 45%, var(--bg-card))}.user-tools{grid-template-columns:1fr 1fr;gap:8px;display:grid}.user-search{position:relative}.user-search svg{color:var(--muted);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.user-search input{padding-left:36px}.user-search{grid-column:1/-1}.user-count{color:var(--muted);margin:12px 0 4px;font-size:12.5px}.user-list{max-height:max(400px,100vh - 380px);margin:0 -8px;padding:0 8px;overflow-y:auto}.user-group{z-index:1;background:var(--bg-card);letter-spacing:.06em;text-transform:uppercase;color:var(--text-2);border-bottom:1px solid var(--border);align-items:baseline;gap:8px;padding:16px 8px 8px;font-size:11.5px;font-weight:650;display:flex;position:sticky;top:0}.user-group span{color:var(--muted);letter-spacing:0;font-weight:500}.user-row{border:0;border-bottom:1px solid var(--border);width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border-radius:0;align-items:center;gap:12px;padding:10px 8px;display:flex}.user-row:hover{background:var(--bg-soft)}.user-row.active{background:var(--primary-light)}.user-row .avatar{background:var(--bg-soft);width:32px;height:32px;color:var(--text-2);font-size:12px}.user-row.active .avatar{background:var(--primary);color:#fff}.user-main{flex:1;gap:2px;min-width:0;display:grid}.user-name{align-items:center;gap:6px;font-size:14.5px;font-weight:600;display:flex}.user-flag{color:var(--muted);flex-shrink:0}.user-flag.admin{color:var(--primary-text)}.user-meta{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.user-seen{color:var(--text-2);text-align:right;white-space:nowrap;flex-shrink:0;font-size:12px}.user-seen.never{color:var(--muted);font-style:italic}@media (width<=900px){.user-list{max-height:none;overflow:visible}}@media (width<=420px){.user-seen{white-space:normal;max-width:84px}}.user-head{border-bottom:1px solid var(--border);align-items:center;gap:12px;margin-bottom:16px;padding-bottom:16px;display:flex}.user-head h2{margin:0;font-size:18px}.avatar.lg{width:44px;height:44px;font-size:15px}.filter-chips{flex-wrap:wrap;gap:8px;display:flex}.filter-chips button{border:1px solid var(--border);background:var(--bg-card);color:var(--text-2);font:inherit;cursor:pointer;border-radius:999px;padding:4px 12px;font-size:12.5px}.filter-chips button.on{background:var(--primary);border-color:var(--primary);color:#fff}.chat{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);height:calc(100vh - var(--topbar-h) - 120px);grid-template-rows:minmax(0,1fr);grid-template-columns:280px 1fr;min-height:320px;display:grid;overflow:hidden}.chat-list{border-right:1px solid var(--border);overflow-y:auto}.chat-list a{border-bottom:1px solid var(--border-soft);color:var(--text);align-items:center;gap:12px;padding:12px 16px;display:flex}.chat-list a.active{background:var(--primary-light)}.chat-list a .last{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.chat-list .unread{background:var(--primary);color:#fff;border-radius:999px;margin-left:auto;padding:0 8px;font-size:11px;font-weight:600;line-height:18px}.chat-main{flex-direction:column;min-width:0;min-height:0;display:flex}.chat-head{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:12px 16px;display:flex}.chat.single{grid-template-columns:1fr}.chat-messages{overscroll-behavior:contain;background:var(--bg-main);flex-direction:column;flex:1;gap:2px;min-height:0;padding:16px;display:flex;overflow-y:auto}.msg{align-self:flex-start;align-items:flex-end;gap:8px;max-width:75%;display:flex}.msg.first{margin-top:8px}.msg-av{flex-shrink:0;width:32px;display:flex}.msg-body{flex-direction:column;align-items:flex-start;min-width:0;display:flex}.msg .bubble{background:var(--bg-card);border:1px solid var(--border);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:18px;padding:8px 14px;line-height:1.4}.msg:not(.first) .bubble{border-top-left-radius:6px}.msg:not(.last) .bubble{border-bottom-left-radius:6px}.msg .meta{color:var(--muted);margin:0 12px 2px;font-size:11.5px}.msg.mine{align-self:flex-end}.msg.mine .msg-body{align-items:flex-end}.msg.mine .bubble{background:var(--primary);color:#fff;border-color:#0000;border-radius:18px}.msg.mine:not(.first) .bubble{border-top-right-radius:6px}.msg.mine:not(.last) .bubble{border-bottom-right-radius:6px}.msg-stamp{color:var(--muted);align-self:center;margin:16px 0 4px;font-size:11.5px;font-weight:600}.chat-av{--c:var(--text-2);--cbg:var(--bg-soft);background:var(--cbg);color:var(--c);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:650;display:inline-flex}.chat-av.board{--c:var(--t-blue);--cbg:var(--t-blue-bg)}.chat-av.opiekun{--c:var(--t-purple);--cbg:var(--t-purple-bg)}.chat-av.prezes{--c:var(--t-red);--cbg:var(--t-red-bg)}.chat-form{border-top:1px solid var(--border);align-items:flex-end;gap:8px;padding:12px;display:flex}.chat-form textarea{resize:none;min-height:42px;max-height:160px;line-height:1.4;overflow-y:auto}.chat-form .btn{flex-shrink:0;height:42px}.msg-image{margin-bottom:4px;display:inline-block}.msg-image img{border:1px solid var(--border);object-fit:cover;border-radius:12px;max-width:min(280px,100%);max-height:320px;display:block}.msg-file{border:1px solid var(--border);background:var(--bg-card);max-width:100%;color:var(--text);text-align:left;border-radius:12px;align-items:center;gap:8px;margin-bottom:4px;padding:8px 12px;font-size:13.5px;font-weight:600;display:inline-flex}.msg-file span{overflow-wrap:anywhere;min-width:0}.chat-attach{color:var(--text-2);align-items:center;gap:8px;padding:8px 12px 0;font-size:13px;display:flex}.chat-attach span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.chat-form .btn.chat-clip{padding:0 12px}@media (width<=800px){.chat{height:calc(100dvh - var(--topbar-h) - 120px - env(safe-area-inset-bottom));grid-template-columns:1fr}.chat.has-active .chat-list,.chat:not(.has-active) .chat-main{display:none}.msg{max-width:88%}}.path{gap:0;display:grid}.stage{grid-template-columns:44px 1fr;gap:16px;display:grid}.stage .rail{flex-direction:column;align-items:center;display:flex}.stage .num{border:2px solid var(--border);background:var(--bg-card);width:36px;height:36px;color:var(--muted);border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:flex}.stage .line{background:var(--border);flex:1;width:2px;margin:4px 0}.stage:last-child .line{display:none}.stage.done .num{background:var(--primary);border-color:var(--primary);color:#fff}.stage.done .line{background:var(--primary)}.stage.current .num{border-color:var(--primary);color:var(--primary-text);box-shadow:0 0 0 4px var(--primary-light)}.stage .card{margin-bottom:16px}.stage.current .card{border-color:color-mix(in srgb, var(--primary) 50%, var(--border))}.stage ul{color:var(--text-2);gap:4px;padding-left:20px;display:grid}.stage h4{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:12px 0 8px;font-size:11.5px;font-weight:600}.auth{background:var(--bg-main);justify-content:center;align-items:center;min-height:100dvh;padding:16px;display:flex}.auth-card.wide{width:520px}.auth-card{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;width:400px;max-width:100%;overflow:hidden}.auth-card .head{text-align:center;padding:28px 24px 8px}.auth-card .head img{object-fit:contain;width:64px;height:64px;margin-bottom:12px}.auth-card .head h2{font-size:20px}.auth-card .head p{color:var(--text-2);margin-top:4px;font-size:13px}.auth-card .body{flex-direction:column;gap:16px;padding:20px 24px 24px;display:flex}.auth-card .foot{text-align:center;color:var(--muted);border-top:1px solid var(--border);padding:12px;font-size:12px}.demo-bar{background:var(--info-light);color:var(--info);border:1px dashed color-mix(in srgb, var(--info) 40%, transparent);border-radius:10px;padding:8px 16px;font-size:13px}.demo-bar.list{gap:12px;margin:0;display:grid}.demo-accounts{grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:8px;display:grid}.demo-accounts .btn{white-space:normal;text-align:left;justify-content:flex-start;height:auto;min-height:38px;padding:8px 12px;font-weight:500}.topbar .ghost-badge{background:#00000040;border-radius:8px;flex-shrink:0;align-items:center;gap:8px;height:36px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}@media (width<=900px){.topbar .ghost-badge span{display:none}.topbar .ghost-badge{padding:0 10px}}.topbar .demo-switch{cursor:pointer;background:#ffffff24;border:1px dashed #ffffff80;border-radius:8px;flex-shrink:0;align-items:center;gap:8px;height:36px;padding:0 4px 0 12px;font-size:13px;font-weight:600;display:inline-flex;position:relative}.topbar .demo-switch select{color:#fff;cursor:pointer;background:#0000002e;border:0;width:auto;max-width:200px;height:28px;min-height:0;padding:0 8px;font-size:13px}.topbar .demo-switch option{color:var(--text);background:var(--bg-card)}@media (width<=900px){.topbar .demo-switch{justify-content:center;width:36px;padding:0}.topbar .demo-switch span{display:none}.topbar .demo-switch select{opacity:0;width:100%;height:100%;font-size:16px;position:absolute;inset:0}}.article h2{margin:8px 0;font-size:17px}.article .body{white-space:pre-line;color:var(--text-2);overflow-wrap:anywhere}.thumbs{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.thumbs img{object-fit:cover;cursor:zoom-in;border:1px solid var(--border);border-radius:8px;width:110px;height:80px}.file-btn{border:1px solid var(--border);color:var(--text);text-overflow:ellipsis;border-radius:8px;align-items:center;gap:8px;max-width:100%;padding:8px 12px;font-size:13px;display:inline-flex;overflow:hidden}.lightbox{z-index:200;background:#000000e6;justify-content:center;align-items:center;gap:12px;padding:16px;display:flex;position:fixed;inset:0}.lightbox img{border-radius:8px;max-width:90vw;max-height:85vh}.lightbox button{color:#fff;cursor:pointer;background:#ffffff26;border:0;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.bar-row{grid-template-columns:minmax(90px,150px) 1fr 44px;align-items:center;gap:8px;margin-bottom:8px;font-size:13px;display:grid}.bar-row .bar{background:var(--primary);border-radius:5px;min-width:2px;height:10px}.bar-row .name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}details>summary{cursor:pointer;flex-wrap:wrap;align-items:center;gap:8px;list-style:none;display:flex}details>summary::-webkit-details-marker{display:none}details[open]>summary{margin-bottom:12px}.report-tools{flex-wrap:wrap;align-items:center;gap:12px;max-width:1000px;margin:0 auto 16px;display:flex}.report-paper{color:#1a1d23;border:1px solid var(--border);background:#fff;border-radius:6px;max-width:1000px;margin:0 auto;padding:36px 40px;font-size:13px;box-shadow:0 8px 30px #1018281a}.report-paper .muted{color:#6b7280}.report-head{border-bottom:3px solid var(--primary);align-items:center;gap:20px;padding-bottom:16px;display:flex}.report-head img{object-fit:contain;width:64px;height:64px}.report-kicker{text-transform:uppercase;letter-spacing:.08em;color:var(--primary);font-size:11px;font-weight:700}.report-head h1{color:#111;margin:2px 0 4px;font-size:24px}.report-meta{color:#6b7280;font-size:12px}.report-facts{background:#e5e7eb;border:1px solid #e5e7eb;border-radius:8px;grid-template-columns:repeat(4,1fr);gap:1px;margin:20px 0 8px;display:grid;overflow:hidden}.report-facts div{background:#fff;flex-direction:column;gap:2px;padding:12px;display:flex}.report-facts div:last-child{grid-column:span 2}.report-facts span{text-transform:uppercase;letter-spacing:.04em;color:#6b7280;font-size:10.5px;font-weight:600}.report-facts b{color:#111;font-size:16px}.report-section{margin-top:24px}.report-section h2{color:#111;border-bottom:1px solid #ccc;align-items:center;gap:8px;margin-bottom:12px;padding:8px 0;font-size:16px;display:flex}.report-section h2 small{color:#6b7280;margin-left:auto;padding-right:12px;font-size:12px;font-weight:500}.report-table{border-collapse:collapse;width:100%;font-size:12.5px}.report-table th{color:#374151;text-transform:uppercase;letter-spacing:.03em;white-space:normal;background:#f3f4f6;border-bottom:1px solid #d1d5db;padding:8px;font-size:10.5px}.report-table td{color:#1f2937;border-bottom:1px solid #eceef1;padding:8px}.report-table tbody tr:nth-child(2n) td{background:#fafafa}.report-table .lp{text-align:center;width:42px}.report-table .num{text-align:right;white-space:nowrap}.report-table th.sorted,.report-table td.sorted{color:#111;font-weight:700}.report-table td.sorted{background:color-mix(in srgb, var(--primary) 5%, white)!important}.report-table tr.top .who{font-weight:650}.report-table .badge{font-size:10.5px}.medal{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;font-weight:700;display:inline-flex}.medal.gold{background:#d4a106}.medal.silver{background:#9aa3ad}.medal.bronze{background:#c07a3c}.highlights{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.hl{border:1px solid #e5e7eb;border-radius:8px;padding:12px}.hl-title{text-transform:uppercase;letter-spacing:.04em;color:#6b7280;margin-bottom:8px;font-size:11px;font-weight:700}.hl-row{align-items:center;gap:8px;padding:4px 0;font-size:12.5px;display:flex}.hl-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.report-foot{color:#6b7280;border-top:1px solid #e5e7eb;flex-wrap:wrap;gap:4px 16px;margin-top:24px;padding-top:12px;font-size:10.5px;display:flex}@media (width<=700px){.report-paper{border-left:0;border-right:0;border-radius:0;margin:0 -16px;padding:20px 16px}.highlights{grid-template-columns:1fr}.report-section{overflow-x:auto}.report-facts{grid-template-columns:1fr 1fr}.report-facts div:last-child{grid-column:span 2}}@page{size:A4;margin:12mm 10mm 14mm}@media print{*{-webkit-print-color-adjust:exact;print-color-adjust:exact}html,html.dark{--bg-main:#fff;--bg-card:#fff;--text:#000;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{background:#fff;font-size:11pt}.topbar,.sidebar,.bottombar,.backdrop,.no-print,.alert{display:none!important}.app-body{display:block}.main{max-width:none;margin:0;padding:0!important}.card{box-shadow:none;break-inside:avoid;border:1px solid #ddd}.report-paper{max-width:none;box-shadow:none;border:0;margin:0;padding:0;font-size:10pt}.report-head img{width:50px;height:50px}.report-head h1{font-size:18pt}.report-section.group{break-inside:avoid-page}.report-section h2{break-after:avoid}.report-table{font-size:9.5pt}.report-table thead{display:table-header-group}.report-table tr,.highlights,.hl,.report-facts,.report-foot{break-inside:avoid}}.cred-card{border:2px solid var(--primary);background:var(--bg-card);border-radius:14px;padding:16px}.cred-head{align-items:center;gap:12px;margin-bottom:12px;display:flex}.cred-head img{object-fit:contain;width:48px;height:48px}.cred-card dl{grid-template-columns:auto 1fr;gap:8px 16px;margin:0 0 12px;display:grid}.cred-card dt{color:var(--muted);align-self:center;font-size:13px}.cred-card dd{word-break:break-all;-webkit-user-select:all;user-select:all;margin:0;font:600 17px/1.3 ui-monospace,SFMono-Regular,Consolas,monospace}details.advanced{border:1px dashed var(--border);border-radius:10px;padding:12px}details.advanced summary{cursor:pointer;font-size:14px;font-weight:600}details.advanced[open] summary{margin-bottom:8px}.app-banner{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;align-items:center;gap:12px;margin-bottom:16px;padding:12px 16px;display:flex}.app-banner .grow{flex:1;min-width:0}.app-banner .ico{flex-shrink:0}.badge.gold{background:var(--t-gold-bg);color:var(--t-gold)}.notice-box{background:var(--info-light);color:var(--text);border-radius:10px;align-items:flex-start;gap:12px;padding:12px;display:flex}.notice-box>svg{color:var(--info);margin-top:2px}.progress{background:var(--bg-soft);border-radius:999px;height:8px;overflow:hidden}.progress span{background:var(--success);border-radius:inherit;height:100%;transition:width .2s;display:block}.slot-pick{grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:8px;display:grid}.slot-card{border:1.5px solid var(--border);background:var(--bg-card);border-radius:12px;gap:8px;padding:12px;transition:border-color .15s,background .15s;display:grid}.slot-card.on{border-color:var(--success);background:var(--success-light)}.slot-card.disabled{opacity:.55}.slot-main{font:inherit;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;width:100%;padding:0;display:flex}.slot-main:disabled{cursor:not-allowed}.slot-main small{color:var(--text-2);font-size:12px;display:block}.slot-main .tick{border:1.5px solid var(--border);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.slot-card.on .tick{background:var(--success);border-color:var(--success);color:#fff}.signup-row{border-bottom:1px solid var(--border-soft);grid-template-columns:minmax(130px,220px) 1fr;align-items:start;gap:12px;padding:12px 0;display:grid}.signup-row:last-child{border-bottom:0}.signup-row.with-actions{grid-template-columns:minmax(130px,220px) 1fr auto}select.sm-select{width:auto;padding:4px 28px 4px 8px;font-size:13px}.roster-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;display:grid}.roster-cell{border:1px solid var(--border);border-radius:10px;align-content:start;gap:6px;padding:8px;display:grid}.roster-cell.mine{border-color:color-mix(in srgb, var(--danger) 55%, transparent)}.roster-cell.now{box-shadow:inset 0 0 0 1px var(--primary)}.roster-cell.past{opacity:.5}.roster-day{color:var(--text-2);font-size:13px;font-weight:700}.roster-cell .who{flex-wrap:wrap;gap:4px;min-width:0;display:flex}.roster-cell .person-chip{white-space:nowrap;text-overflow:ellipsis;max-width:100%;display:block;overflow:hidden}.tabs-seg{flex-wrap:wrap;display:flex}.tabs-seg button{align-items:center;gap:6px;padding:10px 16px;font-size:14px;display:inline-flex}.signup-progress{background:var(--bg-soft);border-radius:999px;height:6px;overflow:hidden}.signup-progress span{background:var(--t-green);border-radius:inherit;height:100%;display:block}@media (width<=600px){.tabs-seg{grid-template-columns:repeat(3,1fr);display:grid}.tabs-seg button{flex-direction:column;justify-content:center;gap:2px;padding:10px 6px;font-size:12.5px}}.my-duty-list{flex-wrap:wrap;gap:8px;display:flex}.my-duty{background:var(--danger-light);color:var(--danger);border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:13.5px;display:inline-flex}.my-duty b{font-weight:700}.my-duty small{opacity:.85}.signup-row .when>span{color:var(--text-2)}.signup-row .who{flex-wrap:wrap;gap:4px;min-width:0;display:flex}.person-chip{background:var(--bg-soft);border-radius:999px;align-items:center;gap:4px;padding:4px 8px;font-size:12.5px;display:inline-flex}.person-chip.me{background:var(--danger-light);color:var(--danger);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--danger) 35%, transparent);font-weight:700}.person-chip.extra{box-shadow:inset 0 0 0 1px var(--t-gold)}.person-chip.guest{box-shadow:inset 0 0 0 1px var(--border);background:0 0;font-style:italic}.person-chip.clickable{cursor:pointer}.person-chip.clickable:hover{box-shadow:inset 0 0 0 1px var(--primary)}.person-chip button{color:var(--danger);cursor:pointer;background:0 0;border:0;padding:0;display:inline-flex}.signup-stats{flex-wrap:wrap;gap:8px;display:flex}.signup-stats>span{background:var(--bg-soft);border-radius:10px;flex:100px;padding:8px 12px}.signup-stats b{font-size:15px;display:block}.signup-stats small{color:var(--text-2);font-size:11.5px}.preset-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.slot-edit{border-bottom:1px solid var(--border-soft);gap:8px;padding:12px 0;display:grid}.slot-line{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.slot-line>select{width:230px;max-width:100%}.slot-line>input[type=date]{width:160px}.slot-line>input[type=time]{width:110px}.slot-line>.ss{flex:160px;min-width:140px}.slot-line>input[type=number]{width:110px}.slot-line>.check{white-space:nowrap}.slot-line>.icon-btn{margin-left:auto}@media (width<=760px){.signup-row,.signup-row.with-actions{grid-template-columns:1fr;gap:8px}}.file-pick{text-transform:none;letter-spacing:0;flex-wrap:wrap;align-items:center;gap:8px;font-weight:400;display:flex}.file-pick .file-btn{gap:8px}.audience-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px;display:grid}.audience{border:1.5px solid var(--border);border-radius:12px;align-content:start;gap:12px;padding:12px;display:grid}.audience.on{border-color:color-mix(in srgb, var(--primary) 45%, var(--border));background:var(--primary-light)}.audience-head{align-items:center;gap:8px;display:flex}.main-inner:has(>.settings-page){--page-w:1280px}.settings-grid{columns:2 400px;column-gap:16px}.settings-grid>.card{break-inside:avoid;margin-bottom:16px}.settings-grid>.wide{column-span:all}.setting{align-items:flex-start;gap:16px;display:flex}.setting+.setting,.setting+.form-grid,.form-grid+.setting{margin-top:16px}.setting b{font-weight:600;display:block}.notify-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));align-items:start;gap:16px;display:grid}.notify-grid>.card{margin:0}.notify-row{border-bottom:1px solid var(--border-soft);padding:12px 0}.notify-row:last-child{border-bottom:0;padding-bottom:0}.notify-row .inline-field{max-width:320px;margin:10px 0 0 60px}.notify-row label.inline-field{align-items:center;gap:8px;display:flex}.notify-row label.inline-field select{width:auto}.guide-search{border:1px solid var(--border);background:var(--bg-input);border-radius:10px;align-items:center;gap:8px;padding:0 12px;display:flex}.guide-search input{background:0 0;border:0;outline:none;flex:1;padding:12px 0}.guide-toc{flex-wrap:wrap;gap:8px;display:flex}.guide-toc a{background:var(--bg-card);border:1px solid var(--border);color:var(--text-2);border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;display:inline-flex}.guide-toc a:hover{color:var(--text);border-color:var(--primary)}.guide-section{scroll-margin-top:calc(var(--topbar-h) + 16px)}.guide-item{border-top:1px solid var(--border-soft)}.guide-item summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;font-weight:600;list-style:none;display:flex}.guide-item summary::-webkit-details-marker{display:none}.guide-item summary:after{content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);width:8px;height:8px;margin-right:4px;transition:transform .15s;transform:rotate(45deg)}.guide-item[open] summary:after{transform:rotate(-135deg)}.guide-item summary:hover{color:var(--primary-text)}.guide-body{color:var(--text-2);gap:8px;padding:0 0 16px;line-height:1.6;display:grid}.push-stats b{margin-right:4px;font-size:22px}.toggle-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:8px 24px;display:grid}.toggle-grid .setting{border-bottom:1px solid var(--border-soft);margin:0;padding:12px 0}.save-bar{z-index:40;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);justify-content:flex-end;align-items:center;gap:16px;margin-top:24px;padding:12px 16px;display:flex;position:sticky;bottom:16px}.save-bar .hint{margin-right:auto}.save-bar.dirty{border-color:color-mix(in srgb, var(--warning) 50%, var(--border))}.save-bar.dirty .hint{color:var(--warning);font-weight:600}@media (width<=900px){.save-bar{bottom:calc(68px + env(safe-area-inset-bottom))}.save-bar .btn{flex-shrink:0}}.main-inner{max-width:var(--page-w,none);margin:0 auto}.main-inner:has(>.page-sm){--page-w:960px}.main-inner:has(>.page-md){--page-w:1280px}.main-inner:has(>.page-lg){--page-w:1600px}.main-inner:has(>.page-calendar){--page-w:max(720px, calc((100dvh - 380px) * 1.55))}.main-inner:has(>.page-calendar.with-tools){--page-w:max(720px, calc((100dvh - 500px) * 1.55))}.person-pick{max-width:400px}.back-link{color:var(--text-2);align-items:center;gap:8px;margin-bottom:16px;font-size:13px;font-weight:600;display:inline-flex}.back-link:hover{color:var(--primary-text)}.feast-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:16px;display:grid}.feast-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);color:var(--text);flex-direction:column;gap:8px;padding:16px;display:flex}.feast-card:hover{border-color:color-mix(in srgb, var(--primary) 40%, var(--border))}.feast-card .badge{align-self:flex-start}.cast-progress{align-items:center;gap:8px;display:flex}.cast-progress .progress{flex:1}.instructions{white-space:pre-line;background:var(--bg-soft);border-radius:8px;padding:12px 16px}.instructions b{text-transform:uppercase;letter-spacing:.04em;color:var(--text-2);margin-bottom:4px;font-size:12px;display:block}.role-edit{border-bottom:1px solid var(--border-soft);gap:8px;padding:12px 0;display:grid}.role-edit.off{opacity:.6}.cast-layout{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:16px;display:grid}.cast-layout aside{top:calc(var(--topbar-h) + 16px);position:sticky}@media (width<=1100px){.cast-layout{grid-template-columns:1fr}.cast-layout aside{order:-1;position:static}}.role-card{padding:16px}.role-card.full{border-color:color-mix(in srgb, var(--success) 35%, var(--border))}.role-card.skipped{opacity:.6;box-shadow:none;border-style:dashed}.role-head{align-items:center;gap:8px;margin-bottom:12px;display:flex}.role-name{background:0 0;border-color:#0000;flex:0 240px;width:auto;min-height:32px;padding:4px 8px;font-size:15px;font-weight:650}.role-name:hover{border-color:var(--border)}.stepper{border:1px solid var(--border);border-radius:8px;display:inline-flex}.cast-people{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cast-people .person-chip{padding:4px 8px 4px 12px;font-size:13.5px}.cast-add{flex:200px;max-width:320px}.suggestions{border-top:1px dashed var(--border);flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;padding-top:12px;display:flex}.suggestion{text-align:left;border:1px solid var(--border);background:var(--bg-card);color:var(--text);font:inherit;cursor:pointer;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;column-gap:4px;padding:4px 12px 4px 8px;font-size:13px;display:inline-grid}.suggestion:hover{border-color:var(--primary);background:var(--primary-light)}.suggestion svg{color:var(--primary-text);grid-row:span 2}.suggestion small{color:var(--muted);grid-column:2;font-size:11px}.warnings.has-open{border-color:color-mix(in srgb, var(--warning) 45%, var(--border))}.warning-row{border-bottom:1px solid var(--border-soft);cursor:pointer;align-items:flex-start;gap:8px;padding:8px 0;font-size:13.5px;display:flex}.warning-row:last-of-type{border-bottom:0}.warning-row input{margin-top:2px}.warning-row.accepted{color:var(--muted)}@media (width<=600px){.role-head{flex-wrap:wrap}.role-name{flex:100%}.cast-add{max-width:none}}.checklist-progress{gap:8px;display:grid}.feast-card.archived{opacity:.6}.item-row{border-bottom:1px solid var(--border-soft);padding:12px 0}.item-row:last-child{border-bottom:0}.item-row.late .item-title>span:first-child{color:var(--danger)}.item-row.s-wykonane .item-title>span:first-child,.item-row.s-niewymagane .item-title>span:first-child{color:var(--muted);text-decoration:line-through}.item-main{align-items:center;gap:8px;display:flex}.item-title{text-align:left;min-width:0;font:inherit;color:var(--text);cursor:pointer;background:0 0;border:0;flex:1;gap:4px;padding:0;display:grid}.item-title>span:first-child{flex-wrap:wrap;align-items:center;gap:8px;font-weight:600;display:flex}.item-metas{flex-wrap:wrap;gap:4px 16px;display:flex}.item-meta{color:var(--text-2);align-items:center;gap:4px;font-size:12.5px;display:inline-flex}.item-meta.neg{color:var(--danger);font-weight:600}.item-note{background:var(--bg-soft);border-radius:8px;margin:8px 0 0 152px;padding:4px 12px;font-size:13px}.item-note.danger{background:var(--danger-light);color:var(--danger)}.item-details{gap:12px;margin:12px 0 0 152px;display:grid}.item-history{color:var(--text-2);gap:4px;font-size:13px;list-style:none;display:grid}.item-history b{color:var(--text);font-weight:600}.status-select{flex-shrink:0;width:144px;min-height:36px;padding:4px 8px;font-size:13px;font-weight:600}.status-select.success{color:var(--success);background:var(--success-light)}.status-select.danger{color:var(--danger);background:var(--danger-light)}.status-select.info{color:var(--info);background:var(--info-light)}.tpl-item{border-bottom:1px solid var(--border-soft);gap:8px;padding:16px 0;display:grid}.tpl-grid{grid-template-columns:2fr 1fr 1fr 112px;gap:8px;display:grid}@media (width<=700px){.item-main{flex-wrap:wrap}.status-select{order:2;width:auto}.item-title{flex-basis:100%}.item-note,.item-details{margin-left:0}.tpl-grid{grid-template-columns:1fr 1fr}}.suggestions .filter-chips{flex:1}.suggestion-list{flex-wrap:wrap;flex-basis:100%;gap:8px;display:flex}.tpl-grid.simple{grid-template-columns:2fr 1fr}.check-row{border-bottom:1px solid var(--border-soft);align-items:center;gap:8px;padding:8px 0;display:flex}.check-row:last-child{border-bottom:0}.check-row label{cursor:pointer;flex:1;align-items:flex-start;gap:12px;min-height:32px;padding:4px 0;font-weight:500;display:flex}.check-row input[type=checkbox]{width:24px;height:24px;margin-top:-2px}.check-row label>span{gap:4px;display:grid}.check-row small{color:var(--muted);font-size:12.5px;font-weight:400}.check-row.done label>span{color:var(--muted);text-decoration:line-through}.assist-link{color:var(--text);margin-bottom:16px;display:block}.assist-link .card{margin-bottom:0}.assist-link:hover .card{border-color:color-mix(in srgb, var(--primary) 40%, var(--border))}.assist-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.assist-head h2{margin:4px 0;font-size:18px}.assist-rel{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.assist-card .cast-role{min-width:160px}@media (width<=600px){.assist-card .list-row{flex-wrap:wrap;gap:0 8px}.assist-card .cast-role{width:100%}}.assist-cast-title{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:16px 0 4px;font-size:12px;font-weight:600}.assist-when{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:4px;font-size:13.5px;display:flex}.assist-when span{align-items:center;gap:4px;display:inline-flex}.assist-when .assist-date{color:var(--text);font-size:14.5px;font-weight:600}.assist-when .assist-gather{background:var(--warning-light);color:var(--warning);border-radius:999px;gap:8px;padding:4px 12px;font-size:14.5px;font-weight:600}.assist-when .assist-gather b{font-size:16px}.assist-mine{flex-wrap:wrap;gap:8px;display:flex}.assist-mine .badge{padding:4px 12px;font-size:13px}.changes-card{border-color:color-mix(in srgb, var(--warning) 45%, var(--border))}.date-table{display:grid}.date-line{grid-template-columns:96px 112px minmax(120px,200px) 1fr;align-items:center;gap:8px 16px;padding:8px 0;display:grid}.date-line.first{border-top:1px solid var(--border-soft)}.date-line.head{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding-top:0;font-size:11.5px;font-weight:600}.date-line .who{flex-wrap:wrap;gap:4px;display:flex}@media (width<=700px){.date-line{grid-template-columns:72px 1fr}.date-line.head{display:none}.date-line>:nth-child(3){grid-column:2;font-size:12.5px}.date-line .who{grid-column:1/-1}}.cast-mine,.cast-mine b{color:var(--danger)}.vigil-days{grid-template-columns:repeat(auto-fit,minmax(min(100%,480px),1fr));align-items:start;gap:24px;display:grid}.vigil-day h3{color:var(--t-red);text-align:center;margin-bottom:8px}.vigil-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:14px}.vigil-table th,.vigil-table td{border:1px solid var(--border);text-align:center;overflow-wrap:anywhere;padding:8px}.vigil-table th{background:var(--bg-soft);font-weight:650}.vigil-table .time{white-space:nowrap;background:var(--t-orange-bg);width:112px;font-weight:700}.vigil-table .time small{white-space:normal;color:var(--text-2);font-weight:500;display:block}.vigil-table td.off{background:var(--bg-soft)}.vigil-table td.mine{color:var(--danger);font-weight:700}.vigil-table td .btn,.vigil-table td .icon-btn{margin:0 auto}.vigil-table td .icon-btn{vertical-align:middle;margin-left:4px;display:inline-flex}.vigil-break td{background:var(--t-red-bg);color:var(--t-red);padding:12px 8px;font-size:15px;font-weight:700}@media (width<=600px){.vigil-table{font-size:13px}.vigil-table .time{white-space:normal;width:76px}.vigil-table th,.vigil-table td{padding:6px 4px}.vigil-table .ss{min-width:0}.vigil-table .ss-trigger{padding:0 6px}}.vigil-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.vigil-table th,.vigil-table .time{overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.vigil-table th:not(.time){white-space:normal}@media (width<=600px){.vigil-table{min-width:calc(76px + var(--cols,1) * 110px)}.vigil-table th{letter-spacing:0;font-size:12px;line-height:1.25}.vigil-table th:not(.time){text-transform:none}}.drag-handle{cursor:grab;color:var(--muted);touch-action:none;display:inline-flex}.edit-card.dragging{opacity:.5;outline:2px dashed var(--primary)}@media (width<=600px){.vigil-title{font-size:22px}}.vigil-status{justify-content:flex-end}.vigil-title{text-align:center;margin:8px 0;font-size:28px;font-weight:750;line-height:1.2}.vigil-rules{text-align:center;justify-content:center}@media (width<=600px){.vigil-title{font-size:22px}}.print-view{background:#e9ebef;min-height:100vh;padding-bottom:32px}.print-toolbar{z-index:20;background:var(--bg-card);border-bottom:1px solid var(--border);margin-bottom:24px;padding:8px 16px;position:sticky;top:0}.print-toolbar-inner{flex-wrap:wrap;align-items:center;gap:8px 16px;max-width:1200px;margin:0 auto;display:flex}.print-toolbar .grow{flex:1;min-width:120px}.print-toolbar input[type=color]{background:0 0;border:0;width:36px;height:28px;padding:0}.page-editor{width:min(210mm,100% - 32px);margin:0 auto 8px}.print-view:has(.sheet.landscape) .page-editor{width:min(297mm,100% - 32px)}.sheet{--c:#2f5fa7;--s:1;--sub:#e07b39;color:#111;width:210mm;min-height:297mm;font-family:Times New Roman,Times,serif;font-size:calc(12.5pt * var(--s));break-after:page;background:#fff;margin:0 auto 24px;padding:16mm 16mm 14mm 24mm;line-height:1.3;position:relative;overflow:clip;box-shadow:0 6px 24px #10182826}.sheet.landscape{width:297mm;min-height:210mm;padding:12mm 14mm}.sheet:last-child{break-after:auto}.sheet small{font-size:.72em}.sheet-head{text-align:center;margin:0 0 9mm;position:relative}.sheet-head h1{font-variant:small-caps;font-size:calc(28pt * var(--s));color:var(--c);letter-spacing:.01em;margin:0;font-weight:700;line-height:1.1}.sheet-time{font-size:calc(17pt * var(--s));margin-top:2px;font-weight:700}.sheet-sub{font-style:italic;font-size:calc(15pt * var(--s));margin-top:2px}.sheet-note{text-align:center;white-space:pre-line;margin-top:8mm;font-style:italic}.sheet-img{object-fit:contain;max-height:95mm;margin:9mm auto 0;display:block}.sheet-img.s{max-width:35%}.sheet-img.m{max-width:55%}.sheet-img.l{max-width:85%;max-height:130mm}.sheet-roles{display:grid}.sr-row{padding:calc(5.5pt * var(--s)) 0;break-inside:avoid;grid-template-columns:38% 1fr;gap:0 12px;display:grid}.sr-row.gap,.sr-heading.gap{margin-top:calc(14pt * var(--s))}.sr-name{font-weight:700}.sr-name small{font-style:italic;font-weight:400;display:block}.sr-row.sub{grid-template-columns:38% 1fr}.sr-row.sub .sr-name{color:var(--sub);padding-left:24%;font-style:italic;font-weight:400}.sr-heading{text-align:center;margin:calc(8pt * var(--s)) 0 calc(4pt * var(--s));font-size:1.45em;font-weight:700}.sr-heading span{text-underline-offset:3px;text-decoration:underline}.sr-heading small{font-size:.5em;font-style:italic;font-weight:400;display:block}.sheet.classic .sheet-sub{border-bottom:1.5px solid #111;margin:2px 6mm 0 0;padding-bottom:1px;display:block}.sheet.classic.frame:before{content:"";background:var(--c);width:3px;position:absolute;top:5mm;bottom:0;left:12mm}.sheet.classic.frame .sheet-head:after{content:"";background:var(--c);height:3px;position:absolute;bottom:-5px;left:-24mm;right:-16mm}.sheet.classic .sr-heading:not(:first-child){padding-top:calc(8pt * var(--s));border-top:2px solid #111}.sheet.modern{padding:0 0 14mm;font-family:Segoe UI,Roboto,Arial,sans-serif}.sheet.modern .sheet-head{background:var(--c);color:#fff;margin-bottom:8mm;padding:12mm 16mm 8mm}.sheet.modern .sheet-head h1{color:#fff;font-variant:normal;text-transform:uppercase;letter-spacing:.06em;font-size:calc(22pt * var(--s))}.sheet.modern .sheet-time{opacity:.95;font-weight:500}.sheet.modern .sheet-sub{opacity:.9}.sheet.modern>:not(.sheet-head){margin-left:16mm;margin-right:16mm}.sheet.modern .sheet-img{border-radius:8px;margin-left:auto;margin-right:auto}.sheet.modern .sr-row{padding:calc(5pt * var(--s)) 0;border-bottom:1px solid #e3e6eb}.sheet.modern .sr-name{color:var(--c);font-weight:600}.sheet.modern .sr-row.sub .sr-name{color:#6b7280}.sheet.modern .sr-heading{color:var(--c);text-align:left;text-transform:uppercase;letter-spacing:.05em;font-size:1.2em}.sheet.modern .sr-heading span{text-decoration:none}.sheet.elegant{padding:18mm 20mm;font-family:Georgia,Times New Roman,serif}.sheet.elegant:after{content:"";border:3px double var(--c);pointer-events:none;position:absolute;inset:8mm}.sheet-ornament{color:var(--c);font-size:calc(20pt * var(--s));margin-bottom:4px;line-height:1}.sheet.elegant .sheet-sub:after{content:"❦";color:var(--c);margin-top:4px;font-style:normal;display:block}.sheet.elegant .sr-row{text-align:center;padding:calc(4pt * var(--s)) 0;grid-template-columns:1fr}.sheet.elegant .sr-name{font-variant:small-caps;color:var(--c);letter-spacing:.03em;font-size:1.05em;font-weight:400}.sheet.elegant .sr-row.sub .sr-name{padding-left:0}.sheet.elegant .sr-heading{color:var(--c)}.sheet.plain{--sub:#111;font-family:Arial,Helvetica,sans-serif;font-size:calc(11.5pt * var(--s));--c:#111!important}.sheet.plain .sheet-head{text-align:left;border-bottom:2px solid #111;padding-bottom:4mm}.sheet.plain .sheet-head h1{font-variant:normal;font-size:calc(20pt * var(--s))}.sheet.plain .sr-row{border-bottom:1px dotted #999}.sheet.plain .sheet-img{filter:grayscale()}.sheet-days{grid-template-columns:repeat(auto-fit,minmax(110mm,1fr));align-items:start;gap:8mm;display:grid}.sheet-days.stacked{grid-template-columns:1fr}.sheet-cols{align-items:start;gap:5mm;display:grid}.sheet-grid thead{display:table-header-group}.sheet-grid tr{break-inside:avoid}.sheet-day{text-align:center;color:var(--c);font-size:calc(18pt * var(--s));margin:0 0 3mm}.sheet-grid{border-collapse:collapse;table-layout:fixed;width:100%;font-size:calc(11pt * var(--s))}.sheet-grid th,.sheet-grid td{text-align:center;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;white-space:normal;text-transform:none;letter-spacing:0;color:inherit;font-size:inherit;border:1px solid #111;padding:3px 4px;line-height:1.25}.sheet-grid th{font-weight:700}.sheet-grid tbody tr:last-child td{border-bottom:1px solid #111}.sheet-grid thead th{background:color-mix(in srgb, var(--c) 14%, #fff)}.sheet-grid th.time{width:30mm}.sheet-grid tbody th{background:color-mix(in srgb, var(--c) 10%, #fff)}.sheet-grid tbody th small{white-space:normal;font-weight:400;display:block}.sheet-grid td.off{background:#f1f1f1}.sheet-break td{background:var(--c);color:#fff;padding:6px;font-size:1.2em;font-weight:700}@media screen{.sheet{zoom:var(--fit,1)}}@media (width<=600px){.print-toolbar{margin-bottom:16px;padding:8px 12px;position:static}.print-toolbar-inner{gap:8px 12px}.page-editor{width:calc(100% - 24px)}}@media print{.print-view{background:#fff;min-height:0;padding:0}html:has(.print-view){background:#fff!important}html:has(.print-view) body{background:#fff!important}html:has(.print-view) .app-body{background:#fff!important}html:has(.print-view) .main{background:#fff!important}.sheet{box-shadow:none;margin:0}}.sheet.classic:not(.frame) .sheet-sub{color:var(--c);border-bottom:0;font-style:normal;font-weight:700}.login-cards{display:none}@media print{html.printing-cards body>:not(.login-cards),html.printing-list body>:not(.login-list){display:none!important}html.printing-cards .login-cards{color:#000;grid-template-columns:1fr 1fr;gap:0;font-family:Arial,sans-serif;display:grid}html.printing-cards,html.printing-cards body,html.printing-list,html.printing-list body{background:#fff!important}html.printing-list .login-list{color:#000;font-family:Arial,sans-serif;display:block}}.login-list{display:none}.login-list h2{margin:0 0 2mm;font-size:15pt}.login-list p{color:#333;margin:0 0 4mm;font-size:10pt}.login-list table{border-collapse:collapse;width:100%;font-size:11pt}.login-list th,.login-list td{text-align:left;border:1px solid #555;padding:2mm 3mm}.login-list td:nth-child(n+2){font-family:Consolas,Courier New,monospace;font-weight:700}.login-list tr{break-inside:avoid}.login-card{break-inside:avoid;border:1.5px dashed #555;margin:-.75px;padding:5mm 6mm}.login-card-head{color:#333;align-items:center;gap:8px;font-size:10pt;display:flex}.login-card-head img{object-fit:contain;width:22px;height:22px}.login-card-name{margin:3mm 0 2mm;font-size:14pt;font-weight:700}.login-card dl{grid-template-columns:auto 1fr;gap:1mm 4mm;margin:0;font-size:11pt;display:grid}.login-card dt{color:#555}.login-card dd{margin:0;font-family:Consolas,Courier New,monospace;font-size:12pt;font-weight:700}.login-card-foot{color:#555;margin-top:2mm;font-size:8.5pt}.bulk-rows{gap:8px;display:grid}.bulk-row{grid-template-columns:24px 1fr 1fr 150px auto auto;align-items:center;gap:8px;display:grid}.bulk-row:has(>select+select){grid-template-columns:24px 1fr 1fr 140px 160px auto auto}.bulk-no{color:var(--muted);text-align:right;font-size:13px}.bulk-row .check{white-space:nowrap}.bulk-no-label,.bulk-remove span{display:none}@media (width<=700px){:is(.bulk-row,.bulk-row:has(>select+select)){border:1px solid var(--border);border-radius:10px;grid-template-columns:1fr 1fr;padding:12px}.bulk-no{text-align:left;color:var(--text);grid-area:1/1;font-size:14px;font-weight:700}.bulk-no-label{display:inline}.bulk-no-dot{display:none}.bulk-remove{width:auto;color:var(--danger);grid-area:1/2;justify-self:end;gap:4px;padding:0 8px;font-size:13px;font-weight:600}.bulk-remove span{display:inline}.bulk-remove:disabled{visibility:hidden}}.report-shot{border:1px solid var(--border);border-radius:8px;max-width:100%;max-height:320px;margin-top:12px;display:block}.report-msg{background:var(--bg-soft);border-radius:8px;margin-top:12px;padding:8px 12px}.report-msg.admin{background:var(--primary-light)}.report-note{color:var(--muted);margin-top:8px;font-size:12px}.report-scroll{max-width:100%;overflow-x:auto}@page wide{size:A4 landscape;margin:10mm}@media print{.report-scroll{overflow:visible}.report-paper.wide{page:wide}.report-paper.wide .report-table{font-size:8.5pt}.report-paper.wide .report-table th,.report-paper.wide .report-table td{padding:4px 5px}}.report-paper.wide{max-width:1400px}.report-tools .field.inline{white-space:nowrap;align-items:center;gap:8px;margin:0;display:flex}.report-tools .field.inline select{width:auto}@page chart{size:A4 portrait;margin:10mm}.report-chart-page{margin-top:32px}.people-chart{gap:0 6mm;line-height:1;display:grid}.rch-row{grid-template-columns:2.2em 44mm 1fr 4.2em;align-items:center;gap:2mm;display:grid}.rch-col.half .rch-row{grid-template-columns:2.2em 32mm 1fr 4.2em}.rch-lp{color:#6b7280;text-align:right}.rch-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.rch-track{height:70%;max-height:4.5mm;position:relative}.rch-bar{background:var(--primary);border-radius:0 2px 2px 0;min-width:1px;position:absolute;top:0;bottom:0}.rch-val{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}@media print{.report-chart-page{page:chart;break-before:page;break-inside:avoid;margin-top:0}.report-table th,.report-table td{padding:5px 6px}.report-table th{text-transform:none;letter-spacing:0;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;font-size:8pt}.report-paper.dense .report-table{font-size:7.5pt}.report-paper.dense .report-table th{font-size:7pt}.report-paper.dense .report-table th,.report-paper.dense .report-table td{padding:3px}.report-paper.dense .report-table .badge{padding:1px 4px;font-size:7pt}}.article-actions{align-items:center;gap:4px;margin-left:auto;display:flex}.article-foot{justify-content:space-between;row-gap:4px}.article-foot>span{align-items:center;gap:8px;display:inline-flex}.modal.ask{max-width:400px}.modal.ask .modal-body{white-space:pre-line;font-size:15px;line-height:1.5}.flash-stack{top:calc(var(--topbar-h,64px) + 12px);z-index:90;gap:8px;width:min(560px,100% - 32px);animation:.14s ease-out pop;display:grid;position:fixed;left:50%;transform:translate(-50%)}.flash-stack .alert{box-shadow:var(--shadow-lg);background-clip:padding-box;margin:0}.flash-stack .alert.success{background:color-mix(in srgb, var(--success) 14%, var(--bg-card))}.flash-stack .alert.error{background:color-mix(in srgb, var(--danger) 14%, var(--bg-card))}@media (width>=901px){.app-body .flash-stack{left:calc(50% + 116px)}}.roster-dates{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:8px 16px;min-width:0;display:grid}.roster-dates .past{opacity:.5}.carol-grid{grid-template-columns:minmax(0,1fr) minmax(320px,420px);align-items:start;gap:16px;display:grid}.carol-people{top:calc(var(--topbar-h) + 16px);max-height:calc(100vh - var(--topbar-h) - 32px);position:sticky;overflow-y:auto}.carol-area{gap:8px;margin-bottom:12px;display:grid}.carol-part{border-top:1px solid var(--border-soft);gap:4px;padding-top:8px;display:grid}.carol-part select{width:auto;min-width:0;max-width:100%;padding:4px 8px;font-size:13px}.carol-people table{width:100%;font-size:13px}.carol-people th,.carol-people td{text-align:left;vertical-align:middle;padding:4px 6px}@media (width<=1100px){.carol-grid{grid-template-columns:minmax(0,1fr)}.carol-people{max-height:none;position:static}}.link-btn{font:inherit;color:var(--primary-text);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.sheet-grid.carol{margin-bottom:16px}.sheet-grid.carol th,.sheet-grid.carol td{font-size:calc(15px * var(--s,1));text-align:left;padding:8px 12px}.sheet-grid.carol tbody th{text-transform:none;letter-spacing:0;width:45%}.sheet-grid.carol tbody th small{text-transform:none;font-size:.8em;font-weight:400;display:block}.setup-steps{flex-wrap:wrap;gap:8px;display:flex}.setup-step{border:1px solid var(--border);background:var(--bg-card);color:var(--text-2);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:600;display:inline-flex}.setup-step>span{background:var(--bg-soft);border-radius:50%;place-items:center;width:22px;height:22px;display:grid}.setup-step.on{border-color:var(--primary);color:var(--text)}.setup-step.on>span{background:var(--primary);color:#fff}.setup-step.done>span{background:var(--success);color:#fff}.setup-choice{border:1px solid var(--border);cursor:pointer;border-radius:10px;align-items:flex-start;gap:12px;margin-bottom:8px;padding:12px;display:flex}.setup-choice.on{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 8%, transparent)}.setup-choice input{margin-top:3px}.setup-choice span{gap:4px;display:grid}.setup-choice small{color:var(--muted)}.qr-preview{background:#fff;border-radius:8px;width:160px;height:160px;padding:8px}.qr-preview svg,.qr-poster .qr svg{width:100%;height:100%;display:block}.qr-poster{display:none}@media print{body.print-poster>:not(.qr-poster){display:none!important}body.print-poster .qr-poster{text-align:center;color:#121826;flex-direction:column;align-items:center;height:268mm;font-family:system-ui,Segoe UI,Arial,sans-serif;display:flex}.qr-poster .k{letter-spacing:.12em;text-transform:uppercase;color:#b11226;font-size:13pt;font-weight:700}.qr-poster h1{margin:4mm 0 2mm;font-size:32pt;line-height:1.1}.qr-poster .sub{color:#4a5263;margin:0;font-size:15pt}.qr-poster .qr{border:1.5mm solid #121826;border-radius:6mm;width:115mm;height:115mm;margin:10mm 0 5mm;padding:6mm}.qr-poster .url{font-size:20pt;font-weight:700}.qr-poster ol{text-align:left;grid-template-columns:repeat(3,1fr);gap:6mm;width:100%;margin:9mm 0 0;padding:0;list-style:none;display:grid}.qr-poster li{border-top:1mm solid #121826;padding-top:3mm;font-size:12.5pt;line-height:1.35}.qr-poster li b{color:#b11226;font-size:22pt;display:block}.qr-poster .foot{color:#4a5263;align-items:center;gap:5mm;margin-top:auto;font-size:12pt;display:flex}}.duty-box.must{background:var(--bg-card);border-color:color-mix(in srgb, var(--danger) 45%, var(--border))}.duty-box .badge{white-space:normal;border-radius:12px;max-width:100%}.duty-head{align-items:center;gap:12px;margin-bottom:12px;display:flex}.duty-where{flex-direction:column;min-width:0;line-height:1.3;display:flex}.duty-where small{color:var(--muted);font-size:12.5px}.duty-note{background:var(--bg-soft);border-radius:10px;gap:12px;margin-bottom:12px;padding:12px;font-size:13.5px;line-height:1.4;display:flex}.duty-note svg{flex-shrink:0;width:18px;height:18px;margin-top:1px}.duty-note b{display:block}.duty-note span{color:var(--muted)}.duty-note.ok{background:var(--success-light)}.duty-note.ok svg{color:var(--success)}.duty-note.info{background:var(--info-light)}.duty-note.info svg{color:var(--info)}.duty-note.warn{background:var(--warning-light)}.duty-note.warn svg{color:var(--warning)}.duty-note.muted svg{color:var(--muted)}.duty-choices{grid-template-columns:1fr 1fr;gap:8px;display:grid}.duty-choices button{text-align:left;border:1px solid var(--border);background:var(--bg-card);color:var(--text);font:inherit;cursor:pointer;border-radius:10px;flex-direction:column;gap:2px;padding:12px;font-size:13.5px;display:flex}.duty-choices button:hover,.duty-choices button.on{border-color:var(--primary)}.duty-choices span{color:var(--muted);font-size:12.5px}.duty-other{align-items:flex-end;gap:8px;margin-top:12px;display:flex}.duty-other .field{flex:1;min-width:0;margin:0}.duty-other>.btn{flex-shrink:0}.duty-link{color:var(--primary);font:inherit;cursor:pointer;background:0 0;border:0;margin:12px auto 0;padding:4px;font-size:13.5px;font-weight:600;display:block}@media (width<=420px){.duty-choices{grid-template-columns:1fr}}.extra-row{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:8px 0;display:flex}.extra-row:last-of-type{margin-bottom:12px}@media (width<=900px){select.sm-select,select.status-select,.carol-part select,.filters>.row>input[type=date]{font-size:16px}}.form-table{border-collapse:collapse;width:100%}.form-table th,.form-table td{border:1px solid var(--border);text-align:center;padding:6px 8px}.form-table thead th{background:var(--bg-soft);white-space:normal;text-transform:none;letter-spacing:0;color:var(--text-2);font-size:13px}.form-table tbody th,.form-table tfoot th{text-align:left;white-space:nowrap;text-transform:none;letter-spacing:0;color:var(--text);background:var(--bg-soft);width:1%;font-size:14px}.form-table td input{text-align:center;min-width:64px;min-height:40px;padding:6px 8px}.form-table td input.filled{border-color:color-mix(in srgb, var(--success) 45%, var(--border))}.form-table tfoot td,.form-table tfoot th{background:var(--bg-soft);font-size:15px}.form-edit-line{align-items:center;gap:8px;display:flex}.form-edit-line>input{flex:1;min-width:0}.form-edit-line>select{flex-shrink:0;width:auto}.sacristy{text-align:center;background:var(--bg-main);min-height:100dvh;color:var(--text);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:24px 16px;display:flex}.sacristy h1{margin:0;font-size:28px}.sacristy p{margin:0;font-size:18px}.sacristy-main{flex-direction:column;align-items:center;gap:16px;display:flex}.sacristy.advanced{text-align:left;flex-direction:row;gap:64px}.sacristy.advanced .sacristy-main{text-align:center}.sacristy-today{flex-direction:column;flex:1;align-items:flex-start;gap:12px;max-width:560px;display:flex}.sacristy-today h2{margin:0;font-size:28px}.sacristy-duty{background:var(--bg-card);border:1px solid var(--border-soft);border-radius:12px;width:100%;padding:16px}.sacristy-duty-head{align-items:baseline;gap:8px;font-size:22px;display:flex}.sacristy-duty-head .right{margin-left:auto}.sacristy-duty ul{gap:4px;margin:8px 0 0;padding:0;list-style:none;display:grid}.sacristy-duty li{color:var(--muted);align-items:center;gap:8px;font-size:18px;display:flex}.sacristy-duty li.on{color:var(--t-green);font-weight:600}@media (width<=900px){.sacristy.advanced{flex-direction:column;gap:32px}.sacristy-today{width:100%}}.sacristy-qr{aspect-ratio:1;background:#fff;border-radius:16px;width:min(320px,70vw);padding:16px}.sacristy-qr svg{width:100%;height:100%;display:block}.sacristy-pin{flex-direction:column;gap:12px;width:min(400px,100%);display:flex}.sacristy-pin input{height:56px;font:inherit;border:1px solid var(--border);background:var(--bg-card);color:var(--text);border-radius:12px;padding:0 16px;font-size:22px}.sacristy-pin .filter-chips{justify-content:center}.sacristy-pin .filter-chips button{padding:8px 16px;font-size:18px}.sacristy-pin .btn{height:56px;font-size:20px}.sacristy-pin .alert{cursor:default;margin:0;font-size:18px}.sacristy-code{letter-spacing:.16em;font-variant-numeric:tabular-nums;font-size:clamp(64px,18vw,128px);font-weight:800;line-height:1}.nav-item.phone-only{display:none}@media (width<=900px){.nav-item.phone-only{display:flex}}.tabs-pick{gap:8px;display:grid}.tabs-pick button{border:1px solid var(--border);background:var(--bg-card);min-height:48px;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:10px;align-items:center;gap:12px;padding:8px 16px;font-size:15px;display:flex}.tabs-pick button span{flex:1}.tabs-pick button.on{border-color:var(--primary);background:var(--primary-light)}.tabs-pick button b{background:var(--primary);color:#fff;border-radius:50%;place-items:center;width:24px;height:24px;font-size:13px;display:grid}.tabs-pick button .off{opacity:0}.tabs-pick button:disabled{opacity:.45;cursor:not-allowed}.about-edit{grid-template-columns:220px 1fr;align-items:start;gap:24px;display:grid}@media (width<=700px){.about-edit{grid-template-columns:1fr}.about-edit img{max-width:240px}}.ready-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:12px;display:grid}.ready-card{border:1px solid var(--border);background:var(--bg-card);border-radius:12px;flex-direction:column;gap:8px;padding:16px;display:flex}.ready-head{gap:2px;display:grid}.ready-head b{font-size:15.5px}.ready-list{color:var(--text-2);flex:1;gap:2px;margin:0;padding-left:18px;font-size:13.5px;display:grid}.ready-foot{justify-content:flex-end;align-items:center;gap:8px;margin-top:4px;display:flex}.ready-foot .small{margin-right:auto}.slot-grip{width:28px;height:40px;color:var(--muted);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.slot-grip:hover{background:var(--bg-soft);color:var(--text)}.slot-grip.off{cursor:default}.slot-grip.off:hover{background:0 0}.slot-row.is-break{background:var(--bg-soft);border-radius:8px;padding:4px 4px 4px 0}.slot-row.dragging{opacity:.6;outline:2px dashed var(--primary);outline-offset:2px;border-radius:8px}.slot-row.dragging .slot-grip{cursor:grabbing}.meet-group{margin-bottom:24px}.meet-group-title{color:var(--text);align-items:center;gap:8px;margin:0 0 8px;font-size:15px;font-weight:700;display:flex}.meet-group-title span{color:var(--muted);font-size:13px;font-weight:500}.meet-group.todo .meet-group-title{color:var(--t-orange)}.meet-group.todo .meet-list{border-color:color-mix(in srgb, var(--t-orange) 45%, var(--border))}.meet-group.done .meet-list{opacity:.92}.meet-list{padding:4px 16px}.meet-row{border-bottom:1px solid var(--border);align-items:center;gap:14px;padding:12px 0;display:flex}.meet-row:last-child{border-bottom:0}.meet-row .date-tile.todo{background:var(--t-orange-bg);color:var(--t-orange);border-color:#0000}.meet-main{flex:1;gap:2px;min-width:0;display:grid}.meet-main>b{font-size:15px}.meet-progress{color:var(--text-2);align-items:center;gap:8px;margin-top:4px;font-size:12.5px;display:flex}.meet-progress .bar{background:var(--bg-soft);border-radius:3px;flex-shrink:0;width:120px;height:6px;overflow:hidden}.meet-progress .bar i{background:var(--t-orange);border-radius:3px;height:100%;display:block}.meet-group.done .meet-progress .bar i{background:var(--t-green)}.meet-progress .ok{color:var(--t-green);align-items:center;gap:4px;display:inline-flex}.meet-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}@media (width<=600px){.meet-row{flex-wrap:wrap}.meet-main{flex-basis:calc(100% - 70px)}.meet-actions{justify-content:flex-end;width:100%}.meet-actions .btn{flex:1}}.att-group{border-bottom:1px solid var(--border);letter-spacing:.06em;text-transform:uppercase;color:var(--text-2);justify-content:space-between;align-items:baseline;padding:12px 8px 6px;font-size:11.5px;font-weight:650;display:flex}.att-group span{letter-spacing:0;text-transform:none;color:var(--muted);font-weight:500}.pshell-full .main{padding:0}.pshell-full .main>.alert{margin:8px 16px}.map-page{height:calc(100dvh - var(--phead-h,60px));background:var(--bg-card);border-bottom:1px solid var(--border);grid-template-columns:340px 1fr;min-height:420px;display:grid}.map-side{border-right:1px solid var(--border);flex-direction:column;min-height:0;display:flex}.map-side-head{border-bottom:1px solid var(--border);padding:16px 16px 8px}.map-side-head h1{align-items:center;gap:8px;margin:0 0 12px;font-size:20px;display:flex}.map-side-head h1 .muted{font-size:16px;font-weight:500}.map-chips{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.map-chips button{border:1px solid var(--border);color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;display:inline-flex}.map-chips button .map-dot{background:var(--border)}.map-chips button.on{color:var(--text);border-color:var(--c)}.map-chips button.on .map-dot{background:var(--c)}.map-list{flex:1;padding:0 8px 8px;overflow-y:auto}.map-list-label{background:var(--bg-card);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:12px 8px 4px;font-size:12px;font-weight:700;position:sticky;top:0}.map-item{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;padding:8px;display:flex}.map-item:hover,.map-item.on{background:var(--bg-soft,#7f7f7f14)}.map-item .user-main{min-width:0}.map-key{border-top:1px solid var(--border);padding:8px 16px 12px}.map-wrap{min-height:0;display:flex;position:relative}.map-canvas{flex:1;min-height:0;position:relative}.map-style{z-index:3;color:#111;background:#fff;border-radius:8px;align-items:center;gap:6px;padding:0 4px 0 10px;display:flex;position:absolute;top:10px;left:10px;box-shadow:0 1px 4px #0000004d}.map-style select{color:inherit;font:inherit;width:auto;min-height:0;box-shadow:none;background:0 0;border:0;padding:8px 4px;font-size:14px;font-weight:600}.map-dot{vertical-align:-1px;border-radius:50%;flex-shrink:0;width:12px;height:12px;display:inline-block}.mp{color:#111;cursor:pointer;font:inherit;background:#fff;border:1px solid #0000001f;border-radius:8px;align-items:center;gap:6px;padding:3px 8px 3px 3px;display:flex;box-shadow:0 2px 6px #00000040}.mp-dot{background:var(--c);color:#fff;letter-spacing:-.02em;border-radius:6px;flex-shrink:0;place-items:center;width:24px;height:24px;font-size:11px;font-weight:800;display:grid}.mp-label{white-space:nowrap;text-overflow:ellipsis;max-width:180px;font-size:12px;font-weight:700;overflow:hidden}.mp.on{border-color:var(--c);box-shadow:0 0 0 2px var(--c), 0 2px 6px #00000040}.mp:hover,.mp.on{z-index:2}.map-canvas.far .mp-label{display:none}.map-canvas.far .mp{box-shadow:none;background:0 0;border:0;padding:0}.map-canvas.far .mp-dot{border:2px solid #fff;border-radius:4px;width:14px;height:14px;margin-left:8px;font-size:0;box-shadow:0 1px 3px #0006}.map-canvas .maplibregl-ctrl-attrib{font-size:11px}@media (width<=760px){.map-page{grid-template-rows:60dvh auto;grid-template-columns:1fr;height:auto}.map-side{border-right:0;border-top:1px solid var(--border);order:2}.map-list{max-height:50dvh}}.svc-swatch{border-radius:4px;flex-shrink:0;width:14px;height:40px}.svc-swatch.sm{border-radius:50%;width:10px;height:10px;display:inline-block}.map-search{z-index:5;grid-template-columns:1fr auto;gap:8px;margin-bottom:12px;display:grid;position:relative}.map-search .user-search{grid-column:auto}.map-results{background:var(--bg-card);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:10px;max-height:320px;padding:4px 8px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.map-results .user-meta{white-space:normal}.parent-rows{gap:8px;max-height:60dvh;display:grid;overflow-y:auto}.parent-row{grid-template-columns:minmax(0,1.2fr) 1fr 1fr;align-items:center;gap:8px;display:grid}.parent-child{text-overflow:ellipsis;min-width:0;font-size:14px;font-weight:600;overflow:hidden}.parent-child small{color:var(--muted);font-size:12px;font-weight:400;display:block}.setup-people .parent-row{grid-template-columns:1fr 1fr 140px}.setup-people .parent-row.with-parent{grid-template-columns:1fr 1fr 140px 1fr 1fr 36px}.setup-people .parent-row:not(.with-parent){grid-template-columns:1fr 1fr 140px 36px}@media (width<=760px){.parent-row,.setup-people .parent-row.with-parent,.setup-people .parent-row:not(.with-parent){border-bottom:1px solid var(--border);grid-template-columns:1fr 1fr;padding-bottom:8px}.parent-child,.setup-people .parent-row select{grid-column:1/-1}.setup-people .parent-row .icon-btn{grid-column:2;justify-self:end}}.parent-steps{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:8px;margin:0 0 12px;padding:0;list-style:none;display:grid}.parent-steps li{border:1px solid var(--border);background:var(--bg-card);border-radius:12px;align-items:flex-start;gap:12px;padding:12px 16px;display:flex}.parent-steps li>span{background:color-mix(in srgb, var(--primary) 12%, transparent);width:28px;height:28px;color:var(--primary);border-radius:50%;flex-shrink:0;place-items:center;font-size:14px;font-weight:700;display:grid}.parent-steps li.done>span{color:#fff;background:#1f9d55}.parent-steps b{font-size:14px;display:block}.parent-steps small{color:var(--muted);margin-top:2px;font-size:13px;line-height:1.4;display:block}.parent-switch{align-items:center;gap:12px;display:flex}.parent-switch.on{border-color:#1f9d55}.parent-head{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:0 8px 4px;font-size:12px;font-weight:700}.parent-rows .parent-row{border-radius:8px;padding:4px 8px}.parent-rows .parent-row.filled{background:#1f9d5514}.parent-save{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding-top:12px;display:flex}.parent-item{border-top:1px solid var(--border);align-items:center;gap:12px;padding:8px 0;display:flex}.parent-item:first-of-type{border-top:0}.parent-item .user-main{flex:1;min-width:0}@media (width<=760px){.parent-head{display:none}.parent-rows .parent-row{border-radius:0;padding:8px 0}}.mod-roles{gap:4px;display:grid}.mod-role{border-top:1px solid var(--border);grid-template-columns:minmax(140px,200px) 1fr;align-items:center;gap:8px 16px;padding:8px 0;display:grid}.mod-role:first-child{border-top:0}.mod-role>b{font-size:14px}.role-chips{flex-wrap:wrap;gap:6px;display:flex}.role-chips button{border:1px solid var(--border);color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:6px 12px;font-size:13px}.role-chips button.on{background:var(--primary,#0f766e);border-color:var(--primary,#0f766e);color:#fff}.role-chips button.all.on{color:var(--text);border-color:var(--text);background:0 0}@media (width<=640px){.mod-role{grid-template-columns:1fr}}.phead{z-index:50;background:var(--primary);color:#fff;grid-template-columns:auto 1fr auto;grid-template-areas:"brand tabs actions";align-items:center;gap:0 16px;padding:0 16px;display:grid;position:sticky;top:0;box-shadow:0 2px 8px #0000001f}.phead-brand{color:#fff;grid-area:brand;align-items:center;gap:10px;text-decoration:none;display:flex}.phead-brand img{object-fit:contain;background:#fff;border-radius:10px;width:36px;height:36px;padding:4px}.phead-brand span{flex-direction:column;font-size:16px;font-weight:800;line-height:1.1;display:flex}.phead-brand small{opacity:.8;font-size:11px;font-weight:500}.phead-actions{grid-area:actions;align-items:center;gap:8px;display:flex}.phead-actions .avatar{color:#fff!important;background:#fff3!important}.phead .top-btn{color:#fff;cursor:pointer;background:#ffffff24;border:1px solid #ffffff2e;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.phead .top-btn:hover{background:#ffffff3d}.platform-tabs{scrollbar-width:none;grid-area:tabs;align-self:stretch;align-items:stretch;gap:2px;min-width:0;display:flex;overflow-x:auto}.platform-tabs::-webkit-scrollbar{display:none}.ptab{color:#ffffffc7;white-space:nowrap;border-top:3px solid #0000;border-bottom:3px solid #0000;flex-shrink:0;align-items:center;gap:6px;min-height:60px;padding:0 10px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.ptab:hover{color:#fff;background:#ffffff14}.ptab.active{color:#fff;border-bottom-color:#fff}.ptab-count{min-width:20px;height:20px;color:var(--primary);text-align:center;background:#fff;border-radius:999px;padding:0 6px;font-size:12px;font-weight:800;line-height:20px}.ptab-sep{background:#ffffff40;flex-shrink:0;align-self:center;width:1px;height:22px;margin:0 6px}@media (width<=1240px){.phead{grid-template-columns:1fr auto;grid-template-areas:"brand actions""tabs tabs";padding-top:10px}.platform-tabs{margin:4px -16px 0;padding:0 8px}.ptab{min-height:46px}}.inq-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:16px;display:flex}.inq-head h1{align-items:center;gap:8px;margin:0 0 4px;font-size:24px;display:flex}.inq-list{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.inq{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;min-width:0;padding:16px}.inq.new{border-left:4px solid var(--primary)}.inq header{align-items:center;gap:12px;display:flex}.inq-who{flex-direction:column;flex:1;min-width:0;display:flex}.inq-who b{font-size:16px}.inq-who span{color:var(--muted);font-size:13px}.inq time{color:var(--muted);white-space:nowrap;align-self:flex-start;align-items:center;gap:6px;font-size:13px;display:flex}.inq-dot{background:var(--primary);border-radius:50%;width:8px;height:8px}.inq-contact{border:1px solid var(--border);color:var(--text);overflow-wrap:anywhere;border-radius:999px;align-items:center;gap:6px;max-width:100%;margin-top:12px;padding:4px 10px;font-size:14px;text-decoration:none;display:inline-flex}.inq-msg{white-space:pre-line;overflow-wrap:anywhere;margin:12px 0 0;line-height:1.5}.inq-replies{color:var(--muted);background:#7f7f7f14;border-radius:8px;gap:4px;margin:12px 0 0;padding:8px 12px;font-size:13px;list-style:none;display:grid}.inq footer{border-top:1px solid var(--border);align-items:center;gap:8px;margin-top:12px;padding-top:12px;display:flex}.inq footer .icon-btn{margin-left:auto}.inq-quote{border-left:3px solid var(--border);color:var(--muted);white-space:pre-line;max-height:160px;margin:0 0 12px;padding:8px 12px;font-size:14px;overflow-y:auto}.pgroup{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:24px 0 8px;font-size:13px;font-weight:700}.pgroup:first-of-type{margin-top:8px}table.cards tr.group-row td{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border-bottom:1px solid var(--border);padding-top:24px;font-size:12px;font-weight:700}@media (width<=760px){table.cards.parish-table>tbody>tr:not(.group-row){grid-template-columns:1fr 1fr;gap:0 16px;display:grid}table.cards.parish-table>tbody>tr>td.main-cell,table.cards.parish-table>tbody>tr>td[data-label=Parafia],table.cards.parish-table>tbody>tr>td[data-label=Adres],table.cards.parish-table>tbody>tr>td[data-label=Ostatnio]{grid-column:1/-1}table.cards.parish-table>tbody>tr.group-row{border:0;margin:8px 0;padding:0}table.cards.parish-table>tbody>tr.group-row td{text-align:left;border:0;padding:0}}.svc-sec+.svc-sec{border-top:1px solid var(--border);margin-top:20px;padding-top:20px}.svc-sec h3{margin:0 0 12px;font-size:15px}.svc-sec .role-chips button{align-items:center;gap:6px;display:inline-flex}.svc-colors{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.svc-colors>button,.svc-color-custom{cursor:pointer;border:2px solid #0000;border-radius:50%;width:36px;height:36px;padding:0}.svc-colors>button.on,.svc-color-custom.on{box-shadow:0 0 0 2px var(--bg-card), 0 0 0 4px var(--text)}.svc-color-custom{border:1px dashed var(--border);color:var(--muted);place-items:center;display:grid;position:relative;overflow:hidden}.svc-color-custom.on{color:#fff;border-style:solid}.svc-color-custom input{opacity:0;cursor:pointer;position:absolute;inset:0}.svc-when{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}@media (width<=640px){.svc-when{grid-template-columns:1fr 1fr}}.mp.mp-pin,.map-canvas.far .mp.mp-pin{box-shadow:none;filter:drop-shadow(0 2px 3px #00000059);background:0 0;border:0;padding:0}.mp.mp-pin.on svg path{stroke:#111;stroke-width:3px}.map-style-sep{background:#00000026;width:1px;height:20px;margin:0 4px 0 2px}.map-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:1200px;margin:0 auto;padding:24px 16px 40px;display:grid}.map-summary h2{border-bottom:1px solid var(--border);align-items:center;gap:8px;margin:0 0 8px;padding-bottom:8px;font-size:16px;display:flex}.map-summary h2>span:last-child{color:var(--muted);margin-left:auto;font-weight:600}.map-summary ol{gap:6px;margin:0;padding-left:22px;display:grid}.map-summary li b{font-weight:600}.map-summary li small{color:var(--muted);font-size:12px;display:block}@media (width<=760px){.map-summary{grid-template-columns:1fr}.map-side .map-list{display:none}}
