
:root{
 --ui-backdrop:rgba(36,42,52,.32);--ui-focus-soft:rgba(36,112,200,.14);
 --ui-danger-hover:#A82D3C;--ui-danger-tint-hover:#FBE3E7;
 --ui-form-line:#B7C4D5;--ui-section-line:#D5DFEC;--ui-section-soft:#F2F6FB;

 --ui-primary:#2470C8;
 --ui-primary-hover:#195CAA;
 --ui-accent:#3485E4;
 --ui-selected:#EAF3FE;
 --ui-red:#C63949;
 --ui-red-soft:#FFF0F2;
 --ui-green:#267E62;
 --ui-green-soft:#EFF8F3;
 --ui-warning:#895817;
 --ui-warning-soft:#FFF4DE;
 --ui-bg:#F7F9FC;
 --ui-surface:#FFFFFF;
 --ui-ink:#243247;
 --ui-muted:#5F7087;
 --ui-border:#DCE4EF;
 --ui-control:#78889D;
 --ui-disabled:#64748B;
 --ui-disabled-bg:#EBEFF5;
 --ui-violet:#7952B3;
 --ui-violet-soft:#F1EAF9;
 --ui-teal:#147C78;
 --ui-teal-soft:#E7F6F2;
 --ui-pink:#AD4877;
 --ui-pink-soft:#FCECF3;
 --ui-lime:#A8D96F;
 --ui-yellow:#F8C65C;
 --ui-blue-soft:#EAF3FE;
 --ui-focus:#195CAA;
 --ui-skeleton:#E7EDF5;
 --ui-ink-a08:#24324708;
 --ui-ink-a06:#24324706;
 --ui-ink-a12:#24324712;
 --ui-ink-a26:#24324726;
 --ui-primary-a66:#2470C866;
 --ui-ink-a20:#24324720;
 --ui-surface-aa8:#FFFFFFa8;
 --ui-surface-ab3:#FFFFFFb3;
 --ui-primary-a12:#2470C812;
 --ui-ink-a0a:#2432470a;
 --ui-surface-af5:#FFFFFFf5;
 --ui-ink-a09:#24324709;
 --ui-surface-ab8:#FFFFFFb8;
 --ui-ink-a13:#24324713;
 --ui-surface-a80:#FFFFFF80;
 --ui-surface-abd:#FFFFFFbd;
 --ui-ink-a24:#24324724;
 --ui-surface-a3b:#FFFFFF3b;
 --ui-primary-a50:#2470C850;
 --ui-ink-a0b:#2432470b;
 --ui-ink-a15:#24324715;
 --ui-surface-ad9:#FFFFFFd9;
 --ui-surface-ac4:#FFFFFFc4;
 --ui-ink-a10:#24324710;
 --ui-ink-a03:#24324703;
 --ui-ink-a04:#24324704;
 --ui-surface-acf:#FFFFFFcf;
 --ui-ink-a28:#24324728;
 --ui-ink-a14:#24324714;
 --ui-ink-a30:#24324730;
 --ui-ink-a1a:#2432471a;
 --ui-primary-a55:#2470C855;
 --ui-ink-a29:#24324729;
 --ui-primary-a52:#2470C852;
 --ui-ink-a40:#24324740;
 --ui-primary-a6b:#2470C86b;
 --ui-surface-a99:#FFFFFF99;
 --ui-ink-a33:#24324733;
 --ui-ink-a2b:#2432472b;
 --ui-ink-a16:#24324716;
 --ui-primary-a61:#2470C861;
 --ui-ink-a21:#24324721;
 --ui-primary-a59:#2470C859;
 --ui-surface-acb:#FFFFFFcb;
 --ui-surface-a0a:#FFFFFF0a;
 --ui-ink-a0d:#2432470d;
 --ui-ink-a0e:#2432470e;
 --ui-ink-a05:#24324705;
 --ui-ink-a18:#24324718;
 --ui-ink-a0c:#2432470c;
 --ui-surface-a12:#FFFFFF12;
 --ui-surface-ac9:#FFFFFFc9;
 --ui-ink-a1c:#2432471c;
 --ui-ink-a25:#24324725;
 --ui-ink-a80:#24324780;
 --ui-ink-a38:#24324738;
 --ui-ink-a32:#24324732;
 --ui-ink-a07:#24324707;
 --ui-surface-a2b:#FFFFFF2b;
 --ui-green-a40:#267E6240;
}
*{box-sizing:border-box}html{height:100%;overflow:hidden}body{margin:0;height:100vh;height:100dvh;overflow:hidden;background:var(--ui-selected);color:var(--ui-ink);font:15px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}main{max-width:1100px;height:100%;padding:clamp(10px,2vh,22px);margin:auto}.panel{height:100%;display:flex;flex-direction:column;border:1px solid var(--ui-border);background:var(--ui-surface);border-radius:24px;padding:clamp(14px,2.4vh,26px);box-shadow:0 14px 60px var(--ui-ink-a08)}.heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-shrink:0;margin-bottom:clamp(10px,2vh,20px)}h1{margin:0;font-size:clamp(23px,3.6vh,36px);line-height:1.12;letter-spacing:-.8px;font-weight:850}h1 span{color:var(--ui-primary-hover)}.stamp{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--ui-muted);white-space:nowrap}.calendar-icon{width:25px;height:25px;color:var(--ui-primary-hover)}.holidays{flex:1;min-height:0;min-width:0}.holiday-grid{height:100%;margin:auto;display:flex;flex-wrap:wrap;justify-content:center;align-content:flex-start;gap:var(--tile-gap,12px)}.holiday-grid.is-loading{visibility:hidden}.holiday-card{flex:0 0 var(--tile-size);width:var(--tile-size);height:var(--tile-size);border:1px solid var(--ui-border);border-radius:clamp(12px,2vw,22px);overflow:hidden;background:var(--ui-surface);box-shadow:0 5px 18px var(--ui-ink-a06)}.holiday-card img{display:block;width:100%;height:100%;object-fit:contain}.setup-mode-root{overflow:auto}.setup-mode{height:auto;min-height:100dvh;overflow:auto}.setup-mode main{height:auto}.setup-mode .panel{height:calc(100dvh - 44px);min-height:560px}.setup-mode .install:not([hidden])~.holidays{min-height:430px}.setup-mode .panel:has(.install:not([hidden])){height:auto}@media(max-width:600px){main{padding:10px}.panel{padding:14px 12px;border-radius:20px}.heading{gap:8px;margin-bottom:12px}h1{font-size:clamp(21px,5.7vw,27px);max-width:230px}.stamp{font-size:9px;gap:4px;flex-direction:column}.calendar-icon{width:22px;height:22px}.setup-mode .panel{height:calc(100dvh - 20px)}}@media(max-height:460px){.panel{padding:10px 14px}.heading{margin-bottom:8px}h1{font-size:23px}.stamp{flex-direction:row}.calendar-icon{width:20px;height:20px}}


[hidden]{display:none!important}.setup{margin-top:24px;padding:24px;background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:18px}.setup h2{margin:0;font-size:21px}.setup p{color:var(--ui-muted);font-size:13px}.setup label{display:block;font-size:12px;margin:14px 0 5px}.setup input{width:100%;padding:12px;border:1px solid var(--ui-border);border-radius:9px;font:inherit}.setup button{margin-top:20px;background:var(--ui-primary);color:var(--ui-surface);border:0;padding:13px 20px;border-radius:10px;font:600 14px -apple-system,BlinkMacSystemFont,sans-serif;cursor:pointer}.setup button:disabled{opacity:.5}

.install{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;margin-bottom:24px;border:1px solid var(--ui-border);border-radius:14px;background:var(--ui-surface)}.install strong{font-size:15px}.install p{margin:4px 0 0;color:var(--ui-muted);font-size:12px}.install button{background:var(--ui-primary);color:var(--ui-surface);border:0;padding:12px 16px;border-radius:10px;font:600 13px -apple-system,BlinkMacSystemFont,sans-serif;cursor:pointer}.install button:disabled{opacity:.5}.install #install-status:empty{display:none}.install #install-status{flex-basis:100%}@media(max-width:600px){.install button{width:100%}}


.install{display:block;padding:18px;margin:0 0 16px;background:var(--ui-surface);border-color:var(--ui-border)}.install-copy strong{display:block;font-size:20px;line-height:1.2;margin:5px 0 8px}.install-eyebrow{font-size:10px;font-weight:750;letter-spacing:1.2px;color:var(--ui-primary-hover)}.install-actions{display:flex;gap:10px;margin:15px 0 10px}.install-actions button{flex:1;margin:0;min-height:44px}.install-actions #add-community{background:var(--ui-surface);color:var(--ui-primary-hover);border:1px solid var(--ui-border)}.install button:disabled{opacity:.45;cursor:default}.install #install-status{margin:10px 0 0;font-size:13px;color:var(--ui-muted)}.install #community-link{display:inline-block;margin-top:12px;font-weight:650;color:var(--ui-primary-hover);text-decoration:none}.install-success{background:var(--ui-green-soft);border-color:var(--ui-border)}.install-success .install-copy strong{color:var(--ui-green)}.install-success .install-eyebrow{color:var(--ui-green)}@media(max-width:600px){.install{padding:15px}.install-copy strong{font-size:18px}.install-actions{flex-direction:column;gap:8px}.install-actions button{width:100%}}


.setup-mode main{max-width:720px;min-height:100dvh;display:flex;align-items:center;padding:28px 18px}
.setup-mode .panel:has(.install:not([hidden])){height:auto;min-height:0;width:100%;padding:38px;border-radius:28px;box-shadow:0 18px 70px var(--ui-ink-a12)}
.setup-mode .install{margin:0;padding:0;background:none;border:0}
.setup-mode .install-copy strong{font-size:30px;line-height:1.15;margin:22px 0 14px;letter-spacing:-.6px;color:var(--ui-ink)}
.setup-mode .install-copy p{font-size:16px;line-height:1.55;color:var(--ui-muted);margin:0}
.install-step{float:right;color:var(--ui-primary-hover);background:var(--ui-selected);border-radius:20px;padding:5px 12px;font-size:12px;font-weight:650}
.setup-mode .install-actions{flex-direction:column;margin:26px 0 18px;gap:12px}
.setup-mode .install-actions button{font-size:17px;min-height:56px;border-radius:14px}
.setup-mode .install-actions #add-community{background:var(--ui-primary);color:var(--ui-surface);border:0}
.setup-mode .has-community .install-actions #add-community{order:2;background:transparent;color:var(--ui-muted);border:1px solid var(--ui-border);font-size:14px;min-height:44px}
.setup-mode .install-actions #widget-connect{order:1;background:var(--ui-primary);box-shadow:0 8px 24px var(--ui-ink-a26)}
.setup-mode .install #install-status{font-size:14px;line-height:1.55;background:var(--ui-surface);border-radius:12px;padding:14px;color:var(--ui-muted)}
.setup-mode .install #install-status:empty{display:none}
.setup-mode .install #community-link{display:block;text-align:center;background:var(--ui-primary);color:var(--ui-surface);padding:16px;border-radius:14px;font-size:17px}
.setup-mode .install-success .install-copy strong{color:var(--ui-green)}
.calendar-back{display:block;text-align:center;margin-top:26px;color:var(--ui-muted);font-size:13px;text-decoration:none}
.install-success .install-actions{display:flex}
@media(max-width:600px){.setup-mode main{padding:14px 10px}.setup-mode .panel:has(.install:not([hidden])){padding:25px 20px;border-radius:22px}.setup-mode .install-copy strong{font-size:26px}.setup-mode .install-copy p{font-size:15px}.install-eyebrow{font-size:9px;letter-spacing:1px}.install-step{font-size:11px;padding:4px 10px}}

.selected-community{margin-top:20px;padding:16px 18px;background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:14px;display:flex;flex-direction:column;gap:5px}.selected-community>span{font-size:11px;color:var(--ui-muted)}.selected-community #selected-community-name{font-size:17px;font-weight:700;color:var(--ui-ink);text-decoration:none;overflow-wrap:anywhere}.selected-community small{font-size:12px;color:var(--ui-muted)}.install-success .selected-community{background:var(--ui-green-soft);border-color:var(--ui-border)}.install-success .selected-community small{color:var(--ui-green)}.install-details .menu-icon-heading{margin-top:20px}.menu-icon-download{display:inline-block;margin-top:12px;color:var(--ui-primary-hover);font-size:14px;font-weight:650}

.complete-actions{display:flex;flex-direction:column;gap:12px;margin-top:24px}.setup-mode .install .complete-actions #community-link{margin-top:0}.complete-actions #view-community{display:block;padding:15px;text-align:center;border:1px solid var(--ui-border);border-radius:14px;color:var(--ui-muted);text-decoration:none;font-size:16px;font-weight:650}.install-complete .install-eyebrow,.install-complete .install-step,.install-complete #install-help,.install-complete .install-actions,.install-complete #install-status,.install-complete .selected-community>span,.install-complete .selected-community small{display:none}.setup-mode .install-complete .install-copy strong{margin:0 0 18px;color:var(--ui-green)}.install-complete .selected-community{margin:0;padding:0;border:0;background:none}.install-complete .selected-community #selected-community-name{font-size:20px;color:var(--ui-muted);font-weight:500}.install-complete .complete-actions{margin-top:30px}

.admin-tools{flex-shrink:0;margin-top:18px}.admin-tools .calendar-action{display:flex;align-items:center;justify-content:center;gap:15px;width:100%;min-height:66px;padding:16px 24px;border:1px solid var(--ui-primary);border-radius:18px;background:linear-gradient(110deg,var(--ui-primary),var(--ui-primary));box-shadow:0 7px 20px var(--ui-ink-a26);color:var(--ui-surface);font:700 19px/1.25 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer}.admin-tools .calendar-action:hover{filter:brightness(1.05)}.admin-tools .calendar-action span{font-size:24px}.admin-tools .calendar-action:focus-visible,.tools-dialog button:focus-visible{outline:3px solid var(--ui-primary);outline-offset:4px}.tools-dialog{width:min(480px,calc(100vw - 32px));padding:38px 30px;border:1px solid var(--ui-border);border-radius:26px;background:radial-gradient(ellipse at top right,var(--ui-selected),var(--ui-surface) 65%);color:var(--ui-ink);text-align:center;box-shadow:0 25px 90px var(--ui-ink-a26)}.tools-dialog::backdrop{background:var(--ui-backdrop);backdrop-filter:blur(4px)}.tools-badge{display:inline-block;padding:6px 15px;border-radius:30px;background:var(--ui-selected);color:var(--ui-primary-hover);font-size:12px;font-weight:700}.tools-dialog h2{font-size:28px;line-height:1.18;letter-spacing:-.5px;margin:22px 0 18px}.tools-dialog .tools-coming{font-size:19px;font-weight:700;color:var(--ui-primary-hover)}.tools-dialog p{font-size:15px;line-height:1.6;color:var(--ui-muted)}.tools-dialog button{width:100%;margin-top:20px;padding:15px;border:0;border-radius:14px;background:var(--ui-primary);color:var(--ui-surface);font:650 15px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer}@media(max-width:600px){.admin-tools{margin-top:12px}.admin-tools .calendar-action{min-height:56px;padding:13px 15px;font-size:16px;border-radius:15px}.tools-dialog{padding:30px 24px}.tools-dialog h2{font-size:25px}}


.welcome-page-root{overflow:hidden}
.welcome-page{height:100vh;height:100dvh;min-height:0;overflow:hidden;background:var(--ui-surface)}
.welcome-page main{max-width:none;min-height:0;height:100%;padding:0;margin:0;display:block}
.welcome-page .panel:has(.install:not([hidden])){height:100%;min-height:0;padding:clamp(12px,2vw,28px);border:0;border-radius:0;box-shadow:none;background:var(--ui-surface);overflow:hidden;align-items:center;justify-content:center}
.welcome-mode{width:100%;flex-shrink:0;transform-origin:center center}
.welcome-mode .install-copy,.welcome-mode #selected-community{display:none}
.welcome-hero{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:12px;min-height:0}
.welcome-intro{position:relative;z-index:1;padding:0}
.welcome-hero h1{max-width:none;font-size:clamp(34px,min(5.6vw,8vh),76px);font-weight:850;letter-spacing:-1.8px;line-height:1.05;margin:0 0 18px;color:var(--ui-ink)}
.welcome-hero h1 span{display:block;background:linear-gradient(110deg,var(--ui-primary),var(--ui-primary));background-clip:text;-webkit-background-clip:text;color:transparent}
.welcome-hero h2{font-size:clamp(16px,1.8vw,25px);line-height:1.25;letter-spacing:-.4px;margin:0;color:var(--ui-ink)}
.welcome-art{display:block;width:100%;height:clamp(190px,37vh,420px);object-fit:contain;object-position:center}
.welcome-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:12px;margin-top:12px}
.welcome-feature{display:grid;grid-template-columns:minmax(70px,.6fr) minmax(0,1fr);gap:12px;min-width:0;padding:16px;border:1px solid var(--ui-border);border-radius:20px;background:linear-gradient(145deg,var(--ui-surface),var(--ui-surface));box-shadow:0 5px 14px var(--ui-ink-a06)}
.welcome-feature>img{display:block;width:100%;height:auto;max-height:145px;align-self:center;object-fit:contain}
.welcome-feature-copy{display:grid;grid-template-rows:auto auto;align-content:start;min-width:0;gap:8px;font-size:clamp(16px,1.6vw,23px)}
.welcome-feature h3{font-size:inherit;line-height:1.18;letter-spacing:-.4px;margin:0;color:var(--ui-ink)}
.install .welcome-feature p{font-size:clamp(12px,1.2vw,17px);line-height:1.4;color:var(--ui-muted);margin:0;min-height:0}
.install .welcome-note{margin:14px 0 0;text-align:center;color:var(--ui-muted);font-size:clamp(12px,1.2vw,16px);line-height:1.4}
.welcome-mode .install-actions{position:static;margin:14px 0 0;padding:0;background:none;box-shadow:none;gap:0}
.welcome-mode .install-actions #add-community{min-height:54px;border-radius:16px;background:linear-gradient(110deg,var(--ui-primary),var(--ui-primary));font-size:clamp(16px,1.8vw,24px);font-weight:750;box-shadow:0 6px 18px var(--ui-ink-a20)}
.welcome-mode .install-actions #add-community::after{content:' →';margin-left:12px}
@media(max-width:700px){
 .welcome-page .panel:has(.install:not([hidden])){padding:14px}
 .welcome-hero{grid-template-columns:1.4fr 1fr;gap:4px}
 .welcome-hero h1{font-size:29px;letter-spacing:-1px;margin-bottom:12px}
 .welcome-hero h2{font-size:14px;margin-bottom:8px}
 .welcome-art{height:180px}
 .welcome-features{grid-template-columns:1fr;gap:8px;margin-top:12px}
 .welcome-feature{grid-template-columns:58px minmax(0,1fr);padding:10px;gap:10px;border-radius:15px}
 .welcome-feature>img{height:68px}
 .welcome-feature-copy{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;gap:6px 8px;font-size:14px;align-items:center}
 .welcome-feature h3{grid-column:1;grid-row:1;letter-spacing:-.2px}
 .welcome-feature h3 br{display:none}
 .install .welcome-feature p{grid-column:1/-1;grid-row:2;font-size:12px;line-height:1.4}

 .install .welcome-note{font-size:11px;margin-top:10px}
 .welcome-mode .install-actions{margin-top:10px}
 .welcome-mode .install-actions #add-community{min-height:46px;font-size:15px;border-radius:13px}
}
@media(max-width:360px){.welcome-hero h1{font-size:25px}.welcome-art{height:155px}.welcome-hero h2{font-size:13px}.welcome-feature{grid-template-columns:48px minmax(0,1fr);gap:8px}.welcome-feature-copy{font-size:13px}}

@media(min-width:701px){
 .welcome-hero{grid-template-columns:1.15fr 1fr}
 .welcome-feature{grid-template-columns:1fr;grid-template-rows:105px 1fr;gap:10px;padding:16px 22px}
 .welcome-feature>img{width:130px;height:105px;justify-self:center;max-height:none}
 .welcome-feature-copy{grid-template-rows:auto auto;gap:8px}
 .welcome-feature h3{font-size:inherit}

}
.welcome-feature:nth-child(1){background:var(--ui-surface);border-color:var(--ui-border)}
.welcome-feature:nth-child(2){background:var(--ui-surface);border-color:var(--ui-border)}
.welcome-feature:nth-child(3){background:var(--ui-selected);border-color:var(--ui-border)}
.welcome-mode .install-actions #add-community{background:linear-gradient(110deg,var(--ui-primary),var(--ui-primary))}
@media(max-width:700px){.welcome-hero h1{font-size:27px}.welcome-art{height:180px}.welcome-feature{border-radius:16px}.welcome-mode .install-actions{margin-top:12px}}
@media(max-width:360px){.welcome-hero h1{font-size:24px}.welcome-hero{grid-template-columns:1.55fr 1fr}}
.welcome-feature{position:relative}
@media(min-width:701px){.welcome-feature{grid-template-rows:130px 1fr}.welcome-feature>img{justify-self:start;margin-left:12px;width:160px;height:130px}}

.welcome-mode #install-status{display:none}
.admin-tools .calendar-action{text-decoration:none;text-align:center}
html:has(body.manager-page){overflow:hidden}
.manager-page{height:100vh;height:100dvh;min-height:0;overflow:hidden;background:var(--ui-surface)}
.manager-page main{max-width:none;min-height:0;height:100%;padding:0;margin:0;display:block}
.manager-page .panel{height:100%;min-height:0;width:100%;padding:clamp(14px,2vw,28px);border:0;border-radius:0;box-shadow:none;background:var(--ui-surface);overflow:hidden;align-items:center;justify-content:center}
.manager-screen{width:100%;flex-shrink:0;transform-origin:center center}
.manager-heading{display:grid;grid-template-columns:1.4fr 1fr;align-items:center;gap:24px;margin-bottom:20px}
.manager-label{font-size:10px;font-weight:750;letter-spacing:1.3px;color:var(--ui-muted);margin:0 0 5px}
#hub-community{font-size:15px;color:var(--ui-muted);display:block;margin-bottom:16px}
.manager-heading h1{font-size:clamp(30px,4vw,52px);line-height:1.1;letter-spacing:-1.5px;margin-bottom:14px}
.manager-heading h1 span{display:block;color:var(--ui-primary-hover)}
.manager-heading p:last-child{font-size:16px;color:var(--ui-muted);margin:0}
.manager-art{width:100%;height:190px;object-fit:contain}
.manager-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.manager-tile{display:grid;grid-template-columns:90px minmax(0,1fr) 24px;align-items:center;gap:18px;padding:20px;border:1px solid var(--ui-border);border-radius:22px;text-align:left;color:var(--ui-ink);font:inherit;cursor:pointer}
.manager-tile img,.manager-tile svg{width:90px;height:90px;object-fit:contain}
.manager-tile strong{display:block;font-size:23px;line-height:1.2;letter-spacing:-.5px}
.manager-tile small{display:block;font-size:14px;line-height:1.45;color:var(--ui-muted);margin-top:7px}
.manager-tile em{display:inline-block;margin-top:12px;padding:5px 11px;border-radius:20px;background:var(--ui-surface-aa8);color:var(--ui-muted);font-size:11px;font-style:normal;font-weight:650}
.manager-tile b{font-size:25px;color:var(--ui-primary-hover);font-weight:500}
.tile-widgets{background:var(--ui-surface)}.tile-stats{background:var(--ui-green-soft)}
.tile-widgets em{color:var(--ui-green)}
.manager-tile:hover{filter:brightness(.985)}
.manager-back,.manager-secondary{border:0;background:none;color:var(--ui-muted);font:650 13px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;padding:10px 0;cursor:pointer}
.manager-secondary{display:block;margin:15px auto 0}
.manager-back{margin-bottom:16px}
.catalog-heading h1{font-size:clamp(25px,3.2vw,40px);line-height:1.15;margin:8px 0 12px}
.catalog-heading p{font-size:14px;color:var(--ui-muted);margin:0}
.catalog-card{display:grid;grid-template-columns:190px minmax(0,1fr);gap:30px;padding:28px;border:1px solid var(--ui-border);border-radius:24px;background:linear-gradient(125deg,var(--ui-surface),var(--ui-surface));margin-top:24px}
.catalog-card>img{width:190px;height:190px;align-self:center;object-fit:contain}
.catalog-card h2{font-size:28px;letter-spacing:-.6px;margin:12px 0}
.catalog-card p{font-size:16px;line-height:1.5;color:var(--ui-muted);max-width:600px}
.catalog-state{display:inline-block;color:var(--ui-muted);background:var(--ui-surface-ab3);border-radius:20px;padding:5px 12px;font-size:12px;font-weight:650}
.catalog-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.catalog-actions button{border:0;border-radius:13px;padding:14px 20px;font:650 14px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer;background:var(--ui-primary);color:var(--ui-surface)}
.catalog-actions #catalog-preview{border:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-muted)}
#route-loading{color:var(--ui-muted);font-size:15px}
@media(max-width:700px){
 .manager-page .panel{padding:16px}.manager-heading{grid-template-columns:1.5fr 1fr;gap:8px;margin-bottom:14px}.manager-heading h1{font-size:28px;letter-spacing:-1px;margin-bottom:10px}.manager-art{height:130px}.manager-heading p:last-child{font-size:13px}#hub-community{font-size:12px;margin-bottom:12px}
 .manager-grid{gap:10px}.manager-tile{grid-template-columns:1fr;gap:8px;padding:15px;border-radius:18px;position:relative}.manager-tile img,.manager-tile svg{width:65px;height:65px}.manager-tile b{position:absolute;top:24px;right:15px;font-size:21px}.manager-tile strong{font-size:18px}.manager-tile small{font-size:12px}.manager-tile em{font-size:10px;padding:4px 8px;margin-top:8px}.manager-secondary{font-size:12px;margin-top:10px}
 .catalog-heading h1{font-size:28px}.catalog-heading p{font-size:13px}.catalog-card{grid-template-columns:75px minmax(0,1fr);padding:18px 14px;gap:15px;margin-top:18px}.catalog-card>img{width:75px;height:95px;align-self:start}.catalog-card h2{font-size:22px}.catalog-card p{font-size:14px}.catalog-actions{flex-direction:column;margin-top:14px}.catalog-actions button{font-size:13px;padding:13px}.manager-back{font-size:12px;margin-bottom:10px}
 .admin-tools .calendar-action{font-size:14px;min-height:60px;padding:13px 18px}
}

@media(max-width:700px){.manager-tile{grid-template-rows:65px 1fr;align-items:start}.manager-tile>span{display:flex;flex-direction:column;height:100%}.manager-tile em{align-self:flex-start;margin-top:auto}.manager-tile small{margin-bottom:10px}}


.manager-back{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-selected);font-size:15px;color:var(--ui-primary-hover);margin-bottom:20px}
.catalog-actions #catalog-settings{border:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-muted)}
.admin-tools .calendar-action{min-height:44px;padding:12px 18px;border:1px solid var(--ui-border);border-radius:13px;background:var(--ui-surface);box-shadow:none;color:var(--ui-muted);font-size:14px;font-weight:600}
.admin-tools.owner-navigation{display:flex;gap:10px}
.owner-navigation .calendar-action,.calendar-menu{min-height:48px;flex:1;background:var(--ui-selected);color:var(--ui-primary-hover);border:1px solid var(--ui-border);border-radius:13px;padding:12px 18px;font:650 15px/1.3 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;text-align:center;cursor:pointer}
@media(max-width:700px){.manager-back{font-size:14px;min-height:44px;margin-bottom:16px}.admin-tools .calendar-action{font-size:13px;min-height:44px;padding:11px 14px}.owner-navigation .calendar-action,.calendar-menu{font-size:14px;min-height:46px;padding:12px}}
@media(min-width:701px){.catalog-actions{display:grid;grid-template-columns:minmax(0,1fr) auto}.catalog-actions #catalog-connect{grid-column:1/-1}}


html:has(body.catalog-page){overflow:auto}
.manager-page.catalog-page{height:auto;min-height:100dvh;overflow:auto}
.manager-page.catalog-page main{height:auto;min-height:100dvh}
.manager-page.catalog-page .panel{height:auto;min-height:100dvh;justify-content:flex-start;align-items:stretch;padding:24px}
#widget-catalog{transform:none;transform-origin:top left}
.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.catalog-toolbar .manager-back{margin:0;min-height:40px;padding:9px 14px;font-size:13px;white-space:nowrap}
#catalog-community{font-size:12px;color:var(--ui-muted);text-align:right;overflow-wrap:anywhere;max-width:55%}
.catalog-heading h1{font-size:28px;letter-spacing:-.7px;margin:0 0 7px}
.catalog-heading p{font-size:13px;line-height:1.4}
.catalog-card{grid-template-columns:74px minmax(0,1fr) auto;align-items:center;gap:18px;padding:18px 20px;margin-top:20px;border-radius:24px;background:linear-gradient(115deg,var(--ui-surface),var(--ui-surface))}
.catalog-calendar{width:74px;height:74px}
.catalog-calendar svg{display:block;width:100%;height:100%;filter:drop-shadow(0 3px 5px var(--ui-primary-a12))}
.catalog-content h2{font-size:19px;line-height:1.25;letter-spacing:-.35px;margin:0 0 5px}
.catalog-content p{font-size:12px;line-height:1.4;margin:0 0 7px;color:var(--ui-muted)}
.catalog-state{font-size:10px;line-height:1.3;padding:3px 8px;background:var(--ui-surface);color:var(--ui-muted)}
.catalog-actions{display:flex;flex-direction:row;flex-wrap:nowrap;gap:7px;margin:0;align-items:center}
.catalog-actions #catalog-connect{grid-column:auto}
.catalog-actions button{min-height:40px;padding:10px 12px;border-radius:11px;font-size:12px;line-height:1.25;white-space:nowrap}
@media(max-width:820px){.catalog-card{grid-template-columns:68px minmax(0,1fr);gap:12px 16px}.catalog-calendar{width:68px;height:68px}.catalog-actions{grid-column:2;justify-content:flex-start}.catalog-actions button{padding:9px 14px}}
@media(max-width:700px){
 .manager-page.catalog-page .panel{padding:16px 14px}.catalog-toolbar{margin-bottom:17px;gap:12px}.catalog-toolbar .manager-back{min-height:40px;padding:9px 12px;font-size:12px}#catalog-community{font-size:10px;line-height:1.4;max-width:51%}
 .catalog-heading h1{font-size:23px;letter-spacing:-.5px}.catalog-heading p{font-size:12px;max-width:290px}.catalog-card{grid-template-columns:58px minmax(0,1fr);gap:12px;padding:14px;margin-top:16px;border-radius:22px}.catalog-calendar{width:58px;height:58px}.catalog-content h2{font-size:16px;margin-bottom:4px}.catalog-content p{font-size:11px;margin-bottom:6px}.catalog-state{font-size:9px;padding:2px 7px}
 .catalog-actions{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.catalog-actions button{min-height:40px;padding:8px 5px;font-size:11px;white-space:normal;border-radius:10px}
}

.catalog-state.is-connected{color:var(--ui-green);background:var(--ui-green-soft)}
.catalog-actions #catalog-connect.is-disconnect{background:var(--ui-surface);color:var(--ui-red);border:1px solid var(--ui-border)}
#catalog-status{font-size:12px;color:var(--ui-muted);margin:12px 0 0}#catalog-status:empty{display:none}
#disconnect-dialog #confirm-disconnect{background:var(--ui-red)}
#disconnect-dialog #cancel-disconnect{background:var(--ui-selected);color:var(--ui-muted);margin-top:9px}
@media(max-width:700px){.catalog-actions{align-items:stretch}.catalog-actions button{min-height:44px}}

.catalog-calendar img{display:block;width:100%;height:100%;object-fit:contain;border-radius:12px;border:1px solid var(--ui-border);box-shadow:0 3px 9px var(--ui-ink-a0a)}
.settings-community{font-size:12px;color:var(--ui-muted);max-width:55%;text-align:right;overflow-wrap:anywhere}
.settings-card{margin-top:22px;border:1px solid var(--ui-border);border-radius:22px;padding:22px;background:var(--ui-surface)}
.settings-section-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.settings-section-heading h2{font-size:19px;margin:0;color:var(--ui-ink)}.settings-section-heading span{font-size:12px;color:var(--ui-muted);background:var(--ui-selected);padding:5px 10px;border-radius:20px;white-space:nowrap}
.settings-help{font-size:13px;color:var(--ui-muted);line-height:1.5;margin:9px 0 18px}
.settings-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.holiday-option{display:flex;position:relative;align-items:center;gap:14px;min-height:72px;padding:14px;border:1px solid var(--ui-border);border-radius:14px;background:var(--ui-surface);cursor:pointer}.holiday-option>span:first-child{flex:1;min-width:0}.holiday-option strong{display:block;font-size:13px;font-weight:650;line-height:1.4;color:var(--ui-primary-hover)}.holiday-option small{display:block;font-size:11px;color:var(--ui-muted);margin-top:4px}
.holiday-option input{position:absolute;right:14px;width:40px;height:24px;opacity:0;cursor:pointer;z-index:1;margin:0}.holiday-switch{width:40px;height:24px;flex-shrink:0;background:var(--ui-bg);border-radius:20px;position:relative;transition:background .15s}.holiday-switch:before{content:'';position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:var(--ui-surface);box-shadow:0 1px 3px var(--ui-ink-a20);transition:transform .15s}.holiday-option input:checked+.holiday-switch{background:var(--ui-primary)}.holiday-option input:checked+.holiday-switch:before{transform:translateX(16px)}.holiday-option input:focus-visible+.holiday-switch{outline:3px solid var(--ui-border);outline-offset:3px}.holiday-option input:disabled+.holiday-switch{opacity:.5}
.settings-footer{position:sticky;bottom:0;margin-top:16px;padding:12px 0 0;background:var(--ui-surface-af5);backdrop-filter:blur(10px)}.settings-footer p{font-size:12px;color:var(--ui-muted);margin:0 0 9px;min-height:17px}.settings-footer-actions{display:flex;justify-content:flex-end;gap:10px}.settings-footer button{border:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-muted);font:650 13px -apple-system,sans-serif;border-radius:12px;min-height:44px;padding:12px 18px;cursor:pointer}.settings-footer #settings-save{background:var(--ui-primary);color:var(--ui-surface);border-color:var(--ui-primary)}.settings-footer button:disabled{opacity:.45;cursor:default}
@media(max-width:700px){.settings-community{font-size:10px;max-width:51%}.settings-card{padding:15px;margin-top:18px;border-radius:18px}.settings-list{grid-template-columns:1fr;gap:8px}.settings-help{font-size:12px}.holiday-option{min-height:65px;padding:12px}.holiday-option strong{font-size:13px}.settings-section-heading h2{font-size:17px}.settings-section-heading span{font-size:10px}.settings-footer-actions{gap:8px}.settings-footer button{flex:1;padding:11px 9px;font-size:12px}}

.settings-accordion{margin-top:14px;border:1px solid var(--ui-border);border-radius:19px;background:var(--ui-surface);overflow:hidden}
.settings-accordion>summary{display:flex;justify-content:space-between;align-items:center;gap:16px;cursor:pointer;list-style:none;padding:18px 20px;min-height:76px}.settings-accordion>summary::-webkit-details-marker{display:none}.settings-accordion summary strong{display:block;font-size:16px;color:var(--ui-ink)}.settings-accordion summary small{display:block;font-size:12px;color:var(--ui-muted);margin-top:4px}.accordion-arrow{font-size:22px;color:var(--ui-muted);transition:transform .15s}.settings-accordion[open] .accordion-arrow{transform:rotate(180deg)}.settings-accordion>summary:focus-visible{outline:3px solid var(--ui-border);outline-offset:-4px}
.accordion-content{padding:0 20px 20px}.accordion-content .settings-help{margin:0 0 14px}
.appearance-layout{display:grid;grid-template-columns:180px minmax(0,1fr);gap:24px;align-items:center;margin-top:5px}.appearance-preview{margin:0}.appearance-preview img{display:block;width:180px;height:180px;object-fit:contain;border:1px solid var(--ui-border);border-radius:18px;background:var(--ui-surface)}.appearance-preview figcaption{font-size:11px;color:var(--ui-muted);text-align:center;margin-top:7px}.appearance-toggles{display:grid;gap:10px}.appearance-toggles .holiday-option{min-height:77px}
.appearance-palette-heading{display:flex;gap:16px;justify-content:space-between;align-items:center;margin:20px 0 12px}.appearance-palette-heading h3{font-size:13px;color:var(--ui-primary-hover);margin:0}.appearance-palette-heading p{font-size:11px;color:var(--ui-muted);margin:0;text-align:right}.appearance-presets{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.appearance-preset{padding:10px;border:1px solid var(--ui-border);border-radius:13px;background:var(--ui-surface);cursor:pointer;font:inherit;color:var(--ui-muted);text-align:center}.appearance-preset.is-selected{border-color:var(--ui-primary);background:var(--ui-surface);box-shadow:0 0 0 1px var(--ui-focus-soft)}.palette-swatch{height:34px;display:block;border-radius:8px;margin-bottom:8px}.appearance-preset strong{font-size:11px;font-weight:650}.appearance-preset:disabled{opacity:.5;cursor:default}
@media(max-width:700px){.settings-accordion{margin-top:12px;border-radius:16px}.settings-accordion>summary{padding:15px;min-height:68px}.settings-accordion summary strong{font-size:15px}.settings-accordion summary small{font-size:11px}.accordion-content{padding:0 14px 15px}.appearance-layout{grid-template-columns:104px minmax(0,1fr);gap:12px}.appearance-preview img{width:104px;height:104px;border-radius:12px}.appearance-preview figcaption{font-size:10px}.appearance-toggles{gap:8px}.appearance-toggles .holiday-option{min-height:61px;padding:10px;gap:8px}.appearance-toggles .holiday-option strong{font-size:11px}.appearance-toggles .holiday-option small{font-size:10px}.appearance-toggles .holiday-switch{width:34px;height:22px}.appearance-toggles .holiday-switch:before{width:16px;height:16px}.appearance-toggles input:checked+.holiday-switch:before{transform:translateX(12px)}.appearance-toggles input{width:34px;height:22px;right:10px}.appearance-palette-heading{margin-top:17px;gap:10px}.appearance-palette-heading p{font-size:10px;max-width:130px}.appearance-presets{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.appearance-preset{padding:8px}.appearance-preset strong{font-size:10px}.palette-swatch{height:25px;margin-bottom:6px}}

.settings-accordion{border-color:var(--ui-border);box-shadow:0 3px 0 var(--ui-focus-soft),0 8px 22px var(--ui-ink-a08);transition:box-shadow .15s,border-color .15s}
.settings-accordion>summary{background:linear-gradient(var(--ui-surface),var(--ui-surface));transition:background .15s,transform .12s}
.settings-accordion>summary:hover{background:linear-gradient(var(--ui-surface),var(--ui-selected))}
.settings-accordion>summary:active{transform:translateY(1px);box-shadow:inset 0 2px 5px var(--ui-ink-a12)}
.settings-accordion[open]{border-color:var(--ui-border);box-shadow:0 3px 0 var(--ui-focus-soft),0 8px 25px var(--ui-ink-a09)}
.accordion-arrow{display:flex;align-items:center;justify-content:center;width:34px;height:34px;flex-shrink:0;border-radius:50%;background:linear-gradient(var(--ui-surface),var(--ui-selected));border:1px solid var(--ui-border);box-shadow:0 2px 3px var(--ui-ink-a12);font-size:20px}
.appearance-presets{grid-template-columns:repeat(6,minmax(0,1fr))}
.settings-footer #settings-reset:not(:disabled){background:var(--ui-surface);border-color:var(--ui-border);color:var(--ui-red)}
.catalog-card{grid-template-columns:104px minmax(0,1fr) auto}.catalog-calendar{width:104px;height:104px}
@media(max-width:820px){.catalog-card{grid-template-columns:92px minmax(0,1fr)}.catalog-calendar{width:92px;height:92px}}
@media(max-width:700px){.appearance-presets{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-card{grid-template-columns:82px minmax(0,1fr)}.catalog-calendar{width:82px;height:82px}.accordion-arrow{width:30px;height:30px;font-size:18px}}


body.calendar-page main{max-width:none}

body.access-layout main{max-width:1200px;height:100%;padding:0}body.access-layout .panel{height:100%;padding:24px 28px;border:0;border-radius:0;box-shadow:none;align-items:stretch;justify-content:flex-start;overflow-y:auto;background:var(--ui-surface)}body.access-layout{height:100dvh;overflow:hidden;background:var(--ui-surface)}
@media(max-width:700px){body.access-layout .panel{padding:16px}}

.calendar-mail-subscribe{padding:10px 14px;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-surface);color:var(--ui-muted);font:600 12px -apple-system,sans-serif;cursor:pointer}.admin-tools:has(.calendar-mail-subscribe:not([hidden])){flex-wrap:wrap}

.community-toolbar{display:flex;justify-content:flex-end;flex-shrink:0;margin:0 0 10px}.appearance-layout{align-items:start}.appearance-toggles{height:180px;grid-template-rows:repeat(2,minmax(0,1fr))}.appearance-toggles .holiday-option{min-height:0;height:100%}@media(max-width:700px){.community-toolbar{margin-bottom:8px}.appearance-toggles{height:104px;gap:8px}.appearance-toggles .holiday-option{min-height:0;padding:6px 8px}.appearance-toggles .holiday-option small{display:none}}
.community-toolbar{width:100%}.manager-page .panel{justify-content:flex-start}


body.access-layout main{display:block;width:100%;height:100dvh;min-height:100dvh;align-items:stretch}body.access-layout .panel{width:100%;min-width:0;height:100%;min-height:100%;flex:0 0 100%}

.access-admin-panel{margin-top:18px;border:1px solid var(--ui-border);border-radius:18px;background:var(--ui-surface);flex-shrink:0}
.access-admin-panel summary{display:flex;justify-content:space-between;align-items:center;list-style:none;cursor:pointer;padding:17px 20px;color:var(--ui-primary-hover)}
.access-admin-panel summary::-webkit-details-marker{display:none}.access-admin-panel summary strong,.access-admin-panel summary small{display:block}.access-admin-panel summary strong{font-size:16px}.access-admin-panel summary small{font-size:11px;color:var(--ui-muted);margin-top:4px}
.access-admin-content{padding:0 20px 18px}.access-admin-content>p{font-size:12px;line-height:1.5;color:var(--ui-muted)}
#access-grant-form{display:grid;grid-template-columns:minmax(0,1fr) 150px auto;gap:12px;align-items:end}#access-grant-form label{display:grid;gap:6px;font-size:11px;color:var(--ui-muted)}#access-grant-form select{min-width:0;width:100%;border:1px solid var(--ui-border);border-radius:10px;background:var(--ui-surface);color:var(--ui-primary-hover);padding:11px;font:12px system-ui}
#access-grant{border:0;border-radius:10px;padding:12px 16px;background:var(--ui-primary);color:var(--ui-surface);font:600 12px system-ui;cursor:pointer}#access-grant:disabled{opacity:.5;cursor:default}
.access-grant-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--ui-border)}.access-grant-row strong{display:block;font-size:13px;color:var(--ui-primary-hover);overflow-wrap:anywhere}.access-grant-row small{display:block;font-size:11px;color:var(--ui-muted);margin-top:5px}.access-grant-row button{flex-shrink:0;padding:8px 12px;border:1px solid var(--ui-border);border-radius:9px;background:var(--ui-surface);color:var(--ui-red);cursor:pointer;font:12px system-ui}
@media(max-width:700px){#access-grant-form{grid-template-columns:minmax(0,1fr) 110px}#access-grant{grid-column:1/-1}.access-admin-content{padding:0 14px 14px}.access-admin-panel summary{padding:14px}.access-admin-panel summary strong{font-size:14px}}

.community-toolbar{justify-content:center;margin-bottom:18px}@media(max-width:700px){.community-toolbar{margin-bottom:16px}}


.community-toolbar{max-width:1144px;align-self:center;align-items:center;justify-content:space-between;gap:12px;margin:0 auto 20px;min-height:40px}
.community-toolbar:has(.app-back[hidden]){justify-content:flex-end}
.app-back{flex-shrink:0;min-height:40px;padding:10px 14px;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-surface);color:var(--ui-muted);font:650 13px system-ui;cursor:pointer;white-space:nowrap}
.app-back:hover{background:var(--ui-selected)}.app-back:focus-visible{outline:2px solid var(--ui-primary);outline-offset:3px}.catalog-toolbar{display:none}
.manager-heading{margin-top:0}
@media(max-width:700px){
 .community-toolbar{margin-bottom:16px;gap:8px;min-height:38px}.app-back{min-height:38px;padding:8px 10px;font-size:11px;border-radius:10px}
}


.community-toolbar{align-items:stretch}.app-back{display:flex;align-items:center;justify-content:center}
@media(max-width:700px){
 .community-toolbar{align-items:stretch}.app-back{min-height:50px}
}
@media(max-width:700px){.community-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.community-toolbar .app-back{width:100%;margin:0}.community-toolbar:has(.app-back[hidden]){display:flex;justify-content:flex-end}}


body:has(#community-toolbar:not([hidden])) main{max-width:1200px;margin-left:auto;margin-right:auto;padding:0}
body:has(#community-toolbar:not([hidden])) .panel{padding:24px 28px;align-items:stretch;justify-content:flex-start}
.community-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;width:100%;height:52px;min-height:52px;max-width:1144px;margin:0 auto 20px;gap:16px;flex-shrink:0}
.community-toolbar:has(.app-back[hidden]){display:grid;justify-content:normal}
.hub-community-summary{min-width:0;height:52px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.hub-community-summary .manager-label{font-size:10px;line-height:1.2;margin:0 0 4px}
.hub-community-summary #hub-community{margin:0;font-size:15px;line-height:1.4;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.community-toolbar .app-back{justify-self:start;height:52px;min-height:52px;margin:0;width:auto}
@media(max-width:700px){
 body:has(#community-toolbar:not([hidden])) .panel{padding:16px}
 .community-toolbar,.community-toolbar:has(.app-back[hidden]){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);height:56px;min-height:56px;gap:10px;margin:0 auto 16px}
 .community-toolbar .app-back{width:100%;height:56px;min-height:56px;padding:7px 9px;justify-self:stretch}
 .hub-community-summary{height:56px}.hub-community-summary .manager-label{font-size:8px;letter-spacing:1px}.hub-community-summary #hub-community{font-size:12px;line-height:1.3;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
}


.manager-heading{grid-template-columns:minmax(0,1fr) 240px;gap:22px;padding:20px 24px;margin-bottom:16px;border:1px solid var(--ui-border);border-radius:22px;background:linear-gradient(110deg,var(--ui-surface),var(--ui-surface))}
.manager-heading h1{font-size:clamp(30px,3.5vw,40px);line-height:1.12;margin-bottom:12px}
.manager-heading p:last-child{font-size:14px;line-height:1.5}.manager-art{width:240px;height:156px;justify-self:end}
#hub-mail em,#hub-widgets em{color:var(--ui-green);background:var(--ui-surface-ad9)}
.community-toolbar .app-back{border-color:var(--ui-border);background:var(--ui-selected);color:var(--ui-primary-hover);box-shadow:0 2px 5px var(--ui-ink-a10);font-weight:700}
.community-toolbar .app-back:hover{background:var(--ui-selected);border-color:var(--ui-border)}.community-toolbar .app-back:focus-visible{outline-color:var(--ui-primary)}
@media(max-width:700px){
 .manager-heading{grid-template-columns:minmax(0,1fr) 96px;padding:16px;gap:12px;border-radius:18px;margin-bottom:14px}.manager-heading h1{font-size:25px;letter-spacing:-.7px;margin-bottom:8px}.manager-heading p:last-child{font-size:12px}.manager-art{width:96px;height:100px}
}
@media(max-width:700px){
 .manager-heading{grid-template-columns:1.5fr 1fr;padding:0;gap:8px;margin-bottom:14px;border:0;border-radius:0;background:var(--ui-surface)}.manager-heading h1{font-size:28px;letter-spacing:-1px;margin-bottom:10px}.manager-heading p:last-child{font-size:13px}.manager-art{width:100%;height:130px}
}

@media(max-width:700px){.community-toolbar .app-back{font-size:clamp(14px,4vw,15px);line-height:1.3}}

.catalog-coming{display:flex;align-items:center;gap:16px;margin-top:18px;padding:20px 22px;border:1px dashed var(--ui-border);border-radius:18px;background:var(--ui-surface)}
.catalog-coming-icon{display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;border-radius:12px;background:var(--ui-selected);color:var(--ui-muted)}
.catalog-coming-icon svg{width:23px;height:23px}
.catalog-coming h2{margin:0 0 6px;font-size:17px;line-height:1.3;color:var(--ui-muted);font-weight:650;letter-spacing:0}
.catalog-coming p{margin:0;font-size:13px;line-height:1.5;color:var(--ui-muted);max-width:600px}
@media(max-width:700px){.catalog-coming{align-items:flex-start;gap:12px;padding:16px;margin-top:16px;border-radius:16px}.catalog-coming-icon{width:34px;height:34px;border-radius:10px}.catalog-coming-icon svg{width:20px;height:20px}.catalog-coming h2{font-size:15px}.catalog-coming p{font-size:12px}}

#calendar-settings .settings-accordion{border:1px solid var(--ui-border);background:var(--ui-surface);box-shadow:0 3px 12px var(--ui-ink-a04)}
#calendar-settings .settings-accordion>summary{background:var(--ui-surface)}
#calendar-settings .settings-accordion>summary:hover{background:var(--ui-surface)}
#calendar-settings .settings-accordion summary strong{color:var(--ui-ink)}
#calendar-settings .settings-accordion summary small{color:var(--ui-muted)}
#calendar-settings .settings-accordion .accordion-arrow{background:var(--ui-bg);border-color:var(--ui-border);color:var(--ui-muted);box-shadow:none}
#holiday-settings-section>summary{border-left:4px solid var(--ui-primary)}
#appearance-settings-section>summary{border-left:4px solid var(--ui-primary)}
#calendar-settings .settings-accordion[open]>summary{border-bottom:1px solid var(--ui-border)}
#calendar-settings #settings-reset{background:var(--ui-surface);border-color:var(--ui-border);color:var(--ui-red)}
#calendar-settings #settings-reset:hover:not(:disabled){background:var(--ui-red-soft)}
#calendar-settings #settings-save{background:var(--ui-primary);border-color:var(--ui-primary);color:var(--ui-surface)}
#calendar-settings .settings-footer button:disabled{opacity:1;background:var(--ui-bg);border-color:var(--ui-border);color:var(--ui-muted)}
#calendar-settings .settings-footer #settings-reset:disabled{background:var(--ui-surface);border-color:var(--ui-border);color:var(--ui-muted)}

.settings-leave-dialog{width:min(420px,calc(100vw - 32px));padding:26px;border:1px solid var(--ui-border);border-radius:20px;color:var(--ui-ink);background:var(--ui-surface);box-shadow:0 24px 80px var(--ui-ink-a26)}
.settings-leave-dialog::backdrop{background:var(--ui-backdrop)}
.settings-leave-dialog h2{margin:0 0 12px;font-size:23px;line-height:1.25}
.settings-leave-dialog p{color:var(--ui-muted);font-size:14px;line-height:1.5;margin:0 0 16px}
.settings-leave-dialog #settings-leave-status:empty{display:none}
.settings-leave-dialog>div{display:grid;gap:10px}
.settings-leave-dialog button{font:650 14px system-ui;padding:13px;border-radius:12px;cursor:pointer;border:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-muted)}
.settings-leave-dialog #settings-leave-save{background:var(--ui-primary);color:var(--ui-surface);border-color:var(--ui-primary)}
.settings-leave-dialog #settings-leave-discard{background:var(--ui-surface);border-color:var(--ui-border);color:var(--ui-red)}
.settings-leave-dialog button:disabled{opacity:.5;cursor:default}
#calendar-settings .settings-footer #settings-save:disabled{background:var(--ui-bg);border-color:var(--ui-border);color:var(--ui-muted)}
@media(min-width:821px){
 .manager-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
 .manager-tile{grid-template-columns:minmax(0,1fr);grid-template-rows:72px 1fr;position:relative;align-items:start;gap:10px;padding:20px}
 .manager-tile img,.manager-tile svg{width:72px;height:72px}
 .manager-tile>span{display:flex;flex-direction:column;align-items:flex-start;height:100%;min-width:0}
 .manager-tile strong{font-size:22px}.manager-tile small{font-size:13px;line-height:1.45;margin-bottom:12px}
 .manager-tile em{margin-top:auto}.manager-tile b{position:absolute;right:20px;bottom:20px;top:auto;font-size:24px}
}
body.manager-page .panel{overflow-y:auto;justify-content:flex-start}.manager-screen{flex-shrink:0}

.welcome-page .panel:has(.install:not([hidden])){overflow-y:auto;justify-content:flex-start}
.welcome-feature:nth-child(4){background:var(--ui-green-soft);border-color:var(--ui-border)}.welcome-feature:nth-child(5){background:var(--ui-selected);border-color:var(--ui-border)}.welcome-feature:nth-child(6){background:var(--ui-selected);border-color:var(--ui-border)}
.welcome-feature>svg{display:block;width:72px;height:72px;align-self:start;flex-shrink:0}
@media(min-width:701px){
 .welcome-art{height:160px}.welcome-hero h1{font-size:40px;margin-bottom:12px}.welcome-hero h2{font-size:18px}
 .welcome-feature{grid-template-rows:64px 1fr;padding:18px;gap:10px}
 .welcome-feature>img,.welcome-feature>svg{width:64px;height:64px;max-height:none;justify-self:start;margin:0}
 .welcome-feature-copy{grid-template-rows:auto auto;font-size:20px;gap:8px}
 .install .welcome-feature p{font-size:13px}
}
@media(max-width:700px){
 .welcome-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .welcome-feature{grid-template-columns:minmax(0,1fr);grid-template-rows:54px 1fr;padding:14px;gap:10px}
 .welcome-feature>img,.welcome-feature>svg{width:54px;height:54px}
 .welcome-feature-copy{display:flex;flex-direction:column;align-items:flex-start;font-size:15px;gap:8px}
 .install .welcome-feature p{font-size:12px}.welcome-feature
}

#access-grant-form .access-community-ref{grid-column:1/-1;grid-row:2}#access-community-ref{width:100%;border:1px solid var(--ui-border);border-radius:10px;padding:11px;font:14px system-ui;background:var(--ui-surface);color:var(--ui-muted)}

.access-community-link{display:inline-block;color:var(--ui-primary-hover);text-decoration:none;font-size:13px;line-height:1.5;margin-top:6px;font-weight:600}.access-community-link:hover{text-decoration:underline}.access-community-link:focus-visible{outline:2px solid var(--ui-primary);outline-offset:3px}.welcome-page .panel:has(.install:not([hidden])){overflow:hidden}
.welcome-page .panel:has(.install:not([hidden])){overflow-x:hidden;overflow-y:auto}
@media(min-width:821px){.welcome-page .panel:has(.install:not([hidden])){padding-inline:clamp(16px,1.2vw,20px)}}
@media(max-width:700px){
 .welcome-art{height:110px}.welcome-hero h1{font-size:25px}.welcome-hero h2{font-size:12px}
 .welcome-feature{grid-template-rows:38px 1fr;padding:11px;gap:6px}.welcome-feature>img,.welcome-feature>svg{width:38px;height:38px}.welcome-feature-copy{font-size:14px;gap:5px}.install .welcome-feature p{font-size:11px}.welcome-feature
}

#access-grant-form{align-items:start;grid-template-columns:minmax(0,1fr) 150px auto;gap:10px 12px}
#access-grant-form .access-community-choice{grid-column:1;grid-row:1}
#access-grant-form .access-duration-choice{grid-column:2;grid-row:1}
#access-grant-form select{height:44px;font-size:13px}
#access-grant-form #access-grant{grid-column:3;grid-row:1;align-self:end;min-height:44px;margin:0}
#access-grant-form #access-selected-link{grid-column:1/-1;grid-row:2;justify-self:start;margin:0}
#access-grant-form .access-community-ref{grid-column:1/-1;grid-row:3;margin-top:4px}
.access-summary-end{display:flex;align-items:center;gap:16px}.access-community-total{padding:6px 11px;border-radius:20px;background:var(--ui-selected);color:var(--ui-muted);font-size:12px;font-weight:600;white-space:nowrap}
@media(max-width:700px){
 #access-grant-form{grid-template-columns:minmax(0,1fr) 100px}
 #access-grant-form #access-grant{grid-column:1/-1;grid-row:2;width:100%;margin-top:4px}
 .access-summary-end{gap:8px;flex-direction:column;align-items:flex-end}.access-community-total{font-size:10px;padding:5px 8px}
}

@media(max-width:600px){
 body.calendar-page{background:var(--ui-surface)}
 body.calendar-page main{padding:0;max-width:none;width:100%}
 body.calendar-page .panel{padding:14px 10px;border:0;border-radius:0;box-shadow:none;overflow-y:auto}
 body.calendar-page .holidays{flex:0 0 auto;width:100%}
 body.calendar-page .holiday-grid{margin:0 auto}
 body.calendar-page .admin-tools{margin-top:12px}
}

#access-grant-form .access-community-ref{grid-column:1;grid-row:1;margin-top:0}
#access-grant-form #access-community-ref{height:44px;font-size:13px}
.access-grant-row>div{flex:1;min-width:0}
.access-grant-row .access-edit-button{color:var(--ui-primary-hover);border-color:var(--ui-border);background:var(--ui-selected);white-space:nowrap}
.access-edit-dialog label{display:grid;gap:8px;font-size:13px;color:var(--ui-muted);margin:16px 0 8px}
.access-edit-dialog select{width:100%;padding:12px;border:1px solid var(--ui-border);background:var(--ui-surface);border-radius:10px;color:var(--ui-muted);font:14px system-ui}
.access-edit-dialog small{display:block;font-size:12px;line-height:1.5;color:var(--ui-muted);margin-bottom:16px}
.access-edit-dialog #access-edit-save{background:var(--ui-primary);color:var(--ui-surface);border-color:var(--ui-primary)}
.access-edit-dialog #access-edit-cancel{background:var(--ui-surface);border-color:var(--ui-border);color:var(--ui-red)}
@media(max-width:700px){.access-grant-row{flex-wrap:wrap}.access-grant-row>div{flex-basis:100%}.access-grant-row button{flex:1;min-height:40px}}.settings-cancel{background:var(--ui-surface)!important;color:var(--ui-red)!important;border-color:var(--ui-border)!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.widget-preview-dialog{width:min(780px,calc(100vw - 28px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid var(--ui-border);border-radius:22px;padding:20px;background:var(--ui-surface);color:var(--ui-ink);box-shadow:0 24px 80px var(--ui-ink-a28)}.widget-preview-dialog::backdrop{background:var(--ui-backdrop)}.widget-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px;color:var(--ui-muted);font-size:12px}.widget-preview-toolbar button{background:var(--ui-bg);border:1px solid var(--ui-border);color:var(--ui-muted);font-size:24px;line-height:1;padding:6px 10px;border-radius:10px;min-height:36px}.widget-native-preview{border:1px solid var(--ui-border);border-radius:16px;overflow:hidden;background:var(--ui-surface)}.widget-native-preview h2{font-size:18px;margin:0;padding:18px 20px;color:var(--ui-ink)}.widget-preview-action{font-size:15px;font-weight:600;color:var(--ui-muted);text-align:center;padding:16px;border-top:1px solid var(--ui-border)}.widget-preview-tiles{display:flex;gap:10px;padding:0 16px 16px;overflow:auto}.widget-preview-tiles img{width:calc((100% - 20px)/3);height:auto;aspect-ratio:1;border-radius:12px;flex-shrink:0}.widget-native-preview>p{padding:0 20px;color:var(--ui-muted)}.widget-preview-dialog #widget-preview-status:empty{display:none}
@media(max-width:600px){.widget-preview-dialog{padding:12px;border-radius:18px}.widget-preview-toolbar{font-size:11px;gap:6px}.widget-native-preview h2{font-size:16px;padding:14px}.widget-preview-action{font-size:13px;padding:14px}.widget-preview-tiles{gap:8px;padding:0 10px 12px}.widget-preview-tiles img{width:calc((100% - 16px)/3)}}

.widget-native-preview.has-preview-states{border:0;border-radius:0;overflow:visible}.widget-preview-state+.widget-preview-state{margin-top:20px}.widget-preview-state-label{font-size:12px;color:var(--ui-muted);font-weight:600;margin:0 0 8px 2px}.widget-preview-state-card{border:1px solid var(--ui-border);border-radius:16px;background:var(--ui-surface);overflow:hidden}.widget-preview-states-note{font-size:12px;line-height:1.5;color:var(--ui-muted);margin:16px 0 0!important;padding:0!important}.widget-preview-state-card h2{font-size:16px;padding:14px 18px}.widget-preview-state-card .widget-preview-action{padding:12px;font-size:14px}.widget-preview-dialog:has(.has-preview-states){width:min(780px,calc(100vw - 28px))}
@media(max-width:600px){.widget-preview-state+.widget-preview-state{margin-top:16px}.widget-preview-state-card h2{font-size:14px;padding:12px}.widget-preview-state-card .widget-preview-action{font-size:12px;padding:12px}.widget-preview-states-note{font-size:11px}}
.home-community-avatar{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:50%;background:var(--ui-selected);color:var(--ui-primary-hover);font-size:19px;font-weight:650}
.home-community-copy{min-width:0;display:flex;flex-direction:column;gap:2px}
.home-community-copy>span{font-size:12px;line-height:1.4;color:var(--ui-muted)}
@media(max-width:700px){
 .home-community-avatar{flex-basis:32px;width:32px;height:32px;font-size:15px}
 .home-community-copy>span{font-size:10px}
}

.home-community-avatar{position:relative;overflow:hidden}
.home-community-avatar #hub-community-photo{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}


body.access-layout .community-toolbar{height:64px;min-height:64px;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:0 0 12px;margin-bottom:8px;border-bottom:1px solid var(--ui-border)}
body.access-layout .community-toolbar #app-back{height:42px;min-height:42px;width:auto;padding:9px 14px;margin:0;justify-self:start;background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:10px;box-shadow:none;color:var(--ui-primary-hover);font-size:14px;line-height:1.4;font-weight:650;white-space:nowrap}
@media(max-width:700px){
 body.access-layout .community-toolbar{height:64px;min-height:64px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;padding-bottom:8px;margin-bottom:8px}
 body.access-layout .community-toolbar #app-back{height:44px;min-height:44px;font-size:14px;padding:9px 12px}
}
@media(max-width:359px){body.access-layout .community-toolbar #app-back{font-size:13px;padding:9px}}


body.access-layout .community-toolbar{height:52px;min-height:52px;padding-bottom:6px}
body.access-layout .panel{padding:12px 24px}
@media(max-width:700px){
 body.access-layout .community-toolbar{height:56px;min-height:56px}
}


.access-admin-panel{background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:14px;margin-top:14px}
.access-admin-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px}
.access-admin-summary strong,.access-admin-summary small{display:block}
.access-admin-summary strong{font-size:15px;color:var(--ui-ink)}
.access-admin-summary small{margin-top:4px;color:var(--ui-muted);font-size:12px}
#access-admin-open{flex:none;border:1px solid var(--ui-primary);background:var(--ui-selected);color:var(--ui-primary-hover);border-radius:10px;padding:10px 14px;font:650 13px system-ui;cursor:pointer}
.access-admin-dialog{width:min(880px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:0;border:1px solid var(--ui-border);border-radius:18px;background:var(--ui-surface);color:var(--ui-ink);box-shadow:0 20px 80px var(--ui-ink-a30)}
.access-admin-dialog[open]{display:flex;flex-direction:column}
.access-admin-dialog::backdrop{background:var(--ui-backdrop)}
.access-admin-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;border-bottom:1px solid var(--ui-border);flex:none}
.access-admin-dialog-heading h2{margin:0;font-size:21px;line-height:1.3}
.access-admin-dialog-heading p{margin:5px 0 0;font-size:13px;color:var(--ui-muted)}
#access-admin-close{flex:none;width:38px;height:38px;border:1px solid var(--ui-border);border-radius:10px;background:var(--ui-surface);color:var(--ui-muted);font:26px system-ui;cursor:pointer}
.access-admin-dialog .access-admin-content{padding:4px 24px 20px;overflow-y:auto;overscroll-behavior:contain;min-height:0}
.access-admin-dialog #access-grant-form{grid-template-columns:minmax(0,1fr) 130px auto;align-items:end}
.access-admin-dialog #access-grant-form .access-community-ref{grid-column:auto;grid-row:auto}
.access-admin-dialog #access-community-ref,.access-admin-dialog #access-duration{height:44px;font-size:14px;border-color:var(--ui-border);color:var(--ui-primary-hover)}
.access-admin-dialog #access-grant{height:44px;background:var(--ui-primary);color:var(--ui-surface)}
.access-admin-dialog .access-grant-row{gap:12px;border-color:var(--ui-border)}
.access-admin-dialog .access-grant-row>div{flex:1;min-width:0}
.access-admin-dialog .access-community-link{overflow-wrap:anywhere}
@media(max-width:700px){
 .access-admin-summary{padding:13px;gap:10px}.access-admin-summary strong{font-size:14px}
 #access-admin-open{padding:10px;font-size:12px}
 .access-admin-dialog{max-height:calc(100dvh - 24px);width:calc(100vw - 24px)}
 .access-admin-dialog-heading{padding:16px}.access-admin-dialog-heading h2{font-size:18px}
 .access-admin-dialog .access-admin-content{padding:0 16px 16px}
 .access-admin-dialog #access-grant-form{grid-template-columns:minmax(0,1fr) 112px}
 .access-admin-dialog #access-grant-form .access-community-ref{grid-column:1/-1}
 .access-admin-dialog #access-grant{grid-column:1;grid-row:2}
 .access-admin-dialog .access-duration-choice{grid-column:2;grid-row:2}
 .access-admin-dialog .access-grant-row{flex-wrap:wrap;gap:8px}
 .access-admin-dialog .access-grant-row>div{flex-basis:100%}
}


body.access-layout:has(.is-report-view:not([hidden]),.is-recipient-view:not([hidden])) .panel{overflow:hidden}
@media(max-width:700px){
 body.access-layout:has(.is-report-view:not([hidden]),.is-recipient-view:not([hidden])) .panel{padding:12px 16px}
}


body.access-admin-page .panel{overflow:hidden;min-height:0;padding:12px 24px}
#access-admin-screen:not([hidden]){display:flex;flex-direction:column;flex:1;min-height:0;max-width:1144px;width:100%;margin:0 auto;color:var(--ui-ink)}
#access-admin-screen svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px;flex:none}
#access-admin-screen button,#access-admin-screen input{font-family:inherit}
#access-admin-screen button:focus-visible,#access-admin-screen a:focus-visible,#access-admin-screen input:focus-visible{outline:2px solid var(--ui-primary);outline-offset:2px}
.access-page-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:24px 0 22px;flex:none}.access-page-title h1{margin:0 0 8px;font-size:26px;line-height:1.2;font-weight:720;letter-spacing:-.7px;color:var(--ui-ink)}.access-page-title p{font-size:12px;color:var(--ui-muted);margin:0}.access-page-title p b{font-weight:600;color:var(--ui-primary-hover)}#access-grant-show{display:flex;align-items:center;justify-content:center;gap:8px;height:42px;border:1px solid var(--ui-primary);border-radius:10px;background:var(--ui-primary);color:var(--ui-surface);font-size:13px;font-weight:600;padding:10px 16px;white-space:nowrap}#access-grant-show svg{width:16px}.access-controls{display:flex;align-items:center;gap:20px;margin-bottom:18px;flex:none}.access-search{height:42px;display:flex;align-items:center;gap:9px;padding:0 12px;border:1px solid var(--ui-border);border-radius:10px;min-width:0;flex:1;color:var(--ui-muted)}.access-search svg{width:17px}.access-search input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:var(--ui-ink);font-size:13px}.access-search input::placeholder{color:var(--ui-muted)}.access-filters{display:flex;align-items:center;gap:4px;border-radius:10px;background:var(--ui-bg);padding:4px;white-space:nowrap}.access-filters button{height:32px;border:0;border-radius:7px;padding:6px 10px;color:var(--ui-muted);font-size:12px;background:transparent;display:flex;align-items:center;gap:6px}.access-filters button[aria-pressed=true]{background:var(--ui-surface);color:var(--ui-primary-hover);box-shadow:0 1px 5px var(--ui-ink-a0a);font-weight:600}.access-filters span{font-size:10px;color:var(--ui-muted);font-variant-numeric:tabular-nums}.access-filters button[aria-pressed=true] span{color:var(--ui-muted)}.access-list-title{display:flex;align-items:center;gap:7px;margin:0 0 10px;font-size:13px;line-height:1.4;font-weight:600;color:var(--ui-muted);flex:none}.access-list-title span{font-size:11px;font-weight:400;color:var(--ui-muted)}.access-table{border:1px solid var(--ui-border);border-radius:12px;min-height:0;overflow:hidden;display:flex;flex-direction:column;flex:1}.access-table-head{height:35px;flex:none;padding:0 17px;display:grid;grid-template-columns:minmax(0,1fr) 153px 159px;gap:14px;align-items:center;border-bottom:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-muted);font-size:11px}.access-table-head span:last-child{text-align:right;padding-right:35px}#access-grants{overflow:auto;min-height:0;flex:1;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--ui-selected) transparent}.access-row{display:grid;grid-template-columns:minmax(0,1fr) 153px 159px;align-items:center;gap:14px;padding:12px 17px;min-height:65px;border-bottom:1px solid var(--ui-border)}.access-row:last-child{border-bottom:0}.access-community{display:flex;align-items:center;gap:11px;min-width:0}.access-avatar{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;flex:none;background:var(--tint,var(--ui-selected));color:var(--ink,var(--ui-muted));font-size:11px;font-weight:650}.access-copy{min-width:0}.access-name{font-size:13px;font-weight:600;color:var(--ui-primary-hover);text-decoration:none;display:flex;align-items:center;gap:5px;line-height:1.4;min-width:0}.access-name span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.access-name svg{width:11px;height:11px;color:var(--ui-muted)}.access-slug{color:var(--ui-muted);font-size:10px;margin-top:3px}.access-expiry{color:var(--ui-muted);font-size:12px;white-space:nowrap}.access-expiry:before{content:'';display:inline-block;width:5px;height:5px;background:var(--ui-green);border-radius:50%;margin-right:7px;vertical-align:2px}.access-row.is-inactive .access-expiry{color:var(--ui-muted)}.access-row.is-inactive .access-expiry:before{background:var(--ui-warning)}.access-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.access-edit{height:32px;border:1px solid var(--ui-border);border-radius:8px;padding:6px 10px;font-size:11px;font-weight:500;color:var(--ui-primary-hover);background:var(--ui-surface);white-space:nowrap}.access-more{border:0;border-radius:8px;background:transparent;color:var(--ui-muted);width:28px;height:32px;font-size:22px;line-height:1;letter-spacing:1px;padding:0 0 10px}.access-more:hover{background:var(--ui-selected);color:var(--ui-primary-hover)}.access-mobile-expiry,.access-mobile-edit{display:none}.access-page-footer{flex:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 0 0;font-size:10px;line-height:1.5;color:var(--ui-muted)}.access-page-footer b{font-size:11px;font-weight:400;white-space:nowrap;color:var(--ui-muted)}
.access-page-title h1{max-width:none}
.access-name .access-external{flex:none;color:var(--ui-muted);font-size:11px;overflow:visible}
.access-avatar[data-tone="1"]{--tint:var(--ui-selected);--ink:var(--ui-primary)}.access-avatar[data-tone="2"]{--tint:var(--ui-red-soft);--ink:var(--ui-red)}.access-avatar[data-tone="3"]{--tint:var(--ui-green-soft);--ink:var(--ui-muted)}.access-avatar[data-tone="4"]{--tint:var(--ui-selected);--ink:var(--ui-warning)}
.access-more-spacer{display:block;width:28px;flex:none}
.access-page-footer{margin:0}
.access-status-row{display:flex;align-items:center;gap:10px;flex:none;margin:0 0 12px}
.access-status-row:has(#access-admin-status:empty):has(#access-admin-retry[hidden]){display:none}
#access-admin-status{font-size:12px;line-height:1.5;color:var(--ui-muted);margin:0;overflow-wrap:anywhere}
#access-admin-status.is-error{color:var(--ui-red)}
#access-admin-retry{border:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-primary-hover);border-radius:8px;padding:6px 10px;font:12px inherit;cursor:pointer}
.access-list-empty{margin:0;padding:28px 20px;font-size:13px;line-height:1.6;color:var(--ui-muted);text-align:center}
.access-actions-menu{position:fixed;z-index:100;width:190px;max-width:calc(100vw - 24px);right:auto;padding:5px;border:1px solid var(--ui-border);border-radius:10px;background:var(--ui-surface);box-shadow:0 9px 28px var(--ui-ink-a1a)}
#access-menu-revoke{padding:11px;border:0;background:var(--ui-surface);color:var(--ui-muted);font:12px system-ui;width:100%;text-align:left;border-radius:7px;cursor:pointer}
#access-menu-revoke:hover{background:var(--ui-surface)}
#access-menu-revoke:focus-visible{outline:2px solid var(--ui-red);outline-offset:-2px}
#access-grant-dialog,#access-edit-dialog,#access-revoke-dialog{width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:23px;border:1px solid var(--ui-border);border-radius:16px;background:var(--ui-surface);color:var(--ui-ink);box-shadow:0 20px 80px var(--ui-ink-a26)}
#access-grant-dialog::backdrop,#access-edit-dialog::backdrop,#access-revoke-dialog::backdrop{background:var(--ui-backdrop)}
#access-grant-dialog h2,#access-edit-dialog h2,#access-revoke-dialog h2{font-size:21px;line-height:1.3;letter-spacing:-.4px;color:var(--ui-ink);margin:0 0 7px}
#access-grant-dialog p,#access-edit-dialog p,#access-revoke-dialog p{font-size:12px;color:var(--ui-muted);margin:0 0 20px;line-height:1.5;overflow-wrap:anywhere}
#access-revoke-dialog #access-revoke-name,#access-edit-dialog #access-edit-name{font-weight:600;color:var(--ui-primary-hover)}
#access-grant-form{display:flex;flex-direction:column;gap:0;align-items:stretch}
#access-grant-form label,#access-edit-dialog label{display:grid;gap:7px;margin:0 0 16px;width:100%;font-size:12px;color:var(--ui-muted)}
#access-grant-form input,#access-grant-form select,#access-edit-dialog select{width:100%;height:44px;border:1px solid var(--ui-border);border-radius:9px;padding:10px 12px;font:14px system-ui;color:var(--ui-primary-hover);background:var(--ui-surface)}
#access-edit-dialog small{display:block;font-size:11px;color:var(--ui-muted);line-height:1.5}
#access-grant-dialog .access-form-actions,#access-revoke-dialog .access-form-actions,#access-edit-dialog>div{display:flex;justify-content:flex-end;gap:8px;margin-top:22px}
#access-grant-form #access-grant,#access-edit-dialog #access-edit-save{width:auto;min-height:42px;padding:9px 15px;border:1px solid var(--ui-primary);border-radius:9px;color:var(--ui-surface);background:var(--ui-primary);font:600 13px system-ui;cursor:pointer}
#access-grant-form #access-grant{margin:0;align-self:auto}
#access-grant-cancel,#access-edit-dialog #access-edit-cancel,#access-revoke-cancel,#access-revoke-confirm{min-height:42px;border:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-red);border-radius:9px;padding:9px 15px;font:13px system-ui;cursor:pointer}
#access-revoke-confirm{background:var(--ui-red);border-color:var(--ui-red);color:var(--ui-surface)}
#access-grant-dialog button:disabled,#access-edit-dialog button:disabled,#access-revoke-dialog button:disabled,#access-admin-screen button:disabled{opacity:.5;cursor:default}
#access-grant-dialog #access-grant-status,#access-revoke-dialog #access-revoke-status,#access-edit-dialog #access-edit-status{color:var(--ui-red);margin:0;font-size:12px}
#access-grant-status:empty,#access-edit-status:empty,#access-revoke-status:empty{display:none}

@media(max-width:700px){
body.access-admin-page .panel{padding:12px 16px}
.access-page-title{flex-wrap:wrap;gap:15px;margin:21px 0 14px}.access-page-title h1{font-size:23px;letter-spacing:-.5px;margin-bottom:7px}.access-page-title p{font-size:11px}.access-page-title #access-grant-show{width:100%;height:42px;font-size:13px}.access-controls{flex-direction:column;align-items:stretch;gap:10px;margin-bottom:16px}.access-search{height:40px;flex:none}.access-search input{font-size:12px}.access-filters{justify-content:space-between;gap:0;padding:3px}.access-filters button{flex:1;justify-content:center;height:31px;font-size:11px;padding:6px 7px;gap:5px}.access-filters span{font-size:9px}.access-list-title{font-size:12px;margin-bottom:9px}.access-list-title span{font-size:10px}.access-table-head{display:none}.access-table{border-radius:11px}.access-row{display:flex;gap:6px;padding:12px;min-height:75px}.access-community{flex:1;min-width:0;gap:10px}.access-avatar{width:32px;height:32px;border-radius:9px;font-size:10px;align-self:flex-start;margin-top:2px}.access-copy{flex:1;min-width:0}.access-name{font-size:12px}.access-name svg{width:10px;height:10px}.access-slug{display:none}.access-mobile-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:2px}.access-mobile-expiry{display:block;font-size:10px;line-height:1.4;white-space:nowrap;color:var(--ui-muted)}.access-mobile-expiry:before{content:'';display:inline-block;width:4px;height:4px;background:var(--ui-green);border-radius:50%;margin-right:5px;vertical-align:2px}.access-row.is-inactive .access-mobile-expiry{color:var(--ui-muted)}.access-row.is-inactive .access-mobile-expiry:before{background:var(--ui-warning)}.access-mobile-edit{display:flex;align-items:center;min-height:32px;background:none;border:0;border-radius:3px;color:var(--ui-muted);font-size:11px;font-weight:500;line-height:1.4;white-space:nowrap;padding:5px 0}.access-row>.access-expiry,.access-actions>.access-edit{display:none}.access-actions{align-self:flex-start}.access-more{width:28px;height:36px;font-size:20px;padding-bottom:9px}.access-page-footer{padding-top:10px;align-items:flex-start;gap:15px;font-size:9px}.access-page-footer span{max-width:240px}.access-page-footer b{font-size:10px}.access-actions-menu{right:25px;top:385px}
.access-actions-menu{right:auto}
#access-admin-screen .access-search input{font-size:16px}#access-admin-screen .access-search input::placeholder{font-size:12px}
.access-more,.access-more-spacer{width:36px;min-height:40px}
.access-mobile-edit{min-height:40px}
#access-grant-form input,#access-grant-form select,#access-edit-dialog select{font-size:16px}
}


#route-retry,#choose-installed-community{border:1px solid var(--ui-border);border-radius:10px;background:var(--ui-surface);color:var(--ui-primary-hover);font:600 14px system-ui;padding:12px 18px;min-height:44px;cursor:pointer}
.welcome-mode .install-actions:has(#choose-installed-community:not([hidden])){gap:10px}
#installed-communities-dialog{box-sizing:border-box;width:min(640px,calc(100vw - 40px));max-height:calc(100dvh - 40px);padding:28px;border:1px solid var(--ui-border);border-radius:24px;background:var(--ui-surface);color:var(--ui-ink);box-shadow:0 24px 80px var(--ui-ink-a29);overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
#installed-communities-dialog[open]{display:flex;flex-direction:column}
#installed-communities-dialog::backdrop{background:var(--ui-backdrop);backdrop-filter:blur(4px)}
.community-picker-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none}
.community-picker-heading{display:flex;align-items:center;gap:10px;min-width:0}
#installed-communities-title{margin:0;font-size:26px;line-height:1.25;font-weight:750;letter-spacing:-.6px;color:var(--ui-ink);outline:none}
.community-picker-count{display:grid;place-items:center;flex:none;min-width:28px;height:28px;padding:0 7px;border-radius:10px;background:var(--ui-selected);color:var(--ui-primary-hover);font-size:14px;font-weight:650}
#installed-communities-dialog .community-picker-dismiss{display:grid;place-items:center;flex:none;width:44px;height:44px;padding:0;border:0;border-radius:10px;background:transparent;color:var(--ui-muted);font:300 29px/1 system-ui;cursor:pointer}
#installed-communities-dialog .community-picker-dismiss:hover{background:var(--ui-selected)}
#installed-communities-dialog #installed-communities-hint{flex:none;margin:8px 0 22px;color:var(--ui-muted);font-size:14px;line-height:1.5}
.community-picker-search{display:flex;align-items:center;gap:12px;flex:none;min-height:46px;padding:0 14px;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-surface);color:var(--ui-muted)}
.community-picker-search:focus-within{border-color:var(--ui-primary);box-shadow:0 0 0 3px var(--ui-ink-a12)}
.community-picker-search svg{width:21px;height:21px;flex:none}
#installed-communities-search{width:100%;min-width:0;height:46px;padding:0;border:0;outline:none;border-radius:0;background:transparent;color:var(--ui-ink);font-size:16px;font-family:inherit;line-height:1.4;box-shadow:none}
#installed-communities-search::placeholder{color:var(--ui-muted);opacity:1}
#installed-communities-search::-webkit-search-cancel-button{-webkit-appearance:none}
#installed-communities-clear{flex:none;width:36px;height:38px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--ui-muted);font:24px/1 system-ui;cursor:pointer}
#installed-communities-list{display:flex;flex-direction:column;flex:0 1 auto;min-height:0;max-height:48dvh;gap:0;margin:18px 0 0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--ui-selected) transparent}
#installed-communities-list .community-picker-row{display:flex;align-items:center;gap:16px;flex:none;width:100%;min-height:90px;padding:16px 12px;margin:0;border:0;border-radius:12px;background:var(--ui-surface);box-shadow:none;color:var(--ui-ink);text-align:left;font:600 16px/1.45 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer;transition:background .12s}
#installed-communities-list .community-picker-row+.community-picker-row{border-top:1px solid var(--ui-border);border-top-left-radius:0;border-top-right-radius:0}
#installed-communities-list .community-picker-row:hover{background:var(--ui-surface)}
#installed-communities-list .community-picker-row:active{background:var(--ui-selected)}
.community-picker-avatar{position:relative;display:grid;place-items:center;flex:none;width:48px;height:48px;overflow:hidden;border-radius:50%;background:var(--ui-red-soft);color:var(--ui-red);font-size:22px;font-weight:650}
.community-picker-avatar[data-tone="1"]{background:var(--ui-selected);color:var(--ui-primary-hover)}.community-picker-avatar[data-tone="2"]{background:var(--ui-selected);color:var(--ui-primary-hover)}.community-picker-avatar[data-tone="3"]{background:var(--ui-green-soft);color:var(--ui-green)}
.community-picker-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.community-picker-name{flex:1;min-width:0;overflow-wrap:anywhere}
.community-picker-arrow{flex:none;display:grid;place-items:center;width:20px;color:var(--ui-primary-hover);font:300 30px/1 system-ui}
.community-picker-footer{flex:none;margin-top:18px;padding-top:16px;border-top:1px solid var(--ui-border)}
.community-picker-check{display:block;width:100%;min-height:40px;margin:0 0 10px;padding:8px 12px;border:0;border-radius:10px;background:transparent;color:var(--ui-primary-hover);font:600 14px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer}
.community-picker-check:hover{background:var(--ui-selected)}
.community-picker-check:disabled{cursor:wait;opacity:.65}
#installed-communities-status{margin:0 0 12px;font-size:14px;line-height:1.45;color:var(--ui-muted)}
#installed-communities-status:empty{display:none}
#installed-communities-close{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:48px;padding:11px 15px;border:1px solid var(--ui-primary);border-radius:12px;background:var(--ui-surface);box-shadow:none;color:var(--ui-primary-hover);font:600 16px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer}
#installed-communities-close>span{font-size:23px;line-height:1;font-weight:400}
#installed-communities-close:hover{background:var(--ui-surface)}
#installed-communities-dialog button:focus-visible{outline:2px solid var(--ui-primary);outline-offset:-3px}
#installed-communities-dialog .community-picker-empty{flex:none;margin:24px 0 10px;text-align:center;font-size:14px;line-height:1.5;color:var(--ui-muted)}
.community-picker-results{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:600px){
#installed-communities-dialog{width:100%;max-width:none;max-height:calc(100dvh - 16px);margin:auto 0 0;padding:22px 20px max(20px,env(safe-area-inset-bottom));border:0;border-radius:24px 24px 0 0}
#installed-communities-dialog::before{content:'';width:36px;height:4px;border-radius:4px;background:var(--ui-selected);align-self:center;flex:none;margin:-10px 0 12px}
#installed-communities-title{font-size:22px;letter-spacing:-.4px}.community-picker-heading{gap:8px}.community-picker-count{min-width:25px;height:25px;font-size:12px;border-radius:8px}
#installed-communities-dialog .community-picker-dismiss{width:36px;height:40px;font-size:27px}
#installed-communities-dialog #installed-communities-hint{font-size:14px;margin:6px 0 18px}
#installed-communities-list{max-height:44dvh;margin-top:14px}
#installed-communities-list .community-picker-row{gap:12px;padding:14px 2px;min-height:82px;font-size:15px}
.community-picker-avatar{width:44px;height:44px;font-size:20px}.community-picker-arrow{width:16px;font-size:28px}
.community-picker-footer{margin-top:14px;padding-top:16px}
}
@media(prefers-reduced-motion:reduce){#installed-communities-list .community-picker-row{transition:none}}
body.access-layout .community-toolbar{flex:0 0 64px;height:64px;min-height:64px;margin-top:0}
@media(max-width:700px){
 body.access-layout .community-toolbar{flex-basis:56px;height:56px;min-height:56px}
}


.access-users-metric{display:block;margin-top:4px}
.access-page .access-expiry,.access-page .access-mobile-expiry{white-space:normal;line-height:1.4}


.holiday-card{height:calc(var(--tile-size) * 1.5)}
.widget-preview-tiles img{aspect-ratio:2/3}

@media(max-width:700px){
 body.calendar-page .admin-tools{margin-top:6px}
 body.calendar-page .admin-tools .calendar-action{min-height:44px;padding:8px 12px;font-size:13px;line-height:1.25}
 body.calendar-page .panel{padding-top:10px;padding-bottom:10px}
}


.access-avatar{position:relative;overflow:hidden}
.access-avatar>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit}


body.access-layout .community-toolbar{padding-bottom:12px}
@media(max-width:700px){body.access-layout .community-toolbar{padding-bottom:8px}}


.community-wait{width:min(100%,480px);margin:auto;text-align:center;padding:28px 18px;color:var(--ui-ink)}
.community-wait-icon{display:grid;place-items:center;width:66px;height:66px;border-radius:20px;margin:0 auto 22px;background:var(--ui-selected);color:var(--ui-muted)}
.community-wait-icon svg{width:34px;height:34px}
.community-wait h1{font-size:26px;line-height:1.25;font-weight:650;letter-spacing:-.5px;margin:0 0 14px;max-width:none}
.community-wait p{font-size:15px;line-height:1.65;color:var(--ui-muted);margin:0}
body.community-wait-page main{min-height:100dvh;height:100dvh;max-width:760px;padding:max(16px,env(safe-area-inset-top,0px),var(--app-vk-top,0px)) max(16px,env(safe-area-inset-right,0px),var(--app-vk-right,0px)) max(16px,env(safe-area-inset-bottom,0px),var(--app-vk-bottom,0px)) max(16px,env(safe-area-inset-left,0px),var(--app-vk-left,0px))}
body.community-wait-page .panel{height:100%;min-height:0;padding:16px;overflow:auto;border:0;box-shadow:none;background:transparent}
body.community-wait-page{background:var(--ui-surface)}
.community-setup-finish{flex:none;margin:0 30px 12px;padding:12px 14px;border:1px solid var(--ui-border);border-radius:12px;color:var(--ui-muted);font-size:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.community-setup-finish button{border:0;background:var(--ui-selected);color:var(--ui-primary-hover);border-radius:8px;padding:8px 12px;font:600 12px system-ui;min-height:40px;cursor:pointer}
.community-setup-finish p:empty{display:none}.community-setup-finish p{flex-basis:100%;margin:0;color:var(--ui-muted)}
@media(max-width:700px){.community-setup-finish{margin:0 16px 8px}.community-wait h1{font-size:24px}}


.ui-inline-loading{position:relative;padding-inline-start:22px!important;min-height:18px}
.ui-inline-loading::before{content:'';position:absolute;left:0;top:50%;width:12px;height:12px;margin-top:-7px;border:2px solid var(--ui-border);border-top-color:var(--ui-primary);border-right-color:var(--ui-primary);border-radius:50%;animation:ui-turn .9s linear infinite}
#route-loading:not([hidden]){display:grid;place-content:center;justify-items:center;gap:14px;flex:1;min-height:100px}
#route-loading-status.ui-inline-loading{padding:46px 0 0!important;font-size:13px;color:var(--ui-muted);text-align:center}
#route-loading-status.ui-inline-loading::before{left:calc(50% - 17px);top:0;margin:0;width:30px;height:30px;border-width:2px;background:var(--ui-surface);box-shadow:0 0 0 7px var(--ui-selected)}
.ui-busy-action{position:relative;animation:ui-hide-busy-text 0s .12s forwards}
.ui-busy-action::after{content:'';position:absolute;left:calc(50% - 7px);top:calc(50% - 7px);width:12px;height:12px;border:2px solid var(--ui-loading-ink,var(--ui-primary));border-right-color:transparent;border-radius:50%;opacity:0;animation:ui-turn .8s linear .12s infinite}
.ui-skeleton-placeholder{position:relative!important;margin:0!important;padding:0!important;color:transparent!important;font-size:0!important;line-height:0!important;overflow:hidden}
.ui-skeleton-grid{display:grid;gap:9px;width:100%;padding:2px 0;box-sizing:border-box}
.ui-skeleton-card{position:relative;display:flex;flex-direction:column;justify-content:center;gap:8px;height:66px;padding:12px 18px 12px 65px;box-sizing:border-box;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-surface);overflow:hidden}
.ui-skeleton-grid[data-kind=journal] .ui-skeleton-card{height:78px;border-left:4px solid var(--ui-border);padding-left:100px}
.ui-skeleton-card::before{content:'';position:absolute;left:15px;top:calc(50% - 16px);width:32px;height:32px;background:var(--ui-selected);border-radius:50%}
.ui-skeleton-grid[data-kind=journal] .ui-skeleton-card::before{width:47px;height:46px;left:18px;top:calc(50% - 23px);border-radius:8px}
.ui-skeleton-bar{display:block;width:44%;height:7px;border-radius:5px;background:var(--ui-selected)}.ui-skeleton-bar:nth-child(2){width:64%}.ui-skeleton-bar:nth-child(3){width:30%}
.ui-skeleton-card::after{content:'';position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(100deg,transparent,var(--ui-surface-a99),transparent);animation:ui-shimmer 1.5s ease-in-out infinite}
.ui-skeleton-grid[data-kind=slots]{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.ui-skeleton-grid[data-kind=slots] .ui-skeleton-card{height:40px;padding:12px}.ui-skeleton-grid[data-kind=slots] .ui-skeleton-card::before{display:none}.ui-skeleton-grid[data-kind=slots] .ui-skeleton-bar{width:55%;margin:auto}.ui-skeleton-grid[data-kind=slots] .ui-skeleton-bar:nth-child(n+2){display:none}
@keyframes ui-turn{from{opacity:1;transform:rotate(0)}to{opacity:1;transform:rotate(360deg)}}
@keyframes ui-hide-busy-text{to{color:transparent;--ui-action-ink:transparent}}
@keyframes ui-shimmer{to{transform:translateX(100%)}}
@media(max-width:700px){.ui-skeleton-grid[data-kind=journal] .ui-skeleton-card{height:96px}.ui-skeleton-grid[data-kind=slots]{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.ui-inline-loading::before,.ui-busy-action::after,.ui-skeleton-card::after{animation:none;transform:none}.ui-busy-action{animation:none;color:transparent!important;--ui-action-ink:transparent}.ui-busy-action::after{opacity:1}.ui-skeleton-card::after{display:none}}


html,body,body:is(.widgets-page,.access-layout){background:var(--ui-bg);color:var(--ui-ink)}
:where(input,select,textarea){accent-color:var(--ui-primary)}
:where(input,textarea)::placeholder{color:var(--ui-muted);opacity:1}
:is(button,a,input,select,textarea,summary):focus-visible{outline-color:var(--ui-focus)}
.ui-inline-loading::before{border-top-color:var(--ui-primary);border-right-color:var(--ui-accent)}


#hub-widgets{--tool-color:var(--ui-accent);--tool-tint:var(--ui-selected)}
#widget-choice-calendar .widget-picker-icon,#calendar-catalog-card .widget-card-symbol{color:var(--ui-accent);background:var(--ui-selected)}


:is(.panel,dialog) :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]):not([type=hidden]),textarea,select){border-color:var(--ui-form-line);color:var(--ui-ink)}
:is(.panel,dialog) :is(input,textarea)::placeholder{color:var(--ui-muted);opacity:1}
:is(.panel,dialog) :is(input,textarea,select):focus{outline:none;border-color:var(--ui-primary);box-shadow:0 0 0 2px var(--ui-focus-soft)}
:is(.panel,dialog) [aria-invalid=true]{border-color:var(--ui-red)}


dialog :is(h1,h2,h3)[tabindex="-1"]:focus{outline:none;box-shadow:none}

.community-install-offer{margin:28px auto 0;padding:20px;border:1px solid var(--ui-border);border-radius:16px;background:var(--ui-selected);text-align:left}
.community-install-symbol{display:grid;place-items:center;width:32px;height:32px;margin-bottom:12px;border-radius:9px;background:var(--ui-surface);color:var(--ui-primary);font-size:24px;line-height:1}
.community-install-offer h2{margin:0 0 8px;font-size:17px;line-height:1.35}
.community-wait .community-install-offer p{font-size:13px;line-height:1.55}
.community-install-offer button{width:100%;margin-top:16px;min-height:44px;font-size:13px;padding:11px}
.community-install-offer [role=status]:empty{display:none}
.community-install-offer [role=status]{margin-top:12px}

.ui-date-picker{position:fixed;inset:auto;margin:0;width:296px;max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);overflow:auto;box-sizing:border-box;padding:12px;border:1px solid var(--ui-border);border-radius:14px;background:var(--ui-surface);color:var(--ui-ink);font:13px/1.4 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;box-shadow:0 12px 36px var(--ui-ink-a12)}
.ui-date-picker::backdrop{background:transparent}
.ui-date-picker>header{display:grid;grid-template-columns:36px minmax(0,1fr) 36px;align-items:center;gap:6px;margin:0 0 10px;padding:0;border:0;background:transparent}
.ui-date-picker>header strong{text-align:center;font-size:14px;font-weight:600}
.ui-date-picker>header button{width:36px;height:36px;min-height:36px;padding:0;margin:0;border:1px solid var(--ui-border);border-radius:9px;color:var(--ui-primary-hover);background:var(--ui-surface);font-size:21px;line-height:1;font-family:inherit}
.ui-date-weekdays,.ui-date-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;padding:3px;text-align:center}
.ui-date-weekdays{margin-bottom:4px;color:var(--ui-muted);font-size:11px}
.ui-date-days{grid-auto-rows:34px}
.ui-date-days button{position:relative;min-width:0;min-height:34px;height:34px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--ui-ink);font:500 12px/1 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;cursor:pointer}
.ui-date-days button[data-outside=true]{color:var(--ui-muted)}
.ui-date-picker button:hover:not(:disabled):not([aria-pressed=true]){background:#F3F7FD;color:var(--ui-primary-hover)}
.ui-date-days button[aria-current=date]{font-weight:700}
.ui-date-days button[aria-current=date]::after{content:'';position:absolute;bottom:3px;left:calc(50% - 2px);width:4px;height:4px;border-radius:50%;background:currentColor}
.ui-date-days button[aria-pressed=true]{background:var(--ui-primary);color:var(--ui-surface)}
.ui-date-picker button:disabled{color:var(--ui-disabled);opacity:.5;cursor:default;background:transparent}
.ui-date-picker button:focus-visible{outline:2px solid var(--ui-primary);outline-offset:-3px}
.ui-date-picker button[aria-pressed=true]:focus-visible{outline-color:var(--ui-surface)}
.ui-date-picker>footer{display:flex;justify-content:space-between;gap:8px;border-top:1px solid var(--ui-border);margin-top:8px;padding-top:8px}
.ui-date-picker>footer button{min-height:36px;padding:5px 9px;border:1px solid var(--ui-border);border-radius:8px;background:var(--ui-surface);color:var(--ui-primary-hover);font-size:12px;line-height:1.4;font-weight:500;font-family:inherit}

@media(hover:hover){[role=listbox] [role=option]:not([aria-selected=true]):not([aria-disabled=true]):hover{background:#F3F7FD;color:var(--ui-ink)}}
[role=listbox] [role=option]{transition:background-color .14s ease,color .14s ease}
[role=listbox] [role=option]:focus-visible{outline:2px solid var(--ui-primary);outline-offset:-3px}
@media(prefers-reduced-motion:reduce){[role=listbox] [role=option]{transition:none}}


#route-loading-status.ui-inline-loading{width:min(280px,calc(100vw - 48px));min-height:44px;padding:22px 0 0!important;overflow:hidden}
#route-loading-status.ui-inline-loading::before{inset:0 0 auto;width:100%;height:3px;margin:0;border:0;border-radius:4px;background:var(--ui-selected);box-shadow:none;animation:none}
#route-loading-status.ui-inline-loading::after{content:'';position:absolute;left:0;top:0;width:35%;height:3px;border-radius:4px;background:linear-gradient(90deg,var(--ui-primary),var(--ui-accent,#3485E4));animation:app-start-track 1.3s ease-in-out infinite}
@keyframes app-start-track{0%{transform:translateX(-105%)}100%{transform:translateX(390%)}}
@media(prefers-reduced-motion:reduce){#route-loading-status.ui-inline-loading::after{animation:none;left:30%;width:40%}}

.community-toolbar .owner-access-open{grid-column:2;justify-self:end;margin-inline-start:auto;flex-shrink:0}
@media(max-width:700px){
 .community-toolbar .owner-access-open{justify-self:end;padding:6px 9px;min-height:44px;font-size:12px;line-height:1.2;white-space:normal;max-width:118px}
}
