:root{--buncss-light:initial;--buncss-dark: ;color-scheme:light dark;--font:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;--bg:oklch(98% .005 230);--surface:oklch(100% 0 0);--surface-2:oklch(96.5% .006 230);--text:oklch(24% .02 250);--muted:oklch(50% .02 250);--border:oklch(90% .01 250);--border-strong:oklch(80% .015 250);--accent:oklch(56% .12 190);--accent-strong:oklch(44% .11 195);--accent-soft:oklch(93% .04 190);--on-accent:oklch(99% 0 0);--warn:oklch(68% .16 55);--warn-soft:oklch(95% .05 75);--danger:oklch(55% .19 25);--ok:oklch(55% .12 150);--ok-soft:oklch(95% .04 150);--radius:10px;--radius-sm:6px;--shadow:0 1px 2px oklch(20% .02 250/.06),0 4px 16px oklch(20% .02 250/.05);--gutter:16px;--cell-h:1.25rem}@media (prefers-color-scheme:dark){:root{--buncss-light: ;--buncss-dark:initial}:root:not([data-theme=light]){--bg:oklch(18% .012 250);--surface:oklch(22% .014 250);--surface-2:oklch(26% .015 250);--text:oklch(93% .01 250);--muted:oklch(70% .02 250);--border:oklch(32% .015 250);--border-strong:oklch(42% .02 250);--accent:oklch(68% .11 190);--accent-strong:oklch(78% .12 185);--accent-soft:oklch(32% .05 195);--on-accent:oklch(18% .02 250);--warn:oklch(75% .15 65);--warn-soft:oklch(30% .05 65);--danger:oklch(68% .17 25);--ok:oklch(72% .13 150);--ok-soft:oklch(28% .04 150);--shadow:0 1px 2px oklch(0% 0 0/.3)}}:root[data-theme=dark]{--bg:oklch(18% .012 250);--surface:oklch(22% .014 250);--surface-2:oklch(26% .015 250);--text:oklch(93% .01 250);--muted:oklch(70% .02 250);--border:oklch(32% .015 250);--border-strong:oklch(42% .02 250);--accent:oklch(68% .11 190);--accent-strong:oklch(78% .12 185);--accent-soft:oklch(32% .05 195);--on-accent:oklch(18% .02 250);--warn:oklch(75% .15 65);--warn-soft:oklch(30% .05 65);--danger:oklch(68% .17 25);--ok:oklch(72% .13 150);--ok-soft:oklch(28% .04 150);--shadow:0 1px 2px oklch(0% 0 0/.3)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font:15px/1.5 var(--font);-webkit-font-smoothing:antialiased;overflow-x:hidden;margin:0}h1,h2,h3{text-wrap:balance;margin:0 0 .5rem;line-height:1.2}h1{letter-spacing:-.01em;font-size:1.6rem}h2{font-size:1.15rem}.h3,h3{font-size:1rem}p{text-wrap:pretty;margin:0 0 .75rem}a{color:var(--accent-strong);text-underline-offset:2px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sr-only{position:absolute;overflow:hidden;clip-path:inset(50%);white-space:nowrap;width:1px;height:1px}.muted{color:var(--muted)}.small{font-size:.85rem}.lead{color:var(--muted);max-width:70ch;font-size:1.02rem}.ok-text{color:var(--ok)}time,.slot-time,.week-label,.weekgrid,.heatmap{font-variant-numeric:tabular-nums}button,.button,.file-button,input,select{font:inherit;color:inherit}button,.button,.file-button{display:inline-flex;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;text-decoration:none;white-space:nowrap;justify-content:center;align-items: center;gap:.4rem;min-height:2.25rem;padding:.35rem .9rem;transition:background-color .12s,border-color .12s,transform 80ms}button:hover,.button:hover,.file-button:hover{background:var(--surface-2)}button:active{transform:translateY(1px)}button:disabled{opacity:.5;cursor:not-allowed;transform:none}button.primary{background:var(--accent-strong);border-color:var(--accent-strong);color:var(--on-accent);font-weight:600}button.primary:hover{background:var(--accent);border-color:var(--accent)}button.danger{color:var(--danger);border-color:color-mix(in oklab,var(--danger)40%,var(--border))}button.big{min-height:2.75rem;font-size:1.02rem}button.link{color:var(--accent-strong);text-decoration:underline;text-underline-offset:2px;background:0 0;border:0;min-height:0;padding:0 .25rem}.file-button{position:relative;overflow:hidden}.file-button input{position:absolute;opacity:0;cursor:pointer;inset:0}.file-button:focus-within{outline:2px solid var(--accent);outline-offset:2px}input:not(:-webkit-any([type=checkbox],[type=radio],[type=range],[type=file])),select{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-height:2.25rem;padding:.35rem .6rem}input:not(:-moz-any([type=checkbox],[type=radio],[type=range],[type=file])),select{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-height:2.25rem;padding:.35rem .6rem}input:not(:is([type=checkbox],[type=radio],[type=range],[type=file])),select{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-height:2.25rem;padding:.35rem .6rem}input[type=range]{accent-color:var(--accent-strong);width:100%}input[type=checkbox],input[type=radio]{accent-color:var(--accent-strong);width:1rem;height:1rem;margin:0}label{display:flex;flex-direction:column;gap:.25rem;min-width:0;font-size:.88rem;font-weight:500}label.check,.checks label,.radio-row label{flex-direction:row;align-items: center;gap:.45rem;font-weight:400}output{color:var(--accent-strong);font-weight:600}fieldset{min-width:0;margin:0}legend{margin-left:-.25rem;padding:0 .25rem;font-weight:650}.field-error{color:var(--danger);margin:0;font-size:.88rem}.skip{position:absolute;top:0;left:-999px}.skip:focus{left:var(--gutter);z-index:20;background:var(--surface);padding:.5rem .75rem}.topbar{position:sticky;z-index:10;display:flex;padding:.5rem var(--gutter);background:color-mix(in oklab,var(--bg)88%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);align-items: center;gap:1rem;top:0}.brand{display:inline-flex;letter-spacing:-.01em;color:var(--text);text-decoration:none;flex-shrink:0;align-items: center;gap:.5rem;font-weight:700}.brand-mark{background:linear-gradient(var(--accent-strong)0 0)0 0/45% 45% no-repeat,linear-gradient(var(--accent)0 0)100% 100%/45% 45% no-repeat,linear-gradient(var(--accent-soft)0 0)100% 0/45% 45% no-repeat,linear-gradient(var(--accent-soft)0 0)0 100%/45% 45% no-repeat;border-radius:4px;width:1.1rem;height:1.1rem}.topbar nav{overflow-x:auto;scrollbar-width:none;flex:1;min-width:0}.topbar nav ul{display:flex;list-style:none;gap:.15rem;margin:0;padding:0}.topbar nav a{display:block;border-radius:var(--radius-sm);color:var(--muted);text-decoration:none;white-space:nowrap;padding:.4rem .7rem;font-weight:500}.topbar nav a:hover{color:var(--text);background:var(--surface-2)}.topbar nav a[aria-current=page]{color:var(--accent-strong);background:var(--accent-soft)}.tz-chip{color:var(--muted);text-decoration:none;border:1px solid var(--border);border-radius:999px;flex-shrink:0;padding:.2rem .55rem;font-size:.8rem}main:focus{outline:none}.page{padding:1.5rem var(--gutter)4rem;max-width:1240px;margin:0 auto}.page.narrow{max-width:640px}.page-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items: center;gap:.75rem;margin-bottom:1rem}.page-head h1{margin:0}.crumbs{color:var(--muted);font-size:.88rem}.stack{display:flex;flex-direction:column;gap:1rem;min-width:0}.split{display:grid;grid-template-columns:minmax(0,1fr);align-items: start;gap:1.25rem}@media (min-width:960px){.split{grid-template-columns:minmax(0,420px)minmax(0,1fr)}.split.wide-left{grid-template-columns:minmax(0,1fr)minmax(0,340px)}}.actions{display:flex;flex-wrap:wrap;align-items: center;gap:.5rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);min-width:0;padding:1rem}details.card>summary{cursor:pointer;font-weight:650}details.card[open]>summary{margin-bottom:.75rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));gap:.75rem}.form-grid.compact{grid-template-columns:repeat(auto-fit,minmax(min(100%,9.5rem),1fr))}.form-grid>legend,.span-2{grid-column:1/-1}.radio-row{display:flex;flex-wrap:wrap;align-items: center;gap:.5rem 1rem;font-size:.88rem}.radio-row>span{font-weight:500}.filters{display:flex;flex-wrap:wrap;align-items: end;gap:.75rem;margin-bottom:.75rem}.filters>label{flex:10rem}.filters>label.check{flex:none;min-height:2.25rem}.grow{flex:12rem}.banner{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);margin:0;padding:.7rem .9rem}.banner.warn{background:var(--warn-soft);border-color:color-mix(in oklab,var(--warn)45%,var(--border))}.banner.ok{background:var(--ok-soft);border-color:color-mix(in oklab,var(--ok)40%,var(--border))}.empty{border:1px dashed var(--border-strong);border-radius:var(--radius);text-align:center;padding:2rem 1.25rem}.empty p{max-width:52ch;margin-inline-start:auto;margin-inline-end:auto}.empty .actions{justify-content:center}.empty.small{padding:1.25rem}.plain-list{list-style:none;display:flex;flex-direction:column;gap:.4rem;margin:0;padding:0}.steps{color:var(--muted);margin:0 0 1.25rem;padding-left:1.25rem}.badge,.tag,.chip{display:inline-flex;border:1px solid var(--border);background:var(--surface-2);white-space:nowrap;border-radius:999px;align-items: center;padding:.3rem .5rem;font-size:.75rem;line-height:1}.badge.kind-member{background:var(--accent-soft);color:var(--accent-strong);border-color:#0000}.badge.kind-external{background:var(--warn-soft);border-color:#0000}.badge.ex-busy{background:color-mix(in oklab,var(--danger)15%,var(--surface))}.badge.ex-preferred{background:var(--accent-strong);color:var(--on-accent);border-color:#0000}.badge.ex-available{background:var(--accent-soft)}.chip{background:var(--surface);gap:.35rem;padding:.35rem .6rem;font-size:.82rem}.people-list{list-style:none;display:grid;gap:.5rem;margin:0;padding:0}.person-row{display:grid;grid-template-columns:auto minmax(0,1fr);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:inherit;text-decoration:none;align-items: center;gap:.25rem .85rem;padding:.75rem 1rem;transition:border-color .12s}.person-row:hover{border-color:var(--accent)}.avatar{grid-row:span 2;display:grid;background:var(--accent-soft);color:var(--accent-strong);border-radius:50%;place-items: center;width:2.4rem;height:2.4rem;font-size:.85rem;font-weight:700}.avatar[data-kind=external]{background:var(--warn-soft);color:var(--text)}.person-main{display:flex;flex-wrap:wrap;align-items: center;gap:.35rem .6rem;min-width:0}.tags{display:inline-flex;flex-wrap:wrap;gap:.3rem}.person-meta{display:flex;flex-wrap:wrap;gap:0 1rem;font-size:.85rem}@media (min-width:760px){.person-row{grid-template-columns:auto minmax(0,1fr)minmax(0,18rem)}.avatar{grid-row:auto}.person-meta{text-align:right;flex-direction:column}}.weekgrid{display:flex;flex-direction:column;gap:.6rem;min-width:0}.weekgrid-tools{display:flex;flex-wrap:wrap;align-items: center;gap:.4rem}.brush{border:1px solid var(--border-strong);cursor:pointer;border-radius:999px;flex-direction:row;align-items: center;gap:.4rem;padding:.35rem .7rem;font-weight:500}.brush input{position:absolute;opacity:0;pointer-events:none}.brush:has(input:checked){border-color:var(--accent-strong);background:var(--accent-soft)}.brush:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.swatch{border:1px solid var(--border-strong);border-radius:3px;width:.9rem;height:.9rem}.brush-1 .swatch{background:color-mix(in oklab,var(--accent)45%,var(--surface))}.brush-2 .swatch{background:var(--accent-strong)}.brush-0 .swatch{background:repeating-linear-gradient(45deg,var(--surface),var(--surface)2px,var(--border)2px,var(--border)4px)}.weekgrid-hint{color:var(--muted);flex-basis:100%;font-size:.8rem}.weekgrid-scroll{overflow:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overscroll-behavior:contain;max-height:min(32rem,70vh)}.weekgrid-table{display:grid;user-select:none;-webkit-user-select:none;min-width:max-content}.weekgrid-row{display:contents}.weekgrid-head>*{position:sticky;z-index:2;background:var(--surface);border-bottom:1px solid var(--border);top:0}.weekgrid-corner{left:0;z-index:3!important}.weekgrid-colhead{display:flex;white-space:nowrap;flex-direction:column;align-items: center;padding:.4rem .25rem;font-size:.78rem;font-weight:600}.weekgrid-colhead small{color:var(--muted);font-weight:400}.weekgrid-time{position:sticky;z-index:1;background:var(--surface);color:var(--muted);text-align:right;border-right:1px solid var(--border);padding-right:.4rem;font-size:.72rem;line-height:1;left:0;transform:translateY(-.35rem)}.cell{height:var(--cell-h);border-left:1px solid var(--border);border-bottom:1px dotted var(--border);background:var(--surface);cursor:crosshair}.on-hour .cell{border-top:1px solid var(--border)}.cell.v1{background:color-mix(in oklab,var(--accent)45%,var(--surface))}.cell.v2{background:var(--accent-strong)}.cell.off{background:repeating-linear-gradient(45deg,var(--surface-2),var(--surface-2)3px,var(--surface)3px,var(--surface)6px);cursor:not-allowed}.cell.hl{box-shadow:inset 0 0 0 2px var(--warn)}.cell:focus-visible{outline:2px solid var(--text);outline-offset:-2px}.weekgrid-scroll:not(.is-readonly) .cell{touch-action:none}.is-readonly .cell{cursor:default}.requirements ol{list-style:none;display:flex;flex-direction:column;gap:.5rem;margin:0 0 .75rem;padding:0}.requirement{display:flex;border-radius:var(--radius-sm);background:var(--surface-2);flex-wrap:wrap;align-items: center;gap:.4rem;padding:.5rem}.requirement select{flex:9rem;width:auto}.requirement .count{flex-direction:row;align-items: center;gap:.35rem;font-weight:400}.requirement .count input{width:4rem}.group-picker{flex:100%}.group-picker summary{cursor:pointer;font-size:.88rem}.checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:.4rem 1rem;padding-top:.5rem}.results-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem}.results-head h2{margin:0}.slots{list-style:none;display:grid;gap:.75rem;margin:0;padding:0}.slot{display:flex;flex-direction:column;gap:.6rem}.slot-head{display:flex;justify-content:space-between;align-items: start;gap:1rem}.slot-time{font-size:1.05rem}.score{display:grid;background:var(--accent-soft);color:var(--accent-strong);font-variant-numeric:tabular-nums;border-radius:50%;flex-shrink:0;place-items: center;min-width:2.6rem;height:2.6rem;font-weight:700}.attendees{list-style:none;display:flex;flex-wrap:wrap;gap:.35rem;margin:0;padding:0}.breakdown{display:grid;grid-template-columns:repeat(auto-fit,minmax(7.5rem,1fr));gap:.4rem 1rem;margin:0}.breakdown div{min-width:0}.breakdown dt{color:var(--muted);font-size:.75rem}.breakdown dd{margin:0}meter{width:100%;height:.45rem}.alternates{color:var(--muted);margin:0}.week-label{padding:0 .25rem;font-weight:600}.legend{display:flex;color:var(--muted);flex-wrap:wrap;gap:1rem;margin-bottom:.75rem;font-size:.82rem}.legend span{display:inline-flex;align-items: center;gap:.4rem}.legend .heat{display:inline-block;border-radius:3px;width:1.1rem;height:1.1rem}.heatmap-scroll{overflow:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);max-height:75vh}.heatmap{border-collapse:separate;border-spacing:2px;width:100%;min-width:36rem;padding:.25rem}.heatmap thead th{position:sticky;background:var(--surface);white-space:nowrap;z-index:1;padding:.3rem .2rem;font-size:.78rem;font-weight:600;top:0}.heatmap tbody th{position:sticky;background:var(--surface);color:var(--muted);text-align:right;white-space:nowrap;padding-right:.4rem;font-size:.72rem;font-weight:400;left:0}.heatmap .corner{z-index:2;left:0}.heat-cell{padding:0}.heat{--level:0;color:var(--text);background:color-mix(in oklab,var(--accent-strong)calc(var(--level)*85%),var(--surface-2));border:0;border-radius:3px;width:100%;min-width:0;min-height:1.4rem;padding:0;font-size:.7rem}.heat:hover{background:color-mix(in oklab,var(--accent-strong)calc(var(--level)*85%),var(--surface-2));filter:brightness(.95)}.heat.gap{box-shadow:inset 0 0 0 2px var(--warn);background-image:repeating-linear-gradient(135deg,transparent 0 4px,color-mix(in oklab,var(--warn)25%,transparent)4px 6px)}.heat.selected{outline:2px solid var(--text);outline-offset:1px}.heat-cell.none{background:0 0}.gaps li{border-left:3px solid var(--warn);padding-left:.6rem}.share-box{display:flex;border-radius:var(--radius-sm);background:var(--accent-soft);flex-direction:column;gap:.5rem;padding:.75rem}.share-box input{font-family:var(--mono);font-size:.8rem}.inline-form{display:flex;flex-wrap:wrap;align-items: end;gap:.5rem;margin-top:.75rem}.inline-form>label{flex:8rem}.inline-form .field-error{flex-basis:100%}.respond .page h1{font-size:1.45rem}.respond .card,.respond .banner{margin-bottom:1rem}.respond .weekgrid{margin-bottom:.5rem}@media (max-width:560px){:root{--cell-h:1.5rem}.tz-chip{display:none}.topbar{gap:.5rem}h1{font-size:1.35rem}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}
