@font-face{font-family:ttCommons;src:url(../media/tt_commons_pro_trial_normal-s.p.1e1j7vq5zydxf.woff2)format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:ttCommons Fallback;src:local(Arial);ascent-override:102.81%;descent-override:25.7%;line-gap-override:0.0%;size-adjust:97.27%}.ttcommons_c867e7ae-module__8ajEYa__className{font-family:ttCommons,ttCommons Fallback;font-style:normal;font-weight:400}
*{box-sizing:border-box;margin:0;padding:0}html,body{max-width:100vw;overflow-x:clip}html{height:100%}ul,ol{list-style:none}img,picture,video,canvas,svg{max-width:100%;display:block}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none}a{color:inherit;text-decoration:none}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}:root{--white:#fff;--tone-0:#f5f6fa;--tone-1:#eff0f5;--tone-2:#dddfe9;--tone-3:#b6b9c9;--tone-4:#878ca1;--tone-5:#5a5e72;--tone-6:#3d4152;--tone-7:#2a2d3c;--tone-8:#1d1f2b;--tone-9:#12141c;--accent-400:#4964df;--accent-500:#1d3cc9;--accent-600:#102893;--shadow:0 0 0;--w-maximum:1400px;--w-normal:1120px;--w-small:720px;--pb-maximum:128px;--pb-normal:80px;--pb-small:48px;--gutter:32px;--border-radius:3px}@media (max-width:600px){:root{--pb-maximum:72px;--pb-normal:48px;--pb-small:32px;--gutter:24px}}body{min-height:100vh;color:var(--tone-8);background:var(--tone-0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Arial,Helvetica,sans-serif}.bg--noise{background-image:url(/StaticNoise.webp);background-repeat:repeat;background-size:265px}.thin-scrollbar{padding-right:2px}.thin-scrollbar::-webkit-scrollbar{width:4px;height:4px}.thin-scrollbar::-webkit-scrollbar-track{background:0 0}.thin-scrollbar::-webkit-scrollbar-thumb{background:var(--tone-3);border-radius:999px}.thin-scrollbar::-webkit-scrollbar-corner{background:0 0}.width-maximum,.width-normal,.width-small{padding-inline:var(--gutter);margin-inline:auto}.width-maximum{max-width:var(--w-maximum)}.width-normal{max-width:var(--w-normal)}.width-small{max-width:var(--w-small)}.pb-maximum{padding-block:var(--pb-maximum)}.pb-normal{padding-block:var(--pb-normal)}.pb-small{padding-block:var(--pb-small)}.text--muted{color:var(--tone-5)}.text--balance{text-wrap:balance}h1,h2,h3,h4,h5,.header{text-wrap:balance;margin:.25em 0;font-weight:600;line-height:1em}h1,.h1{letter-spacing:-1px;font-size:clamp(2rem,1.6rem + 2vw,2.5rem)}h2,.h2{font-size:clamp(1.75rem,1.625rem + .625vw,2rem)}h3,.h3{font-size:clamp(1.25rem,1.125rem + .625vw,1.5rem)}h4,.h4{font-size:1.25rem}h5,.h5{font-size:1rem}p,.p{line-height:1.1}.body--large{font-size:1.125rem}label,.label{color:var(--tone-5);font-size:.875rem;font-weight:600}.caption{color:var(--tone-5);font-size:.75rem}.highlight{color:var(--tone-6)}.eyebrow{color:var(--tone-6);letter-spacing:.12em;text-transform:uppercase;font-size:.75rem;font-weight:700}
.app{max-width:var(--w-maximum);flex-direction:column;gap:16px;height:100vh;margin-inline:auto;padding:16px;display:flex}.app__main{flex-direction:column;flex:1;gap:16px;min-height:0;display:flex}.app__body{flex:1;grid-template-columns:1fr 3fr;align-items:stretch;gap:16px;min-height:0;display:grid;overflow-x:auto}.app__editor{min-width:0;height:100%}@media (max-width:750px){.app__body{grid-template-columns:1fr;overflow:visible}.app__editor{order:-1}.thin-scrollbar{padding-right:0!important}}@media (max-width:1040px){.app__main,.app__body{gap:8px}.app{height:auto;padding:12px}.app__editor{width:100%;height:auto}}.design-system{width:100%}.design-system__hero{text-align:center;justify-content:center;align-items:center;width:100%;min-height:65vh;padding-top:72px;display:flex;position:relative;overflow:hidden}.design-system__hero-content{max-width:var(--w-small);z-index:3;flex-direction:column;align-items:center;display:flex;position:relative}.design-system__hero-blur{z-index:2;-webkit-backdrop-filter:blur(70px);backdrop-filter:blur(70px);background:linear-gradient(to bottom, transparent, var(--tone-0));position:absolute;inset:0}.design-system__hero-blobs{z-index:1;position:absolute;inset:0}.design-system__blob{width:45vw;max-width:640px;height:45vw;max-height:640px;color:var(--tone-4);position:absolute}.design-system__blob--one{animation:24s ease-in-out infinite wander1;top:-15%;left:-12%}.design-system__blob--two{animation:28s ease-in-out infinite wander2;bottom:-18%;right:-10%}@keyframes wander1{0%,to{transform:translate(0)rotate(0)scale(1)}25%{transform:translate(6vw,4vh)rotate(12deg)scale(1.05)}50%{transform:translate(2vw,8vh)rotate(-8deg)scale(.95)}75%{transform:translate(-5vw,3vh)rotate(8deg)scale(1.02)}}@keyframes wander2{0%,to{transform:translate(0)rotate(0)scale(1)}25%{transform:translate(-5vw,-3vh)rotate(-10deg)scale(1.04)}50%{transform:translate(-1vw,-7vh)rotate(6deg)scale(.96)}75%{transform:translate(4vw,-2vh)rotate(-6deg)scale(1.03)}}@media (prefers-reduced-motion:reduce){.design-system__blob--one,.design-system__blob--two{animation:none}}.design-system__project-name{justify-content:center;align-items:center;gap:5px;display:flex}.design-system__project-name .design-system__header-eyebrow-image{height:.9rem}.design-system__logo{width:auto;height:19px;color:var(--tone-6)}.design-system__hero-content h1{margin-top:24px;font-size:clamp(2.5rem,6vw,4.5rem)}.design-system__hero-content>p:last-child{margin-top:20px}.design-system__section{margin-top:72px}.design-system__section:last-of-type{padding-bottom:96px}.design-system__section-heading{margin-bottom:24px}.design-system__section-heading h2{color:var(--tone-8);margin-top:6px;font-size:2rem}.design-system__palette-group+.design-system__palette-group{margin-top:28px}.design-system__swatches{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.design-system__swatch{min-width:0;color:var(--tone-8);gap:8px;font-size:.875rem;display:grid}.design-system__color-block{border:1px solid var(--tone-2);border-radius:var(--border-radius);width:100%;height:88px}.design-system__swatch code,.design-system__color-value{color:var(--tone-5);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.design-system__type-scale{border:1px solid var(--tone-2);border-radius:var(--border-radius);background:var(--white);color:var(--tone-8);gap:18px;padding:28px;display:grid}@media (max-width:640px){.design-system__hero{padding-top:48px}.design-system__section{margin-top:56px}.design-system__section:last-of-type{padding-bottom:72px}.design-system__swatches{grid-template-columns:repeat(2,minmax(0,1fr))}}
.accordion{--_border:1px solid var(--tone-2);border-left:var(--_border);border-right:var(--_border);border-radius:var(--border-radius);background:var(--white)}.accordion__heading{border-top:var(--_border)}.accordion__item:last-child{border-bottom:var(--_border)}.accordion__item:first-child .accordion__trigger{border-top-left-radius:var(--border-radius);border-top-right-radius:var(--border-radius)}.accordion__item:last-child .accordion__trigger,.accordion__item:last-child .accordion__panel-inner{border-bottom-left-radius:var(--border-radius);border-bottom-right-radius:var(--border-radius)}.accordion__heading{z-index:2;background:var(--white);margin:0;font-size:1rem;line-height:1.2;position:sticky;top:0}.accordion__trigger{width:100%;min-height:48px;color:var(--tone-8);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;font-weight:600;transition:color .16s,background-color .16s;display:flex}.accordion__trigger:hover{background:var(--tone-1)}.accordion__trigger:focus-visible{z-index:1;outline:2px solid var(--tone-4);outline-offset:-2px;position:relative}.accordion__icon-wrapper{flex:none;place-items:center;transition:transform .22s cubic-bezier(.4,0,.2,1);display:grid;transform:rotate(0)}.accordion__icon-wrapper[data-state=open]{transform:rotate(180deg)}.accordion__icon{width:18px;height:18px;color:var(--tone-5)}.accordion__panel{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .26s cubic-bezier(.4,0,.2,1),opacity .18s;display:grid}.accordion__panel[data-state=open]{opacity:1;grid-template-rows:1fr}.accordion__panel-inner{min-height:0;overflow:hidden}.accordion__content{color:var(--tone-5);padding:6px 14px 16px;font-size:.875rem;line-height:1.5}@media (prefers-reduced-motion:reduce){.accordion__icon-wrapper,.accordion__panel{transition:none}}
.app-header{flex:none;align-items:center;gap:10px;padding:12px 5px;display:flex}.app-header__logo{width:20px;color:var(--tone-8)}.app-header__title{letter-spacing:-.01em;font-weight:600}
.blog-cards{grid-template-rows:auto auto auto auto;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 24px;display:grid}.blog-card{--transition-duration:.6s;grid-row:span 4;grid-template-rows:subgrid;border-top:3px solid var(--tone-3);background:var(--tone-1);transition:border-color var(--transition-duration) ease;display:grid;overflow:hidden}.blog-card:hover{border-top-color:var(--tone-6)}.blog-card__category{background:var(--tone-8);color:var(--white);letter-spacing:.08em;text-transform:uppercase;grid-row:1;justify-self:start;margin:24px 22px 0;padding:5px 10px;font-size:.6875rem;font-weight:700}.blog-card__title{letter-spacing:-.02em;grid-row:2;align-self:start;margin:0;padding:16px 22px 0;font-size:1.5rem;line-height:1.12}.blog-card__tags{color:var(--tone-5);letter-spacing:.04em;flex-wrap:wrap;grid-row:3;align-self:start;gap:10px;padding:14px 22px 0;font-size:.75rem;display:flex}.blog-card__image{aspect-ratio:5/3;object-fit:cover;width:100%;transition:transform var(--transition-duration) ease;grid-row:4;align-self:end;margin-top:22px}.blog-card:hover .blog-card__image{transform:scale(1.08)}@media (max-width:700px){.blog-cards{grid-template-rows:none;grid-template-columns:minmax(0,1fr);row-gap:24px}.blog-card{grid-row:auto;grid-template-rows:auto auto auto 1fr}}@media (prefers-reduced-motion:reduce){.blog-card,.blog-card__image{transition:none}.blog-card:hover .blog-card__image{transform:none}}
.button{--_size:36px;min-height:var(--_size);border-radius:var(--border-radius);cursor:pointer;font:inherit;border:1px solid #0000;align-items:center;gap:6px;padding:.5rem .75rem;font-size:.875rem;font-weight:600;transition:color .16s,border-color .16s,background-color .16s;display:inline-flex}.button:active{transform:translateY(1px)}.button:focus-visible{outline:2px solid var(--tone-4);outline-offset:1px}.button__icon{width:16px;height:16px}.button--primary{background:linear-gradient(180deg, var(--tone-9) 0%, var(--tone-6) 100%);color:var(--white);border-color:var(--tone-9);box-shadow:inset 0 1px 1px var(--tone-5), inset 0 -1px 1px var(--tone-8)}.button--primary:hover{background:linear-gradient(180deg, var(--tone-8) 0%, var(--tone-9) 100%)}.button--secondary{border-color:var(--tone-3);color:var(--tone-8);background:var(--white)}.button--secondary:hover{border-color:var(--tone-1);background:var(--tone-1)}.button--quiet{color:var(--tone-5);background:0 0}.button--quiet:hover,.button--quiet:active{color:var(--tone-8);background:var(--tone-1)}.button--icon-only{min-height:var(--_size);aspect-ratio:1;justify-content:center;padding:0}.button--icon-only.button--secondary,.button--icon-only.button--quiet{color:var(--tone-5)}.button--icon-only.button--secondary:hover,.button--icon-only.button--quiet:hover{color:var(--tone-8)}
.checkbox{cursor:pointer;width:fit-content;color:var(--tone-8);align-items:center;gap:10px;display:flex}.checkbox input:focus-visible+.checkbox__control{outline:2px solid var(--tone-4);outline-offset:1px}.checkbox--check .checkbox__control{--_size:17px;width:var(--_size);height:var(--_size);border:2px solid var(--tone-2);border-radius:var(--border-radius);background:0 0;place-items:center;transition:background-color .16s,border-color .16s;display:grid}.checkbox--check .checkbox__control:after{width:calc(var(--_size) * .17);height:calc(var(--_size) * .4);border:solid var(--white);content:"";opacity:0;border-width:0 2px 2px 0;transform:rotate(45deg)translate(-1px,-1px)}.checkbox--check input:checked+.checkbox__control{border-color:var(--tone-3);background:var(--tone-3)}.checkbox--check input:checked+.checkbox__control:after{opacity:1}.checkbox--toggle .checkbox__control{background:var(--tone-1);border-radius:999px;flex-shrink:0;width:29px;height:17px;transition:background-color .18s;display:block;position:relative}.checkbox--toggle .checkbox__control:before{background:var(--white);width:15px;height:15px;box-shadow:0 1px 3px rgb(var(--shadow) / 20%);content:"";border-radius:50%;transition:transform .13s;position:absolute;top:1px;left:1px}.checkbox--toggle input:checked+.checkbox__control{background:var(--tone-6)}.checkbox--toggle input:checked+.checkbox__control:before{transform:translate(12px)}
.design-controls{--_gap:10px;column-width:333px;gap:var(--_gap)}.design-controls__card{border:1px solid var(--tone-2);border-radius:var(--border-radius);background:var(--white);break-inside:avoid;align-content:start;gap:1rem;margin-block-end:var(--_gap);padding:1rem;display:grid}.design-controls__name,.design-controls__field-label{color:var(--tone-5);font-size:.875rem;font-weight:600}.design-controls__modal-description,.design-controls__component-description{max-width:48ch;color:var(--tone-5);line-height:1.4}.design-controls__component-description{margin-top:-.25rem;font-size:.875rem}.design-controls__field{display:grid}.design-controls__field-label{padding:.3rem 0}.design-controls__input{border:1px solid var(--tone-3);border-radius:var(--border-radius);width:100%;min-height:42px;color:var(--tone-8);font-size:.875rem;font:inherit;background:0 0;outline:none;padding:.5rem}.design-controls__field textarea{box-sizing:border-box;resize:vertical;width:100%}.design-controls__input--number{appearance:textfield}.design-controls__input--number::-webkit-outer-spin-button{appearance:none;margin:0}.design-controls__input--number::-webkit-inner-spin-button{appearance:none;margin:0}.design-controls__field:hover .design-controls__input{border-color:var(--tone-4)}.design-controls__input:focus-visible,.design-controls__chip-group input:focus-visible+span{outline:2px solid var(--tone-4);outline-offset:1px}.design-controls__chip-group input:not(:checked):hover+span{background:var(--tone-1)}.design-controls__chip-group,.design-controls__button-group{flex-wrap:wrap;gap:8px;display:flex}.design-controls__chip-group label{cursor:pointer}.design-controls__chip-group span{border:1px solid var(--tone-3);color:var(--tone-5);background:var(--white);border-radius:999px;padding:.2rem .75rem .25rem;font-size:.8125rem;transition:color .16s,border-color .16s,background-color .16s;display:block}.design-controls__chip-group input:checked+span{border:1px solid;border-color:var(--tone-9);color:var(--tone-9);background:var(--tone-1);font-weight:600}.design-controls__notification-options{gap:14px;display:grid}.design-controls__upload-area{border-radius:var(--border-radius);text-align:center;cursor:pointer;border:1px solid var(--tone-3);background:var(--tone-1);place-items:center;gap:4px;min-height:96px;padding:1rem;transition:border-color .16s,background-color .16s;display:grid;position:relative}.design-controls__upload-area:hover,.design-controls__upload-area:focus-visible{border-color:var(--tone-4);background:var(--tone-2);outline:none}.design-controls__upload-icon{--_size:25px;width:var(--_size);height:var(--_size);color:var(--tone-5);margin-bottom:3px}.design-controls__upload-text{color:var(--tone-8);font-size:.875rem;font-weight:600}.design-controls__upload-hint{color:var(--tone-5);font-size:.75rem}.design-controls__upload-preview{border-radius:var(--border-radius);object-fit:contain;max-width:100%;max-height:80px}@media (max-width:640px){.design-controls{column-count:1}}
.draggable-cards{grid-template-columns:repeat(auto-fill,72px);gap:.5rem;display:grid}.draggable-cards__card{aspect-ratio:1;cursor:grab;touch-action:none;will-change:transform;border:1px solid var(--tone-2);border-radius:var(--border-radius);background:var(--tone-1);color:var(--tone-6);place-items:center;font-size:.875rem;font-weight:600;display:grid}.draggable-cards__card:active{cursor:grabbing;z-index:2;background:var(--tone-2)}
.modal{--_spacing:20px;width:100%;max-width:none;height:100%;max-height:none;padding:var(--gutter);background:0 0;border:0;margin:0;position:fixed;inset:0;overflow-y:auto}.modal[open]{place-items:center;display:grid}.modal::backdrop{background:rgb(from var(--tone-8) r g b / 52%);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal__panel{border:1px solid var(--tone-2);border-radius:var(--border-radius);background:var(--white);width:min(100%,40rem);max-height:100%;box-shadow:0 24px 60px rgb(from var(--tone-8) r g b / 28%);overflow:auto}.modal__header{padding:var(--_spacing) var(--_spacing) 0;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.modal__header h2{color:var(--tone-8)}.modal__content{padding:var(--_spacing);color:var(--tone-8);gap:var(--_spacing);display:grid}
.products-table{--_gap:12px;gap:var(--_gap);display:grid}.products-table__badge{--_badge-py:.2rem;--_badge-px:.6rem;padding:var(--_badge-py) var(--_badge-px);white-space:nowrap;border-radius:999px;align-items:center;font-size:.75rem;font-weight:600;display:inline-flex}.products-table__badge--primary{color:var(--tone-9);background:var(--tone-1)}.products-table__badge--neutral{color:var(--tone-8);background:var(--tone-1);border:1px solid var(--tone-3)}.products-table__badge--muted{color:var(--tone-5);background:var(--tone-1)}
.prayer-times{--_s-base:var(--tone-3);--_s-color:var(--tone-4);--_p-base:var(--tone-8);--_p-color:var(--white);--_padding:14px;border:1px solid var(--tone-2);border-radius:var(--border-radius);flex:none}.prayer-times__overview-container{padding:var(--_padding)}.prayer-times__overview{grid-template-columns:auto 1fr;align-items:center;gap:29px;display:grid}.prayer-times__dates{gap:8px;display:flex}.prayer-times__date{text-align:center;border:1px solid var(--_s-base);width:35px;min-height:45px;color:var(--_s-color);border-radius:var(--border-radius);font-variant-numeric:tabular-nums;place-content:center;line-height:1.1;display:grid}.prayer-times__date--today{border-color:var(--_p-base);background:var(--_p-base);color:var(--_p-color)}.prayer-times__weekday{text-transform:uppercase;letter-spacing:.04em;font-size:.5rem;font-weight:600}.prayer-times__day{margin-top:3px;font-size:1rem;font-weight:700}.prayer-times__list{flex:1;justify-content:flex-end;align-items:center;gap:40px;display:flex}.prayer-times__item{text-align:center;flex-direction:column;align-items:center;gap:3px;font-size:.75rem;line-height:1.1;display:flex}.prayer-times__item dd{font-variant-numeric:tabular-nums;white-space:nowrap}.prayer-times__countdown{color:var(--tone-8);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:clamp(1rem,2vw,1.1rem);font-weight:600}.prayer-times__item.prayer-times__item--passed{color:var(--tone-3)}.prayer-times__item.prayer-times__item--later{color:var(--tone-5)}.prayer-times__item.prayer-times__item--up-next{color:var(--tone-8);font-weight:600}.prayer-times__time-adjacent{display:none}.prayer-times__error{min-height:78px;color:var(--tone-6);align-items:center;gap:16px;padding:16px 20px;font-size:.875rem;display:flex}.prayer-times__error button{border:1px solid var(--tone-3);border-radius:var(--border-radius);color:var(--tone-8);padding:6px 10px;font-size:.875rem;font-weight:600}.prayer-times__error button:focus-visible{outline:2px solid var(--accent-500);outline-offset:2px}.prayer-times__retry{color:var(--tone-6);margin:0 14px 12px;font-size:.75rem;text-decoration:underline}.prayer-times__retry:focus-visible{outline:2px solid var(--accent-500);outline-offset:2px}@media (max-width:650px){.prayer-times__overview{grid-template-columns:1fr;gap:12px 8px}.prayer-times__dates{gap:4px}.prayer-times__date{flex:1;width:auto;min-width:0;min-height:50px}.prayer-times__weekday{font-size:.6rem}.prayer-times__day{font-size:1.25rem}.prayer-times__list{border-top:1px solid var(--tone-2);grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;padding:0;display:grid}.prayer-times__item{display:none}.prayer-times__item--last,.prayer-times__item--next{text-align:left;min-width:0;color:var(--tone-8);flex-direction:column;align-items:flex-start;gap:4px;padding:12px 14px;display:flex}.prayer-times__item.prayer-times__item--last{color:var(--tone-5);order:0}.prayer-times__item.prayer-times__item--next{color:var(--tone-8);border-left:1px solid var(--tone-2);order:1}.prayer-times__item--last dt:before{content:"Last · "}.prayer-times__item--next dt:before{content:"Next · "}.prayer-times__item dt{color:var(--tone-5);white-space:nowrap;font-size:.7rem}.prayer-times__item dd{font-size:1.1rem;font-weight:600}.prayer-times__item--adjacent .prayer-times__time-today{display:none}.prayer-times__item--adjacent .prayer-times__time-adjacent{display:inline}}
.radio-group input:focus-visible+span{outline:2px solid var(--tone-4);outline-offset:1px}.radio-group--list{gap:12px;display:grid}.radio-group--list label{cursor:pointer;width:fit-content;color:var(--tone-8);align-items:center;gap:10px;display:flex}.radio-group--list label>span{border:2px solid var(--tone-3);background:var(--white);border-radius:50%;width:18px;height:18px}.radio-group--list input:checked+span{border:5px solid var(--tone-6)}.radio-group--tabs{--_br:var(--border-radius);--_b:1px solid var(--tone-3);width:fit-content;display:inline-flex;overflow:hidden}.radio-group--tabs label{cursor:pointer}.radio-group--tabs label:first-child span{border-left:var(--_b);border-bottom-left-radius:var(--_br);border-top-left-radius:var(--_br)}.radio-group--tabs label:last-child span{border-bottom-right-radius:var(--_br);border-top-right-radius:var(--_br);border-right:var(--_b)}.radio-group--tabs span{border-top:var(--_b);border-bottom:var(--_b);color:var(--tone-5);background:var(--white);padding:.5rem .75rem;font-size:.875rem;transition:color .16s,background-color .16s;display:block}.radio-group--tabs input:not(:checked):hover+span{background:var(--tone-1)}.radio-group--tabs input:checked+span{border:1px solid;border-color:var(--tone-9);color:var(--tone-9);background:var(--tone-1);font-weight:600}.radio-group--segmented{border-radius:var(--border-radius);background:var(--tone-1);width:fit-content;padding:3px;display:inline-flex}.radio-group--segmented label{cursor:pointer}.radio-group--segmented span{border-radius:calc(var(--border-radius) - 1px);color:var(--tone-5);padding:.5rem .875rem;font-size:.875rem;transition:color .16s,background-color .16s,box-shadow .16s;display:block}.radio-group--segmented input:not(:checked):hover+span{color:var(--tone-8)}.radio-group--segmented input:checked+span{color:var(--tone-8);background:var(--white);box-shadow:0 1px 2px rgb(var(--shadow) / 8%);font-weight:600}
.rich-text-editor{--editor-padding:20px;border:1px solid var(--tone-2);border-radius:var(--border-radius);background:var(--white);flex-direction:column;display:flex}.rich-text-editor--fill{height:100%}.rich-text-editor--fill .rich-text-editor__surface{flex:1;min-height:0;overflow-y:auto}.rich-text-editor__toolbar{z-index:1;border-bottom:1px solid var(--tone-2);border-top-left-radius:var(--border-radius);border-top-right-radius:var(--border-radius);background:var(--tone-0);flex-wrap:wrap;align-items:center;gap:4px;padding:6px;display:flex;position:sticky;top:0}.rich-text-editor__tool-group{align-items:center;gap:2px;display:flex}.rich-text-editor__divider{background:var(--tone-2);width:1px;height:20px;margin-inline:4px}.rich-text-editor__tool{border-radius:var(--border-radius);width:32px;height:32px;color:var(--tone-5);cursor:pointer;background:0 0;border:0;place-items:center;transition:color .16s,background-color .16s;display:grid}.rich-text-editor__tool svg{width:16px;height:16px}.rich-text-editor__tool:hover{color:var(--tone-8);background:var(--tone-1)}.rich-text-editor__tool:focus-visible{outline:2px solid var(--tone-4);outline-offset:-2px}.rich-text-editor__tool[aria-pressed=true]{color:var(--white);background:var(--tone-8)}.rich-text-editor__surface{min-height:280px;padding:var(--editor-padding);border-bottom-left-radius:var(--border-radius);border-bottom-right-radius:var(--border-radius);color:var(--tone-8);line-height:1.5;position:relative}.rich-text-editor__surface:focus{outline:none}.rich-text-editor__surface[data-empty=true]:before{content:attr(data-placeholder);top:var(--editor-padding);left:var(--editor-padding);color:var(--tone-4);pointer-events:none;position:absolute}.rich-text-editor__surface>*+*{margin-block:.75em 0}.rich-text-editor__surface h2{font-size:1.5rem!important}.rich-text-editor__surface h3{font-size:1.3rem!important}.rich-text-editor__surface h4{font-size:1.1rem!important}.rich-text-editor__surface h1,.rich-text-editor__surface h2,.rich-text-editor__surface h3,.rich-text-editor__surface h4{line-height:1.1}.rich-text-editor__surface>:first-child{margin-top:0}.rich-text-editor__surface p{line-height:1.5}.rich-text-editor__surface ul,.rich-text-editor__surface ol{padding-left:1.5em}.rich-text-editor__surface ul{list-style:outside}.rich-text-editor__surface ol{list-style:decimal}.rich-text-editor__surface li{margin-block:.25em}@media (prefers-reduced-motion:reduce){.rich-text-editor__tool{transition:none}}
.star-rating{gap:4px;width:fit-content;display:flex}.star-rating__star{cursor:pointer;background:0 0;border:0;place-items:center;width:32px;height:32px;padding:0;display:grid}.star-rating__star:focus-visible{border-radius:var(--border-radius);outline:2px solid var(--tone-4);outline-offset:1px}.star-rating__icon{width:22px;height:22px;color:var(--tone-3);fill:#0000;transition:color .12s,fill .12s}.star-rating__icon[data-filled=true]{color:var(--tone-6);fill:var(--tone-6)}
.synced-editor{border:1px solid var(--tone-2);border-radius:var(--border-radius);background:var(--white);flex-direction:column;width:100%;min-width:0;height:100%;min-height:360px;display:flex;overflow:hidden}.synced-editor__bar{border-bottom:1px solid var(--tone-2);background:var(--white);flex:none;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:45px;padding:6px 8px 6px 14px;display:grid}.synced-editor__status{min-width:0;color:var(--tone-5);align-items:center;gap:6px;font-size:.78rem;line-height:1.2;display:flex}.synced-editor__status svg{width:14px;height:14px;color:var(--accent-500)}.synced-editor__save,.synced-editor__error button{border-radius:var(--border-radius);min-height:32px;color:var(--white);background:var(--accent-500);justify-content:center;align-items:center;gap:6px;padding:6px 11px;font-size:.8rem;font-weight:600;display:inline-flex}.synced-editor__save{flex:none}.synced-editor__save:hover:not(:disabled),.synced-editor__error button:hover{background:var(--accent-600)}.synced-editor__save:focus-visible,.synced-editor__error button:focus-visible{outline:2px solid var(--tone-8);outline-offset:2px}.synced-editor__save:disabled{color:var(--tone-4);background:var(--tone-1);cursor:default}.synced-editor__save svg,.synced-editor__error button svg{width:14px;height:14px}.synced-editor__error{color:#8f2935;background:#fff1f2;flex:none;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px 8px 14px;font-size:.78rem;line-height:1.35;display:flex}.synced-editor__error button{color:#8f2935;background:#ffe4e6;flex:none;min-height:28px;padding:4px 8px}.synced-editor__loading{min-height:280px;color:var(--tone-4);text-align:center;flex:1;place-items:center;padding:24px;font-size:.88rem;display:grid}.synced-editor>.rich-text-editor{border:0;border-radius:0;flex:1;min-height:0}.synced-editor>.rich-text-editor .rich-text-editor__toolbar{border-radius:0}@media (max-width:1040px){.synced-editor{max-width:calc(100vw - 24px);height:min(70vh,720px)}}@media (max-width:520px){.synced-editor__bar{padding-left:10px}.synced-editor__status{text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;overflow:hidden}}
.table__wrapper{--_cell-py:.65rem;--_cell-px:.75rem;--_cell-max-width:400px;--_sticky-header-offset:0px;--_max-height:480px;max-height:var(--_max-height);border:1px solid var(--tone-2);border-radius:var(--border-radius);background:var(--white);overflow:auto}.table{border-collapse:collapse;width:100%;font-size:.875rem}.table__caption{padding:var(--_cell-py) var(--_cell-px);color:var(--tone-5);text-align:left}.table th,.table td{padding:var(--_cell-py) var(--_cell-px);white-space:nowrap;text-align:left}.table td{max-width:var(--_cell-max-width);text-overflow:ellipsis;overflow:hidden}.table--wrap td{white-space:normal;text-overflow:unset;overflow-wrap:anywhere;overflow:visible}.table th{top:var(--_sticky-header-offset);z-index:1;color:var(--tone-5);letter-spacing:.02em;text-transform:uppercase;background:var(--tone-2);border-bottom:1px solid var(--tone-2);font-size:.75rem;font-weight:600;position:sticky}.table tbody tr{border-bottom:1px solid var(--tone-2)}.table tbody tr:last-child{border-bottom:none}.table tbody tr:hover{background:var(--tone-0)}
.tasks{z-index:1;background:var(--tone-0);flex-direction:column;gap:16px;min-width:300px;height:100%;padding-right:2px;display:flex;position:relative;overflow-y:auto}.tasks__block-title{align-items:center;gap:10px;width:100%;display:flex}.accordion__icon,.tasks__block-icon{width:14px;height:14px;color:var(--tone-4)}.tasks__block-name{flex:1}.tasks__block-count{color:var(--tone-4);font-variant-numeric:tabular-nums;font-size:.75rem;font-weight:600}.tasks__habits{flex-direction:column;gap:2px;display:flex}.tasks__habit-row--dragging{z-index:1;opacity:.6}.tasks__habit-body{cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;flex:1;align-items:center;gap:10px;min-width:0;display:flex}.tasks__habit-body:active{cursor:grabbing}.tasks__habit{width:100%;padding:6px 2px;font-size:.875rem}.tasks__habit-title{flex:1}.tasks__habit--done .tasks__habit-title{color:var(--tone-3);text-decoration:line-through}.tasks__habit--done input:checked+.checkbox__control{border-color:var(--tone-2);background:var(--tone-2)}.tasks__habit-zone{color:var(--tone-3);letter-spacing:.08em;text-transform:uppercase;font-size:.6rem;font-weight:100}.tasks__add-form{align-items:center;gap:10px;padding:6px 2px;display:flex}.tasks__add-icon{width:18px;height:18px;color:var(--tone-3);flex-shrink:0}.tasks__add-input{min-width:0;color:var(--tone-8);font:inherit;background:0 0;border:none;outline:none;flex:1;padding:0;font-size:.875rem}.tasks__add-input::placeholder{color:var(--tone-4)}.tasks__add-submit{border-radius:var(--border-radius);width:22px;height:22px;color:var(--tone-4);cursor:pointer;opacity:0;pointer-events:none;background:0 0;border:none;flex-shrink:0;place-items:center;transition:opacity .12s,color .12s,background-color .12s;display:grid}.tasks__add-submit svg{width:14px;height:14px}.tasks__add-submit--visible{opacity:1;pointer-events:auto}.tasks__add-submit:hover,.tasks__add-submit:focus-visible{background:var(--tone-1);color:var(--tone-8)}.tasks__add-submit:focus-visible{outline:2px solid var(--tone-4);outline-offset:1px}@media (max-width:1040px){.tasks{width:100%;height:auto;overflow:visible}}
