@layer post{.post-container{--post-width: clamp(10rem, 30vw, 15rem);--post-height: clamp(8.5rem, 25vw, 13rem);position:relative;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:var(--space-sm);text-decoration:none;color:inherit;width:var(--post-width);height:var(--post-height);background:var(--color-background-main);border-radius:var(--border-radius-md);padding:var(--space-sm);border:3px solid var(--color-border-subtle);transition:filter var(--transition-fast)}@media(min-width:768px){.post-container{gap:var(--space-md);padding:var(--space-md);border-width:4px}}.post-container:hover{filter:brightness(.9)}.post-container__social-stats{grid-column:1;grid-row:1}.post-container__info-stats{grid-column:2;grid-row:1;display:flex;justify-content:flex-end}.post-container__footer{grid-column:1 / 3;grid-row:2;display:flex;flex-direction:column;gap:var(--space-xs);justify-content:flex-end;overflow:hidden}.add-post-button{--post-width: clamp(10rem, 30vw, 15rem);--post-height: clamp(8.5rem, 25vw, 13rem);display:flex;align-items:center;justify-content:center;text-decoration:none;color:inherit;width:var(--post-width);height:var(--post-height);background:var(--color-surface-main);border-radius:var(--border-radius-md);border:3px solid var(--color-border-subtle);transition:filter var(--transition-fast)}@media(min-width:768px){.add-post-button{border-width:4px}}.add-post-button:hover{filter:brightness(.9)}}@layer surface{.surface{display:block}.surface--default{background:var(--color-surface-main);border:1px solid var(--color-border);border-radius:var(--border-radius-md);padding:var(--space-lg) var(--space-xl);color:var(--color-main-text);display:flex;flex-direction:column;gap:var(--space-lg)}@media(min-width:768px){.surface--default{padding:var(--space-xl) var(--space-2xl);gap:var(--space-xl)}}.surface--elevated{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--border-radius-md);box-shadow:var(--shadow-lg)}.surface--outlined{background:transparent;border:2px solid var(--color-border);border-radius:var(--border-radius-md)}.surface--collection{background:var(--color-surface-main);border-radius:var(--border-radius-lg);padding:var(--space-lg)}@media(min-width:768px){.surface--collection{border-radius:var(--border-radius-4xl);padding:var(--space-xl) var(--space-2xl)}}.surface--auth{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--border-radius-md);padding:min(3vh,1.8rem) min(5vw,3rem);width:clamp(20rem,50vw,30rem)}}@layer text{.text{font-family:var(--font-family);color:var(--color-main-text)}.text--body{font-weight:var(--font-weight-normal)}.text--body-inverse{font-weight:var(--font-weight-normal);color:var(--color-main-text-inverse)}.text--subtle{font-weight:var(--font-weight-normal);color:var(--color-gray-600)}.text--muted{font-weight:var(--font-weight-normal);color:var(--color-gray-500)}.text--heading{font-weight:var(--font-weight-bold);margin-bottom:var(--space-2xl)}.text--heading-inverse{font-weight:var(--font-weight-bold);color:var(--color-main-text-inverse)}.text--xs{font-size:var(--font-size-xs);line-height:var(--line-height-base)}.text--sm{font-size:var(--font-size-sm);line-height:var(--line-height-base)}.text--md{font-size:var(--font-size-base);line-height:var(--line-height-base)}.text--lg{font-size:var(--font-size-lg);line-height:var(--line-height-base)}.text--xl{font-size:var(--font-size-xl);line-height:var(--line-height-tight)}.text--2xl{font-size:var(--font-size-2xl);line-height:var(--line-height-tight)}.text--3xl{font-size:var(--font-size-3xl);line-height:var(--line-height-tight)}.text--4xl{font-size:var(--font-size-4xl);line-height:var(--line-height-tight)}}@layer stack{.stack{display:flex;gap:var(--space-md)}.stack--horizontal{flex-direction:row}.stack--vertical{flex-direction:column}.stack--sm{gap:var(--space-sm)}.stack--lg{gap:var(--space-lg)}.stack--xl{gap:var(--space-xl)}}@layer collections-list{.collections-list{display:flex;flex-direction:column;gap:var(--space-md)}@media(min-width:768px){.collections-list{gap:var(--space-lg)}}}@layer pill-button{.pill-button{border-radius:var(--border-radius-full);background:var(--color-primary-300);color:var(--color-primary-300-foreground);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--transition-base);text-decoration:none;display:inline-flex;align-items:center;gap:var(--space-xs);border:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.pill-button--sm{height:26px;padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-xs);min-width:44px}.pill-button--md{height:28px;padding:var(--space-xs) var(--space-md);font-size:var(--font-size-sm)}.pill-button:hover:not([data-disabled]):not(:disabled){background:var(--color-primary-300-hover)}.pill-button:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px}.pill-button[data-disabled],.pill-button:disabled{opacity:.5;cursor:not-allowed}}@layer app-header{:root{--app-header-height: clamp(64px, 10vw, 138px);--app-header-x-padding: var(--layout-gutter)}.app-header{height:var(--app-header-height);display:flex;align-items:center;padding-inline:var(--app-header-x-padding);position:sticky;top:0;z-index:var(--z-sticky);background:var(--color-background-main);border-bottom:1px solid transparent;transition:border-color var(--transition-base)}.app-header--scrolled{border-bottom-color:var(--color-border)}.app-header__nav{display:flex;justify-content:space-between;align-items:center;gap:var(--space-md);flex:1}.app-header__home-link{color:var(--color-main-text);text-decoration:none;transition:color var(--transition-base);font-weight:500;font-size:var(--font-size-lg)}.app-header__home-link:hover{color:var(--color-primary-500)}.app-header__auth-links{display:flex;gap:var(--space-sm);align-items:center}.app-header__auth-link{color:var(--color-main-text);text-decoration:none;transition:color var(--transition-base);font-size:var(--font-size-sm);padding:var(--space-xs) var(--space-sm)}.app-header__auth-link:hover{color:var(--color-primary-500)}@media(min-width:768px){.app-header__auth-links{gap:var(--space-md)}}}@layer avatar{.avatar{display:inline-flex;border-radius:var(--border-radius-full);overflow:hidden;flex-shrink:0}.avatar--sm{width:var(--avatar-size-sm);height:var(--avatar-size-sm)}.avatar--md{width:var(--avatar-size-md);height:var(--avatar-size-md)}.avatar--lg{width:var(--avatar-size-lg);height:var(--avatar-size-lg)}.avatar__image{width:100%;height:100%;object-fit:cover}.avatar__fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--color-gray-100);color:var(--color-gray-600);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm)}.avatar--sm .avatar__fallback{font-size:var(--font-size-xs)}.avatar--lg .avatar__fallback{font-size:var(--font-size-base)}}@layer popover{.popover{position:relative}.popover__positioner{z-index:var(--z-popover)}.popover__content{z-index:var(--z-popover);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--border-radius-md);box-shadow:var(--shadow-lg);padding:var(--space-md);width:calc(100vw - var(--space-lg) * 2);max-width:300px}@media(min-width:480px){.popover__content{width:auto}}.popover__title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-gray-800);margin:0 0 var(--space-xs) 0}.popover__description{font-size:var(--font-size-sm);color:var(--color-gray-600);margin:0 0 var(--space-md) 0}.popover__close-trigger{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:var(--border-radius-sm);background:transparent;color:var(--color-gray-600);cursor:pointer;transition:background-color var(--transition-base),color var(--transition-base);font-size:var(--font-size-lg);line-height:1}.popover__close-trigger:hover{background:var(--color-gray-50);color:var(--color-gray-800)}.popover__close-trigger:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px}.popover__arrow{--arrow-background: var(--color-white);--arrow-shadow: var(--shadow-lg)}}@layer user-menu{.user-menu{position:relative}.user-menu__avatar-trigger{background:transparent;border:none;padding:0;cursor:pointer;display:flex;align-items:center;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.user-menu__avatar-trigger:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px;border-radius:var(--border-radius-full)}.user-menu__content{background:var(--color-surface-main);border:1px solid var(--color-border);border-radius:var(--border-radius-md);box-shadow:var(--shadow-lg);min-width:180px;max-width:calc(100vw - var(--space-lg) * 2);padding:var(--space-xs);z-index:var(--z-popover)}@media(min-width:480px){.user-menu__content{min-width:200px}}.user-menu__menu{display:flex;flex-direction:column;gap:0}.user-menu__label{display:block;padding:var(--space-sm) var(--space-md);color:var(--color-main-text);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-xs);word-break:break-word}.user-menu__link,.user-menu__button{display:block;width:100%;text-align:left;padding:var(--space-sm) var(--space-md);color:var(--color-main-text);text-decoration:none;background:transparent;border:none;font-family:var(--font-family);font-size:var(--font-size-sm);cursor:pointer;transition:background-color var(--transition-base);border-radius:var(--border-radius-sm);margin:2px 0}.user-menu__link:hover,.user-menu__button:hover{background:var(--color-surface-main-hover)}.user-menu__link:focus-visible,.user-menu__button:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:-2px}}@layer footer{.footer{padding:var(--space-lg) var(--layout-gutter);margin-top:auto;border-top:1px solid var(--color-border);background-color:var(--color-surface-main)}@media(min-width:768px){.footer{padding:var(--space-xl) var(--layout-gutter)}}.footer__container{max-width:1200px;margin:0 auto}.footer__nav{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-sm) var(--space-md);margin-bottom:var(--space-md)}@media(min-width:768px){.footer__nav{gap:var(--space-lg);margin-bottom:var(--space-lg)}}.footer__link{color:var(--color-secondary-text);text-decoration:none;font-size:var(--font-size-sm);transition:color var(--transition-base);padding:var(--space-xs)}.footer__link:hover{color:var(--color-main-text)}.footer__copyright{margin:0;color:var(--color-secondary-text);text-align:center;font-size:var(--font-size-xs)}@media(min-width:768px){.footer__copyright{font-size:var(--font-size-sm)}}}@layer garden-body{.garden-body{padding:var(--space-md) var(--layout-gutter)}@media(min-width:768px){.garden-body{padding:var(--space-lg) var(--layout-gutter)}}}@layer garden-header{.garden-header{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-md) 0;padding-left:var(--space-md)}@media(min-width:768px){.garden-header{flex-direction:row;align-items:center}}.garden-header__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-main-text);margin:0}@media(min-width:768px){.garden-header__title{font-size:var(--font-size-4xl)}}.garden-header__actions{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}@media(min-width:768px){.garden-header__actions{justify-content:flex-end;flex:1;padding-top:var(--space-xs)}}}@layer field{.field,.field--grid{display:flex;flex-direction:column;gap:var(--space-xs)}@media(min-width:480px){.field--grid{display:grid;grid-template-columns:6rem 1fr;gap:var(--space-sm);align-items:center}}.field--list{display:flex;flex-direction:column;gap:var(--space-xs)}.field--list .field__input{margin-bottom:var(--space-sm)}.field__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.field__label--default{color:var(--color-main-text)}.field__label--inverse{color:var(--color-main-text-inverse)}@media(min-width:768px){.field__label{font-size:var(--font-size-md)}}.field__input{padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--border-radius-sm);font-size:var(--font-size-base);font-family:var(--font-family);color:var(--color-white);background:var(--color-background-main);transition:border-color var(--transition-base),box-shadow var(--transition-base);width:100%;min-height:var(--button-height-md)}.field__input--inverse{color:var(--color-main-text-inverse);background:var(--color-background-main-inverse)}.field__input::placeholder{color:var(--color-secondary-text)}.field__input:focus{outline:none;border-color:var(--color-primary-500);box-shadow:0 0 0 3px oklch(from var(--color-primary-500) l c h / .1)}.field__input:disabled{opacity:.5;cursor:not-allowed;background:var(--color-gray-100)}[data-scope=field][data-part=input][data-invalid]{border-color:var(--color-error-500)}[data-scope=field][data-part=input][data-invalid]:focus{box-shadow:0 0 0 3px oklch(from var(--color-error-500) l c h / .1)}.field__helper-text{font-size:var(--font-size-xs);color:var(--color-gray-500)}.field__error-text{font-size:var(--font-size-xs);color:var(--color-error-500)}.field__textarea{padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--border-radius-sm);font-size:var(--font-size-base);font-family:var(--font-family);color:var(--color-white);background:var(--color-background-main);transition:border-color var(--transition-base),box-shadow var(--transition-base);resize:vertical;width:100%;min-height:5rem}.field__textarea::placeholder{color:var(--color-secondary-text)}.field__textarea:focus{outline:none;border-color:var(--color-primary-500);box-shadow:0 0 0 3px oklch(from var(--color-primary-500) l c h / .1)}.field__textarea:disabled{opacity:.5;cursor:not-allowed;background:var(--color-gray-100)}[data-scope=field][data-part=textarea][data-invalid]{border-color:var(--color-error-500)}[data-scope=field][data-part=textarea][data-invalid]:focus{box-shadow:0 0 0 3px oklch(from var(--color-error-500) l c h / .1)}}@layer password-input{.password-input{display:flex;flex-direction:column;gap:var(--space-xs)}.password-input__input{padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--border-radius-sm);font-size:var(--font-size-base);font-family:var(--font-family);color:var(--color-main-text);background:var(--color-white);transition:border-color var(--transition-base),box-shadow var(--transition-base);width:100%;min-height:var(--button-height-md)}.password-input__input--inverse{color:var(--color-main-text-inverse);background:var(--color-background-main-inverse)}.password-input__visibility-trigger--inverse{color:var(--color-main-text-inverse)}.password-input__input::placeholder{color:var(--color-secondary-text)}.password-input__input:hover{border-color:var(--color-primary-500)}.password-input__input:focus{outline:none;border-color:var(--color-primary-500);box-shadow:0 0 0 3px oklch(from var(--color-primary-500) l c h / .1)}.password-input__input:disabled{opacity:.5;cursor:not-allowed;background:var(--color-gray-100)}.password-input__visibility-trigger{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-sm);border:none;background:transparent;color:var(--color-gray-600);cursor:pointer;border-radius:var(--border-radius-sm);transition:background-color var(--transition-base),color var(--transition-base);min-width:44px;min-height:44px}.password-input__visibility-trigger:hover{background:var(--color-gray-50);color:var(--color-gray-800)}.password-input__visibility-trigger:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px}}@layer select{.select{position:relative;width:100%}.select__label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-main-text);margin-bottom:var(--space-xs)}@media(min-width:768px){.select__label{font-size:var(--font-size-md)}}.select__trigger{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--border-radius-sm);background:var(--color-background-main);cursor:pointer;font-size:var(--font-size-base);font-family:var(--font-family);color:var(--color-white);transition:border-color var(--transition-base),box-shadow var(--transition-base),background-color var(--transition-base);width:100%;min-height:var(--button-height-md);position:relative;text-align:left}.select__trigger:hover:not(:disabled):not([data-disabled]){border-color:var(--color-primary-500)}[data-scope=select][data-part=trigger][data-state=open]{border-color:var(--color-primary-500)}.select__trigger:focus-visible{outline:none;border-color:var(--color-primary-500);box-shadow:0 0 0 3px #4ba3f71a}@supports (color: oklch(from red l c h)){.select__trigger:focus-visible{box-shadow:0 0 0 3px oklch(from var(--color-primary-500) l c h / .1)}}.select__trigger:disabled,.select__trigger[data-disabled]{opacity:.5;cursor:not-allowed;background:var(--color-gray-100)}[data-scope=select][data-part=trigger][data-invalid]{border-color:var(--color-error-500)}[data-scope=select][data-part=trigger][data-invalid]:focus-visible{box-shadow:0 0 0 3px #dc35451a}@supports (color: oklch(from white l c h)){[data-scope=select][data-part=trigger][data-invalid]:focus-visible{box-shadow:0 0 0 3px oklch(from var(--color-error-500) l c h / .1)}}.select__value-text{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}[data-scope=select][data-part=value-text]:empty:before{content:attr(data-placeholder);color:var(--color-secondary-text)}.select__indicator{flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--color-secondary-text);transition:transform var(--transition-base),color var(--transition-base);width:1rem;height:1rem}[data-scope=select][data-part=trigger][data-state=open] .select__indicator,[data-scope=select][data-part=trigger][data-state=open] [data-scope=select][data-part=indicator]{transform:rotate(180deg)}.select__positioner{z-index:var(--z-dropdown, 1000)}.select__content{background:var(--color-background-main);border:1px solid var(--color-border);border-radius:var(--border-radius-sm);box-shadow:var(--shadow-md);max-height:300px;overflow-y:auto;overflow-x:hidden;width:var(--reference-width, 100%);animation:select-content-open .15s ease-out;outline:none}@keyframes select-content-open{0%{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.select__content::-webkit-scrollbar{width:8px}.select__content::-webkit-scrollbar-track{background:var(--color-gray-100);border-radius:var(--border-radius-sm)}.select__content::-webkit-scrollbar-thumb{background:var(--color-gray-400);border-radius:var(--border-radius-sm)}.select__content::-webkit-scrollbar-thumb:hover{background:var(--color-gray-500)}.select__item{padding:var(--space-sm) var(--space-md);cursor:pointer;font-size:var(--font-size-base);font-family:var(--font-family);color:var(--color-white);transition:background-color var(--transition-fast),color var(--transition-fast);min-height:44px;display:flex;align-items:center;gap:var(--space-sm);position:relative;outline:none}.select__item:hover,[data-scope=select][data-part=item][data-highlighted]{background:var(--color-gray-100);color:var(--color-main-text)}[data-scope=select][data-part=item][data-state=checked]{background:var(--color-primary-500);color:var(--color-primary-500-foreground);font-weight:var(--font-weight-medium)}[data-scope=select][data-part=item][data-state=checked]:hover,[data-scope=select][data-part=item][data-state=checked][data-highlighted]{background:var(--color-primary-600)}[data-scope=select][data-part=item][data-disabled]{opacity:.5;cursor:not-allowed;pointer-events:none}.select__item-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select__item-indicator{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:1rem;height:1rem;color:inherit;opacity:0;transform:scale(.8);transition:opacity var(--transition-fast),transform var(--transition-fast)}[data-scope=select][data-part=item][data-state=checked] .select__item-indicator,[data-scope=select][data-part=item][data-state=checked] [data-scope=select][data-part=item-indicator]{opacity:1;transform:scale(1)}.select__hidden-select{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px;overflow:hidden}}
