:root{--page-pad:clamp(16px, 4vw, 48px);--hb-font-size-01:12px;--hb-font-size-02:14px;--hb-font-size-03:16px;--hb-font-size-04:20px;--hb-font-size-05:24px;--hb-font-size-06:32px;--hb-font-size-07:40px;--hb-font-size-08:48px;--hb-font-size-09:64px;--hb-font-size-10:100px;--hb-font-weight-thin:100;--hb-font-weight-extralight:200;--hb-font-weight-light:300;--hb-font-weight-regular:400;--hb-font-weight-medium:500;--hb-font-weight-semibold:600;--hb-font-weight-bold:700;--hb-font-weight-extrabold:800;--hb-font-weight-black:900;--hb-space-0:0px;--hb-space-050:2px;--hb-space-100:4px;--hb-space-150:6px;--hb-space-200:8px;--hb-space-300:12px;--hb-space-400:16px;--hb-space-500:20px;--hb-space-600:24px;--hb-space-700:28px;--hb-space-800:32px;--hb-space-900:36px;--hb-space-1100:44px;--hb-space-1200:48px;--hb-space-1600:64px;--hb-space-2000:80px;--hb-space-2400:96px;--hb-space-4000:160px;--hb-space-n100:-4px;--hb-space-n200:-8px;--hb-space-n300:-12px;--hb-space-n400:-16px;--hb-space-n600:-24px;--hb-radius-100:2px;--hb-radius-200:8px;--hb-radius-400:16px;--hb-radius-full:9999px;--hb-black-100:#0000000d;--hb-black-200:#0000001a;--hb-black-300:#0003;--hb-black-400:#0006;--hb-black-500:#000000b3;--hb-black-600:#000c;--hb-black-700:#000000d9;--hb-black-800:#000000e6;--hb-black-900:#000000f2;--hb-black-1000:#000;--hb-color-error:#dc2626;--hb-white-100:#ffffff0d;--hb-white-200:#ffffff1a;--hb-white-300:#fff3;--hb-white-400:#fff6;--hb-white-500:#ffffffb3;--hb-white-600:#fffc;--hb-white-700:#ffffffd9;--hb-white-800:#ffffffe6;--hb-white-900:#fffffff2;--hb-white-1000:#fff;--hb-background:var(--hb-white-1000);--hb-text:var(--hb-black-1000);--hb-card:var(--hb-black-100);--hb-border:var(--hb-black-200);--hb-muted:var(--hb-font-color-500);--hb-button-radius:var(--hb-radius-full);--hb-input-radius:var(--hb-radius-100);--hb-button-primary-background:var(--hb-black-1000);--hb-button-primary-color:var(--hb-white-1000);--hb-select-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='rgba(0%2C0%2C0%2C0.5)' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--hb-tab-active:var(--hb-white-1000)}[data-theme=dark]{--hb-background:var(--hb-black-1000);--hb-text:var(--hb-white-1000);--hb-card:var(--hb-white-200);--hb-border:var(--hb-white-200);--hb-color-error:#f87171;--hb-font-color-100:var(--hb-white-100);--hb-font-color-200:var(--hb-white-200);--hb-font-color-300:var(--hb-white-300);--hb-font-color-400:var(--hb-white-400);--hb-font-color-500:var(--hb-white-500);--hb-font-color-600:var(--hb-white-600);--hb-font-color-700:var(--hb-white-700);--hb-font-color-800:var(--hb-white-800);--hb-font-color-900:var(--hb-white-900);--hb-font-color-1000:var(--hb-white-1000);--hb-color-100:var(--hb-white-100);--hb-color-200:var(--hb-white-200);--hb-color-300:var(--hb-white-300);--hb-color-400:var(--hb-white-400);--hb-color-500:var(--hb-white-500);--hb-color-600:var(--hb-white-600);--hb-color-700:var(--hb-white-700);--hb-color-800:var(--hb-white-800);--hb-color-900:var(--hb-white-900);--hb-color-1000:var(--hb-white-1000);--hb-button-primary-background:var(--hb-white-1000);--hb-button-primary-color:var(--hb-black-1000);--hb-input-border-color:var(--hb-white-400);--hb-input-border-color-focus:var(--hb-white-800);--hb-input-border:1px solid var(--hb-input-border-color);--hb-input-border-focus:1px solid var(--hb-input-border-color-focus);--hb-select-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='rgba(255%2C255%2C255%2C0.5)' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--hb-tab-active:var(--hb-white-400)}[data-theme=light]{--hb-background:var(--hb-white-1000);--hb-text:var(--hb-black-1000);--hb-card:var(--hb-black-200);--hb-border:var(--hb-black-200);--hb-font-color-100:var(--hb-black-300);--hb-font-color-200:var(--hb-black-200);--hb-font-color-300:var(--hb-black-300);--hb-font-color-400:var(--hb-black-400);--hb-font-color-500:var(--hb-black-500);--hb-font-color-600:var(--hb-black-600);--hb-font-color-700:var(--hb-black-700);--hb-font-color-800:var(--hb-black-800);--hb-font-color-900:var(--hb-black-900);--hb-font-color-1000:var(--hb-black-1000);--hb-color-100:var(--hb-black-100);--hb-color-200:var(--hb-black-200);--hb-color-300:var(--hb-black-300);--hb-color-400:var(--hb-black-400);--hb-color-500:var(--hb-black-500);--hb-color-600:var(--hb-black-600);--hb-color-700:var(--hb-black-700);--hb-color-800:var(--hb-black-800);--hb-color-900:var(--hb-black-900);--hb-color-1000:var(--hb-black-1000);--hb-button-primary-background:var(--hb-black-1000);--hb-button-primary-color:var(--hb-white-1000);--hb-input-border-color:var(--hb-black-400);--hb-input-border-color-focus:var(--hb-black-800);--hb-input-border:1px solid var(--hb-input-border-color);--hb-input-border-focus:1px solid var(--hb-input-border-color-focus);--hb-select-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='rgba(0%2C0%2C0%2C0.5)' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--hb-tab-active:var(--hb-white-1000)}@theme inline{--color-hb-background: var(--hb-background); --color-hb-text: var(--hb-text); --color-hb-card: var(--hb-card); --color-hb-border: var(--hb-border); --color-hb-muted: var(--hb-muted); --color-hb-black-100: var(--hb-black-100); --color-hb-black-200: var(--hb-black-200); --color-hb-black-300: var(--hb-black-300); --color-hb-black-400: var(--hb-black-400); --color-hb-black-500: var(--hb-black-500); --color-hb-black-600: var(--hb-black-600); --color-hb-black-700: var(--hb-black-700); --color-hb-black-800: var(--hb-black-800); --color-hb-black-900: var(--hb-black-900); --color-hb-black-1000: var(--hb-black-1000); --color-hb-white-100: var(--hb-white-100); --color-hb-white-200: var(--hb-white-200); --color-hb-white-300: var(--hb-white-300); --color-hb-white-400: var(--hb-white-400); --color-hb-white-500: var(--hb-white-500); --color-hb-white-600: var(--hb-white-600); --color-hb-white-700: var(--hb-white-700); --color-hb-white-800: var(--hb-white-800); --color-hb-white-900: var(--hb-white-900); --color-hb-white-1000: var(--hb-white-1000); --radius-hb-100: var(--hb-radius-100); --radius-hb-200: var(--hb-radius-200); --radius-hb-400: var(--hb-radius-400); --radius-hb-full: var(--hb-radius-full); --font-sans: var(--font-albert-sans); --text-hb-01: var(--hb-font-size-01); --text-hb-02: var(--hb-font-size-02); --text-hb-03: var(--hb-font-size-03); --text-hb-04: var(--hb-font-size-04); --text-hb-05: var(--hb-font-size-05); --text-hb-06: var(--hb-font-size-06); --text-hb-07: var(--hb-font-size-07); --text-hb-08: var(--hb-font-size-08); --text-hb-09: var(--hb-font-size-09); --text-hb-10: var(--hb-font-size-10); --font-weight-hb-thin: var(--hb-font-weight-thin); --font-weight-hb-extralight: var(--hb-font-weight-extralight); --font-weight-hb-light: var(--hb-font-weight-light); --font-weight-hb-regular: var(--hb-font-weight-regular); --font-weight-hb-medium: var(--hb-font-weight-medium); --font-weight-hb-semibold: var(--hb-font-weight-semibold); --font-weight-hb-bold: var(--hb-font-weight-bold); --font-weight-hb-extrabold: var(--hb-font-weight-extrabold); --font-weight-hb-black: var(--hb-font-weight-black); --spacing-hb-0: var(--hb-space-0); --spacing-hb-050: var(--hb-space-050); --spacing-hb-100: var(--hb-space-100); --spacing-hb-150: var(--hb-space-150); --spacing-hb-200: var(--hb-space-200); --spacing-hb-300: var(--hb-space-300); --spacing-hb-400: var(--hb-space-400); --spacing-hb-500: var(--hb-space-500); --spacing-hb-600: var(--hb-space-600); --spacing-hb-700: var(--hb-space-700); --spacing-hb-800: var(--hb-space-800); --spacing-hb-900: var(--hb-space-900); --spacing-hb-1100: var(--hb-space-1100); --spacing-hb-1200: var(--hb-space-1200); --spacing-hb-1600: var(--hb-space-1600); --spacing-hb-2000: var(--hb-space-2000); --spacing-hb-2400: var(--hb-space-2400); --spacing-hb-4000: var(--hb-space-4000); --spacing-hb-n100: var(--hb-space-n100); --spacing-hb-n200: var(--hb-space-n200); --spacing-hb-n300: var(--hb-space-n300); --spacing-hb-n400: var(--hb-space-n400); --spacing-hb-n600: var(--hb-space-n600);}.inverted{--hb-background:var(--hb-black-1000);--hb-text:var(--hb-white-1000);--hb-card:var(--hb-white-200);--hb-border:var(--hb-white-200);--hb-font-color-100:var(--hb-white-100);--hb-font-color-200:var(--hb-white-200);--hb-font-color-300:var(--hb-white-300);--hb-font-color-400:var(--hb-white-400);--hb-font-color-500:var(--hb-white-500);--hb-font-color-600:var(--hb-white-600);--hb-font-color-700:var(--hb-white-700);--hb-font-color-800:var(--hb-white-800);--hb-font-color-900:var(--hb-white-900);--hb-font-color-1000:var(--hb-white-1000);--hb-color-100:var(--hb-white-100);--hb-color-200:var(--hb-white-200);--hb-color-300:var(--hb-white-300);--hb-color-400:var(--hb-white-400);--hb-color-500:var(--hb-white-500);--hb-color-600:var(--hb-white-600);--hb-color-700:var(--hb-white-700);--hb-color-800:var(--hb-white-800);--hb-color-900:var(--hb-white-900);--hb-color-1000:var(--hb-white-1000);--hb-button-primary-background:var(--hb-white-1000);--hb-button-primary-color:var(--hb-black-1000);--hb-input-border-color:var(--hb-white-400);--hb-input-border-color-focus:var(--hb-white-800);--hb-input-border:1px solid var(--hb-input-border-color);--hb-input-border-focus:1px solid var(--hb-input-border-color-focus)}[data-theme=dark] .inverted{--hb-background:var(--hb-white-1000);--hb-text:var(--hb-black-1000);--hb-card:var(--hb-black-200);--hb-border:var(--hb-black-200);--hb-font-color-100:var(--hb-black-300);--hb-font-color-200:var(--hb-black-200);--hb-font-color-300:var(--hb-black-300);--hb-font-color-400:var(--hb-black-400);--hb-font-color-500:var(--hb-black-500);--hb-font-color-600:var(--hb-black-600);--hb-font-color-700:var(--hb-black-700);--hb-font-color-800:var(--hb-black-800);--hb-font-color-900:var(--hb-black-900);--hb-font-color-1000:var(--hb-black-1000);--hb-color-100:var(--hb-black-100);--hb-color-200:var(--hb-black-200);--hb-color-300:var(--hb-black-300);--hb-color-400:var(--hb-black-400);--hb-color-500:var(--hb-black-500);--hb-color-600:var(--hb-black-600);--hb-color-700:var(--hb-black-700);--hb-color-800:var(--hb-black-800);--hb-color-900:var(--hb-black-900);--hb-color-1000:var(--hb-black-1000);--hb-button-primary-background:var(--hb-black-1000);--hb-button-primary-color:var(--hb-white-1000);--hb-input-border-color:var(--hb-black-400);--hb-input-border-color-focus:var(--hb-black-800);--hb-input-border:1px solid var(--hb-input-border-color);--hb-input-border-focus:1px solid var(--hb-input-border-color-focus)}:root{--font-serif:"Bitter", serif;--font-mono:"Source Code Pro", monospace}*,:before,:after{box-sizing:border-box;margin:0;padding:0}[hidden]{display:none!important}dialog:not([open]){display:none}@media (width<=640px){dialog,dialog[open]{width:100vw!important;max-width:100vw!important;height:100dvh!important;max-height:100dvh!important;margin:0!important;top:0!important;left:0!important}}body:has(dialog[open]){overflow:hidden}body{font-family:var(--font-mono)}.chapeau{font-family:var(--font-serif);font-size:var(--hb-font-size-01);color:#000;margin:var(--hb-space-800) var(--page-pad) var(--hb-space-500) var(--page-pad);padding:var(--hb-space-500) 0 0 0;align-items:center;text-decoration:none;display:flex}.hamburger{top:var(--hb-space-400);right:var(--page-pad);z-index:500;cursor:pointer;padding:var(--hb-space-200);background:0 0;border:none;flex-direction:column;gap:4px;display:flex;position:fixed}.hamburger span{background:currentColor;width:16px;height:1px;display:block}.topbar-dropdown{top:calc(var(--hb-space-400) + 28px);right:var(--page-pad);z-index:500;color:#fff;min-width:200px;padding:var(--hb-space-300) var(--page-pad);background:#000;position:fixed}.topbar-dd-info{font-size:var(--hb-font-size-01);opacity:.5;padding-bottom:var(--hb-space-300);margin-bottom:var(--hb-space-100);border-bottom:1px solid #ffffff26}.topbar-dd-item{color:#fff;width:100%;font-size:var(--hb-font-size-02);text-align:left;padding:var(--hb-space-200) 0;cursor:pointer;background:0 0;border:none;font-family:inherit;display:block}.topbar-dd-item:hover{opacity:.6}.topbar-dd-login{gap:var(--hb-space-200);flex-direction:column;display:flex}.topbar-dd-input{color:#fff;font-size:var(--hb-font-size-02);padding:var(--hb-space-100) 0;background:0 0;border:none;border-bottom:1px solid #fff6;outline:none;font-family:inherit}.topbar-dd-input::placeholder{opacity:.4}a{color:#000}.botanical-name{font-family:var(--font-serif);font-style:italic}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);line-height:1.1}h1{font-size:var(--hb-font-size-10)}@media (width<=640px){h1{font-size:var(--hb-font-size-08)}}.page-header{margin:var(--hb-space-900) var(--page-pad) var(--hb-space-800) var(--page-pad);padding:var(--hb-space-300) 0 0 0}.page-header.chapeau{margin-top:0;padding-top:0}.section-header{margin:var(--hb-space-800) var(--page-pad) var(--hb-space-500) var(--page-pad);padding:var(--hb-space-500) 0 0 0;border-top:1px solid var(--hb-black-1000);align-items:center;display:flex}.section-content{margin:var(--hb-space-500) var(--page-pad)}.section-content.no-horizontal-padding{margin-left:0;margin-right:0}.no-border{border:0}ul{padding-left:var(--page-pad)}#garden-list{min-height:3em;padding-left:0;list-style-position:inside}#garden-list li{margin-bottom:var(--hb-space-150)}.garden-count{color:#000;text-decoration:none}#obs-carousel,#herbar-carousel,#pflanzenlabel-carousel,#notiz-carousel{gap:var(--hb-space-200);scrollbar-width:none;min-height:245px;display:flex;overflow-x:auto}#obs-carousel .carousel-card:first-child,#herbar-carousel .carousel-card:first-child,#pflanzenlabel-carousel .carousel-card:first-child,#notiz-carousel .carousel-card:first-child{margin-left:var(--page-pad)}#obs-carousel::-webkit-scrollbar{display:none}#herbar-carousel::-webkit-scrollbar{display:none}#pflanzenlabel-carousel::-webkit-scrollbar{display:none}#notiz-carousel::-webkit-scrollbar{display:none}.carousel-card{cursor:zoom-in;flex-shrink:0;position:relative}.carousel-card-actions{gap:var(--hb-space-300);padding-top:var(--hb-space-100);display:flex}.carousel-card-edit,.carousel-card-delete{font-size:var(--hb-font-size-01);cursor:pointer;text-underline-offset:2px;color:#000;opacity:.45;background:0 0;border:none;padding:0;text-decoration:underline}.carousel-card-delete{opacity:.3}.carousel-card-creator{font-family:var(--font-mono);font-size:var(--hb-font-size-01);color:var(--hb-black-600);padding-top:var(--hb-space-100)}.carousel-card-img{aspect-ratio:3/4;background:var(--hb-black-100);height:213px;overflow:hidden}.carousel-card-img.is-landscape{aspect-ratio:4/3}.carousel-card-img img{object-fit:cover;width:100%;height:100%}.carousel-card-meta{padding:var(--hb-space-200) 0;gap:var(--hb-space-100);flex-direction:column;width:0;min-width:100%;display:flex}.filter-input{width:100%;padding:var(--hb-space-200) 0;font-family:var(--font-mono);font-size:var(--hb-font-size-02);color:#000;background:0 0;border:none;border-bottom:1px solid #000;outline:none}.filter-input::placeholder{color:#000;opacity:1}.plant-filter-bed-label{align-items:center;gap:var(--hb-space-200);font-size:var(--hb-font-size-01);color:var(--hb-black-400);cursor:pointer;margin-top:var(--hb-space-200);-webkit-user-select:none;user-select:none;display:flex}#plant-list{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));display:grid}@media (width<=640px){#plant-list{grid-template-columns:repeat(3,1fr)}}.plant-card{aspect-ratio:1;padding:var(--hb-space-400);gap:var(--hb-space-100);color:#000;cursor:pointer;background:#fff;border:1px solid #000;flex-direction:column;margin:-1px 0 0 -1px;transition:background .2s,color .2s;display:flex;position:relative;overflow:hidden}.plant-card:hover{background:var(--plant-color,#fff);color:var(--plant-fg,#000)}.plant-card .plant-dot{width:var(--plant-dot-size);height:var(--plant-dot-size);background:var(--plant-color);z-index:0;border-radius:50%;position:absolute;bottom:10px;right:12px}.plant-card .botanical-name,.plant-card .german-name,.plant-card .plant-family{z-index:1;position:relative}.plant-card .botanical-name{font-size:var(--hb-font-size-02);line-height:1.3}.plant-card .german-name{font-size:var(--hb-font-size-01)}.plant-card .plant-family{color:var(--hb-black-400);font-size:10px}.plant-new{bottom:var(--hb-space-400);left:var(--hb-space-400);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;opacity:.55;font-size:9px;font-style:normal;font-weight:600;position:absolute}.carousel-card-meta .botanical-name{font-size:var(--hb-font-size-02);color:var(--hb-black-1000);white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.carousel-card-meta .observation-place{font-size:var(--hb-font-size-01);color:var(--hb-black-400);text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase;overflow:hidden}.carousel-card-meta .observation-date{font-size:var(--hb-font-size-01);color:var(--hb-black-400)}.carousel-card--all{aspect-ratio:3/4;color:#fff;text-align:center;font-family:var(--font-serif);padding:var(--hb-space-300);background:#000;justify-content:center;align-items:center;display:flex}dialog#obs-form-dialog{background:0 0;border:none;width:min(680px,96vw);height:98dvh;padding:0;overflow:hidden}dialog#obs-form-dialog[open]{margin:auto;display:flex}dialog#obs-form-dialog:focus{outline:none}@media (width<=640px){.obs-form-inner{padding:var(--hb-space-400);border-radius:0}}dialog#obs-form-dialog::backdrop{background:#00000073}dialog#add-plant-dialog{background:0 0;border:none;width:min(680px,96vw);height:auto;padding:0;overflow:hidden}dialog#add-plant-dialog[open]{margin:auto;display:flex}dialog#add-plant-dialog:focus{outline:none}dialog#add-plant-dialog::backdrop{background:#00000073}.obs-form-inner{width:100%;height:100%;padding:var(--hb-space-800);gap:var(--hb-space-400);background:#fff;flex-direction:column;display:flex;overflow:hidden}.obs-form-inner>*{flex-shrink:0}#obs-form-identified{border-bottom:1px solid var(--hb-color-border,#e5e5e5);padding-bottom:var(--hb-space-400);flex-shrink:0}#obs-form-plant-grid{flex:1 1 0;min-height:60px;overflow-y:auto}.obs-form-inner .section-header{border-top:none;margin:0;padding:0}.obs-form-title{font-family:var(--font-serif);font-size:var(--hb-font-size-06);font-weight:600;line-height:1}@media (width<=640px){.obs-form-title{font-size:var(--hb-font-size-05)}}.obs-form-row{gap:var(--hb-space-400);flex-wrap:wrap;display:flex}.obs-form-field{gap:var(--hb-space-100);flex-direction:column;flex:1;min-width:100px;display:flex}.obs-form-field--shrink{flex:none}.obs-form-label{font-size:var(--hb-font-size-01);opacity:.6}.obs-input,.obs-select,.obs-textarea{font-family:var(--font-sans);font-size:var(--hb-font-size-02);padding:var(--hb-space-100) 0;background:0 0;border:none;border-bottom:1px solid #ccc;width:100%}.obs-textarea{resize:vertical;min-height:72px;max-height:120px;padding:var(--hb-space-200);border:1px solid #ccc;flex-shrink:1}.obs-file-row{gap:var(--hb-space-300);display:flex}.obs-file-label{padding:var(--hb-space-400);cursor:pointer;font-size:var(--hb-font-size-01);color:#888;border:1px dashed #ccc;flex:1;justify-content:center;align-items:center;transition:border-color .15s,color .15s;display:flex}.obs-file-label.has-file{color:#000;border-color:#000}.obs-file-label input[type=file],.obs-camera-label{display:none}@media (width<=640px){.obs-camera-label{display:flex}}.obs-form-preview{display:none}@media (width>=641px){.obs-form-preview{text-align:center;background:#f4f4f0;display:block;position:relative}.obs-form-preview img{object-fit:contain;max-width:100%;max-height:240px;margin:0 auto;display:block}.obs-rotate-btn{bottom:var(--hb-space-200);right:var(--hb-space-200);cursor:pointer;background:#ffffffd9;border:1px solid #ccc;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;line-height:1;display:flex;position:absolute}}.obs-form-location{align-items:center;gap:var(--hb-space-200);font-size:var(--hb-font-size-01);color:#666;flex-wrap:wrap;display:flex;position:relative}.location-results{border:1px solid var(--hb-color-border,#ccc);border-radius:var(--hb-radius-md,6px);z-index:100;background:#fff;max-height:180px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #0000001f}.location-result{padding:var(--hb-space-200) var(--hb-space-300);font-size:var(--hb-font-size-01);cursor:pointer;border-bottom:1px solid var(--hb-color-border,#eee)}.location-result:last-child{border-bottom:none}.location-result:hover,.location-result:active{background:#f5f5f5}.loc-pill{align-items:center;gap:var(--hb-space-100);background:var(--hb-black-100,#f0f0f0);padding:var(--hb-space-100) var(--hb-space-200) var(--hb-space-100) var(--hb-space-300);border-radius:20px;display:inline-flex}.loc-found{color:#333}.loc-missing{color:#999}.loc-clear{cursor:pointer;color:#999;font-size:var(--hb-font-size-01);background:0 0;border:none;padding:0;text-decoration:underline}.loc-clear:hover{color:#333}.obs-place-input{font-size:var(--hb-font-size-01);flex:1}.obs-plant-grid{flex-direction:column;gap:0;display:flex}.obs-plant-grid-header{font-size:var(--hb-font-size-01);opacity:.45;margin:var(--hb-space-300) 0 var(--hb-space-100)}.obs-plant-chip{align-items:center;gap:var(--hb-space-300);font-size:var(--hb-font-size-02);padding:var(--hb-space-200) 0;opacity:.35;cursor:pointer;-webkit-user-select:none;user-select:none;border:none;display:flex}.obs-plant-chip input[type=checkbox]{display:none}.obs-plant-chip.checked{opacity:1}.chip-dot{background:#bbb;border-radius:50%;flex-shrink:0;width:10px;height:10px}.chip-botanical{font-style:italic;font-family:var(--font-serif)}.chip-de{opacity:.65;font-style:normal;font-size:var(--hb-font-size-01)}.chip-remove{color:inherit;opacity:.45;cursor:pointer;background:0 0;border:none;margin-left:auto;padding:0;font-size:1em;line-height:1;display:none}.chip-remove:hover{opacity:1}.obs-plant-chip.checked .chip-remove{display:block}.obs-plant-chip.pn-identifying{opacity:.35;font-style:italic}.obs-plant-chip.pn-new-plant{opacity:1;text-align:left;background:0 0;width:100%}.chip-new{font-size:var(--hb-font-size-00);font-family:var(--font-mono);opacity:.4;letter-spacing:.05em;margin-left:auto}.pn-score{font-style:normal;font-size:var(--hb-font-size-00);opacity:.5}.obs-add-plant-wrap{width:100%}.obs-add-plant-btn{font-size:var(--hb-font-size-01);color:#888;cursor:pointer;padding:var(--hb-space-100) 0;text-underline-offset:2px;background:0 0;border:none;text-decoration:underline}.obs-form-msg{font-size:var(--hb-font-size-01);color:#c00}.obs-form-actions{gap:var(--hb-space-300);margin-top:var(--hb-space-n200);align-items:center;display:flex}.action-btn-ghost{font-size:var(--hb-font-size-02);color:#888;cursor:pointer;background:0 0;border:none;padding:0}dialog#obs-modal{background:0 0;border:none;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;position:fixed;inset:0;overflow:visible}dialog#obs-modal[open]{cursor:zoom-out;justify-content:center;align-items:center;display:flex}dialog#obs-modal:focus{outline:none}dialog#obs-modal::backdrop{background:0 0}.obs-nav{color:#fff;padding:var(--hb-space-400) var(--hb-space-500);cursor:pointer;text-shadow:0 2px 12px #000c;z-index:10;background:0 0;border:none;font-size:3rem;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.obs-nav--prev{left:0}.obs-nav--next{right:0}.obs-nav[hidden]{display:none}.obs-modal-inner{display:contents}.obs-modal-img{display:inline-flex;position:relative}.obs-modal-img img{filter:drop-shadow(0 8px 32px #0009);width:auto;max-width:95vw;height:auto;max-height:95dvh;display:block}.obs-modal-info{bottom:var(--hb-space-400);right:var(--hb-space-400);padding:var(--hb-space-200);gap:var(--hb-space-100);background:#fff;flex-direction:column;max-width:160px;display:flex;position:absolute}.obs-modal-plants{gap:var(--hb-space-100);flex-direction:column;display:flex}.obs-modal-plant-link{font-size:var(--hb-font-size-02);cursor:pointer}.obs-modal-garden-link{color:inherit;text-underline-offset:2px;text-decoration:underline}.obs-modal-info .observation-place,.obs-modal-info .observation-date,.obs-modal-note{font-size:var(--hb-font-size-01);color:var(--hb-black-400)}.obs-modal-map,.obs-map-link{font-size:var(--hb-font-size-02);text-decoration:none}.obs-modal-list{background:#000;flex-direction:column;gap:2px;width:100%;height:100%;display:flex;overflow-y:auto}.obs-list-close{top:var(--hb-space-400);right:var(--hb-space-400);z-index:10;margin-left:0;position:fixed}.obs-list-item{cursor:default;background:#000}.obs-list-img-wrap{background:#111;width:100%}.obs-list-img{width:100%;height:auto;display:block}.obs-list-meta{padding:var(--hb-space-300) var(--hb-space-400);gap:var(--hb-space-100);background:#fff;flex-direction:column;display:flex}.obs-list-plants{gap:var(--hb-space-100);flex-direction:column;display:flex}.obs-list-note{font-size:var(--hb-font-size-01);color:var(--hb-black-400)}dialog#lightbox{background:0 0;border:none;width:100%;max-width:100%;height:100%;max-height:100%;margin:0;padding:0}dialog#lightbox[open]{cursor:zoom-out;justify-content:center;align-items:center;display:flex}dialog#lightbox:focus{outline:none}dialog#lightbox::backdrop{background:#00000080}#lightbox-img{object-fit:contain;max-width:100%;max-height:100%}dialog#plant-modal:focus{outline:none}dialog#plant-modal{background:var(--plant-color,#fff);width:90%;max-width:90%;height:90%;max-height:90%;color:var(--plant-fg,#000);border:none;margin:auto;padding:0}dialog#plant-modal::backdrop{background:#00000080}.plant-modal-inner{flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}.action-btn{color:#fff;padding:0 var(--hb-space-300);height:32px;font-family:var(--font-mono);font-size:var(--hb-font-size-01);cursor:pointer;white-space:nowrap;background:#000;border:none;border-radius:16px}dialog#plant-modal .action-btn{background:var(--plant-fg,#000);color:var(--plant-color,#fff)}.plant-modal-layout{flex:1;min-height:0;display:flex;overflow:hidden}.plant-modal-info,.plant-modal-observations{flex:1;min-height:0;overflow-y:auto}.plant-modal-info{padding:var(--hb-space-800)}.plant-modal-observations{flex-direction:column;display:flex}.plant-modal-obs-header{background:var(--plant-color,#fff);z-index:1;padding:var(--hb-space-800) var(--hb-space-800) 0;flex-wrap:wrap;align-items:center;display:flex;position:sticky;top:0}.plant-modal-obs-header .section-header{flex-basis:100%}.obs-all-toggle{align-items:center;gap:var(--hb-space-200);font-size:var(--hb-font-size-01);color:var(--plant-fg,#000);opacity:.6;cursor:pointer;margin-left:auto;margin-bottom:var(--hb-space-500);-webkit-user-select:none;user-select:none;display:flex}.obs-all-toggle input[type=checkbox]{accent-color:var(--plant-fg,#000);cursor:pointer;width:12px;height:12px}.plant-modal-obs-list{padding:0 var(--hb-space-800) var(--hb-space-800)}.plant-modal-header{gap:var(--hb-space-100);margin-bottom:var(--hb-space-500);flex-direction:column;display:flex}.plant-modal-header .botanical-name{font-size:var(--hb-font-size-10);line-height:1.1}.plant-modal-header .german-name{font-size:var(--hb-font-size-03)}.plant-modal-meta{align-items:center;gap:var(--hb-space-200);margin-top:var(--hb-space-200);display:flex}.plant-modal-family{color:var(--plant-fg,#000);font-family:var(--font-mono);font-size:var(--hb-font-size-01);padding:var(--hb-space-100) 0;background:0 0;border:none;outline:none}.plant-color-swatch{background:var(--plant-color,#fff);border:1px solid var(--plant-fg,#000);cursor:pointer;border-radius:50%;flex-shrink:0;width:20px;height:20px;display:none}.plant-color-picker,#plant-modal-obs-btn{display:none}dialog#plant-modal.authenticated #plant-modal-obs-btn{display:inline-flex}dialog#plant-modal.authenticated .plant-color-swatch{display:block}dialog#plant-modal.authenticated .plant-color-picker{opacity:0;border:none;width:0;height:0;padding:0;display:block}.plant-modal-gardens{gap:var(--hb-space-200);margin-bottom:var(--hb-space-500);flex-wrap:wrap;display:flex}.garden-badge{font-size:var(--hb-font-size-01);border:1px solid var(--plant-fg,#000);padding:var(--hb-space-100) var(--hb-space-200);color:var(--plant-fg,#000);text-decoration:none}@media (width>=768px){.plant-modal-data summary{display:none}}.plant-modal-data summary{font-size:var(--hb-font-size-01);cursor:pointer;padding:var(--hb-space-300) 0;border-top:1px solid var(--plant-fg,#000);list-style:none}.plant-modal-data summary:after{content:" ▾"}.plant-modal-data[open] summary:after{content:" ▴"}.plant-modal-bloom-bar{margin:var(--hb-space-300) 0;gap:2px;display:flex}.bloom-cell{text-align:center;padding:var(--hb-space-100) 0;border:1px solid var(--plant-fg,#000);opacity:.3;flex:1;font-size:10px}.bloom-cell.active{opacity:1;background:var(--plant-fg,#000);color:var(--plant-color,#fff)}.plant-info-row{gap:var(--hb-space-300);padding:var(--hb-space-100) 0;border-bottom:1px solid var(--plant-fg,#000);font-size:var(--hb-font-size-01);display:flex}.plant-info-label{opacity:.6;flex-shrink:0;width:100px}.plant-info-input{color:var(--plant-fg,#000);font-size:var(--hb-font-size-01);background:0 0;border:none;flex:1;min-width:0;padding:0;font-family:inherit}.plant-info-input:focus{border-bottom-color:var(--plant-fg,#000);opacity:1;outline:none}.plant-info-input::placeholder{opacity:.3}.plant-info-actions{margin-top:var(--hb-space-300);justify-content:space-between;align-items:center;display:flex}.action-btn-outline{color:var(--plant-fg,#000);border:1px solid var(--plant-fg,#000);padding:0 var(--hb-space-300);height:32px;font-family:var(--font-mono);font-size:var(--hb-font-size-01);cursor:pointer;white-space:nowrap;background:0 0;border-radius:16px;align-items:center;display:inline-flex}.bloom-bar--editable .bloom-cell{cursor:pointer}.plant-modal-changelog{margin-top:var(--hb-space-400)}.plant-modal-changelog summary{font-size:var(--hb-font-size-01);opacity:.6;cursor:pointer;padding:var(--hb-space-200) 0;list-style:none}.plant-modal-changelog summary::-webkit-details-marker{display:none}.changelog-row{gap:var(--hb-space-200);padding:var(--hb-space-100) 0;font-size:var(--hb-font-size-01);border-top:1px solid color-mix(in srgb, var(--plant-fg,#000) 10%, transparent);grid-template-columns:auto auto 1fr auto;align-items:baseline;display:grid}.changelog-date{opacity:.5}.changelog-author{opacity:.45;text-align:right}.changelog-field{opacity:.7}.changelog-old{opacity:.4;text-decoration:line-through}.changelog-new{font-weight:500}.obs-group-title{font-size:var(--hb-font-size-01);opacity:.6;padding:var(--hb-space-300) 0 var(--hb-space-200);text-transform:uppercase}.plant-modal-obs-list{gap:var(--hb-space-400);display:flex}.obs-col{flex:1;min-width:0}.modal-obs-card{break-inside:avoid;padding-bottom:var(--hb-space-300);margin-bottom:var(--hb-space-300);border-bottom:1px solid var(--plant-fg,#000);position:relative}.modal-obs-actions{gap:var(--hb-space-300);padding-top:var(--hb-space-100);display:flex}.modal-obs-edit,.modal-obs-delete{font-size:var(--hb-font-size-01);cursor:pointer;text-underline-offset:2px;color:var(--plant-fg,#000);opacity:.45;background:0 0;border:none;padding:0;text-decoration:underline}.modal-obs-delete{opacity:.3}.modal-obs-edit:hover,.modal-obs-delete:hover{opacity:.8}.modal-obs-img{width:100%;margin-bottom:var(--hb-space-200)}.modal-obs-img img{cursor:zoom-in;width:100%;height:auto;display:block}.modal-obs-meta{gap:var(--hb-space-100);font-size:var(--hb-font-size-01);flex-direction:column;display:flex}.plant-modal-observations .section-header{margin:0 0 var(--hb-space-300);padding:var(--hb-space-300) 0;border-top:none;flex-basis:100%}.plant-modal-observations .action-btn-outline{margin-bottom:var(--hb-space-500);align-self:flex-start}@media (width<=640px){.plant-modal-layout{flex-direction:column;height:auto;overflow:visible}.plant-modal-inner{height:auto;overflow-y:visible}dialog#plant-modal{overflow-y:auto}.plant-modal-info{padding:var(--hb-space-500) var(--page-pad);overflow-y:visible}.plant-modal-header .botanical-name{font-size:var(--hb-font-size-08)}.plant-modal-observations{overflow-y:visible}.plant-modal-obs-header{padding:var(--hb-space-500) var(--page-pad) 0;position:static}.plant-modal-obs-list{padding:0 var(--page-pad) var(--hb-space-800)}.obs-col:last-child{display:none}.obs-col:first-child{width:100%}#plant-modal-close{top:var(--hb-space-400);right:var(--hb-space-400);z-index:10;position:fixed}}.garden-layout{visibility:hidden;height:100dvh;display:flex;overflow:hidden}.garden-layout.has-bed,.garden-layout.no-bed{visibility:visible}@media (width<=640px){.garden-layout{flex-direction:column;height:auto;overflow:visible}.garden-col{height:auto;overflow-y:visible;width:100%!important}.garden-panels{flex-direction:column;width:100%!important}.garden-col--plants{margin-left:0!important;transition:none!important}.garden-col--bed{transition:none!important}.garden-panels:hover .garden-col--bed,.garden-panels.is-expanded .garden-col--bed,.garden-panels:hover .garden-col--plants,.garden-panels.is-expanded .garden-col--plants{margin-left:0!important;transform:none!important}}.garden-col{background:#fff;flex-shrink:0;height:100%;overflow-y:auto}.garden-col--garden{z-index:0;width:40vw;position:relative}.garden-panels{flex-shrink:0;align-self:stretch;display:flex}.garden-col--bed{z-index:1;width:40vw;display:none;position:relative;box-shadow:-4px 0 20px #00000014}.garden-layout.has-bed .garden-col--bed{display:block}.garden-col--plants{z-index:2;width:40vw;margin-left:-10vw;position:relative;box-shadow:-4px 0 20px #00000014}.garden-layout.is-interactive .garden-col--bed,.garden-layout.is-interactive .garden-col--plants{transition:transform .5s cubic-bezier(.34,1.2,.64,1),margin-left .5s cubic-bezier(.34,1.2,.64,1)}.garden-layout.is-interactive .garden-panels:hover .garden-col--bed,.garden-panels.is-expanded .garden-col--bed{transform:translate(-20vw)}.garden-layout.is-interactive .garden-panels:hover .garden-col--plants,.garden-panels.is-expanded .garden-col--plants{margin-left:0;transform:translate(-20vw)}.garden-layout.no-bed .garden-col--garden,.garden-layout.no-bed .garden-panels{width:50vw}.garden-layout.no-bed .garden-col--plants{width:100%;margin-left:0}.garden-layout.no-bed.is-interactive .garden-panels:hover .garden-col--plants,.garden-layout.no-bed .garden-panels.is-expanded .garden-col--plants{transform:none}#bed-plan{padding:0 var(--hb-space-600) var(--hb-space-600)}.bed-plan-svg{width:100%;height:auto;display:block}.bed-plan-svg circle[data-slug]{cursor:pointer}.bed-plan-svg .bed-number{font-family:var(--font-mono);fill:#000;font-weight:700}#bed-plan.is-editable .bed-plan-svg{cursor:crosshair}#bed-plan.is-editable .bed-plan-svg circle[data-slug]{cursor:pointer}.plant-card.is-selected{box-shadow:inset 0 0 0 2px #000}.action-btn.is-active{color:#fff;background:#000}#bed-edit-btn{margin-left:auto}.bed-tooltip{z-index:200;padding:var(--hb-space-200) var(--hb-space-300);pointer-events:none;background:#fff;border:1px solid #000;position:fixed}.bed-tooltip-name{font-family:var(--font-serif);font-style:italic;font-size:var(--hb-font-size-02)}.bed-tooltip-de{font-size:var(--hb-font-size-01);color:var(--hb-black-600)}.obs-type-tabs{gap:var(--hb-space-200);margin:var(--hb-space-300) var(--page-pad) var(--hb-space-500);flex-wrap:wrap;display:flex}.obs-type-tab{font-family:var(--font-mono);font-size:var(--hb-font-size-01);color:var(--hb-black-600);padding:var(--hb-space-100) var(--hb-space-200);border:1px solid var(--hb-black-800);text-decoration:none}.obs-type-tab.is-active{background:var(--hb-black-1000);color:#fff;border-color:var(--hb-black-1000)}.obs-grid{gap:var(--hb-space-300);margin:0 var(--page-pad) var(--hb-space-800);grid-template-columns:repeat(auto-fill,minmax(160px,1fr));display:grid}.obs-grid .carousel-card{width:100%}.obs-grid .carousel-card-img{aspect-ratio:3/4;width:100%;height:auto}.obs-grid .carousel-card-meta{width:100%;min-width:unset}.section-link{color:inherit;text-decoration:none}.section-link:hover{text-decoration:underline}.action-btn-icon{color:#fff;cursor:pointer;background:#000;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;margin-left:auto;font-size:20px;line-height:1;display:flex}
