:root{--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--toast-dock-offset: calc(96px + env(safe-area-inset-bottom, 0px)) }.toast-container{position:fixed;z-index:60;left:16px;right:16px;bottom:var(--toast-dock-offset);display:flex;flex-direction:column-reverse;align-items:center;gap:10px;pointer-events:none}.toast{width:100%;max-width:420px;padding:12px 16px;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);pointer-events:auto;font-size:var(--text-caption);font-weight:var(--font-semibold);line-height:var(--leading-caption);animation:toastEnterMobile .24s var(--ease-out-expo) forwards}.toast--exit{animation:toastExitMobile .18s var(--ease-out-expo) forwards}.toast--success{background:var(--brand-primary);color:var(--surface);border:1px solid var(--brand-primary-dk)}.toast--error{background:var(--error);color:var(--surface);border:1px solid var(--error-hover)}.toast--info{background:var(--surface);color:var(--text-primary);border:1px solid oklch(65% .18 160 / .28);box-shadow:var(--shadow-md)}@media (min-width: 768px){.toast-container{top:28px;right:clamp(24px,3vw,40px);left:auto;bottom:auto;flex-direction:column;align-items:flex-end;width:min(400px,calc(100vw - 48px))}.toast{width:auto;min-width:280px;max-width:100%;animation:toastEnterDesktop .24s var(--ease-out-expo) forwards}.toast--exit{animation:toastExitDesktop .18s var(--ease-out-expo) forwards}}@keyframes toastEnterMobile{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toastExitMobile{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-10px) scale(.98)}}@keyframes toastEnterDesktop{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}@keyframes toastExitDesktop{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(12px)}}@media (prefers-reduced-motion: reduce){.toast{animation:none}.toast--exit{animation:none;opacity:0}}.push-onboarding{position:fixed;left:50%;transform:translate(-50%);bottom:calc(76px + env(safe-area-inset-bottom));width:min(100% - 24px,460px);z-index:80;display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-lg);animation:pushOnbIn .32s cubic-bezier(.16,1,.3,1) forwards}@media (min-width: 768px){.push-onboarding{left:auto;right:24px;transform:none;bottom:24px}}.push-onboarding-text{flex:1;min-width:0}.push-onboarding-title{margin:0;font-size:var(--text-caption);font-weight:var(--font-bold);color:var(--text-primary)}.push-onboarding-sub{margin:2px 0 0;font-size:var(--text-caption);line-height:1.4;color:var(--text-secondary)}.push-onboarding-actions{display:flex;flex-shrink:0;gap:8px}.push-onboarding-later{min-height:40px;padding:0 12px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:var(--text-caption);font-weight:var(--font-semibold);cursor:pointer}.push-onboarding-later:hover{color:var(--text-primary)}.push-onboarding-enable{min-height:40px;padding:0 16px;border:none;border-radius:var(--radius-md);background:var(--brand-primary);color:#fff;font-size:var(--text-caption);font-weight:var(--font-bold);cursor:pointer;transition:background-color .2s ease}.push-onboarding-enable:hover:not(:disabled){background:var(--brand-primary-dk)}.push-onboarding-enable:disabled{background:var(--disabled);color:var(--text-muted);cursor:default}@keyframes pushOnbIn{0%{opacity:0;transform:translate(-50%) translateY(16px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@media (min-width: 768px){@keyframes pushOnbIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}}@media (prefers-reduced-motion: reduce){.push-onboarding{animation:none}}.fb-fab{position:fixed;bottom:calc(88px + env(safe-area-inset-bottom));right:20px;z-index:45;width:52px;height:52px;border-radius:var(--radius-full);border:none;background:var(--brand-primary);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #00aa6f73,0 1px 4px #00aa6f33;box-shadow:0 4px 16px oklch(65% .18 160 / .45),0 1px 4px oklch(65% .18 160 / .2);transition:background .15s,transform .15s,box-shadow .15s;animation:fb-fab-in .35s cubic-bezier(.16,1,.3,1) both}@keyframes fb-fab-in{0%{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}.fb-fab:hover{background:var(--brand-primary-md);transform:scale(1.07);box-shadow:0 6px 22px #00aa6f8c,0 2px 6px #00aa6f40;box-shadow:0 6px 22px oklch(65% .18 160 / .55),0 2px 6px oklch(65% .18 160 / .25)}.fb-fab:active{transform:scale(.93)}.fb-fab:focus-visible{outline:2px solid var(--brand-primary);outline-offset:3px}@media (min-width: 768px){.fb-fab{bottom:32px;right:32px}}.fb-overlay{position:fixed;left:0;right:0;top:var(--viewport-offset-top, 0px);height:var(--app-height, 100dvh);background:#0203068c;z-index:50;display:flex;align-items:flex-end;justify-content:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}@media (min-width: 640px){.fb-overlay{align-items:center}}.fb-sheet{width:100%;max-height:100%;display:flex;flex-direction:column;background:var(--surface);overflow:hidden;border-radius:var(--radius-lg) var(--radius-lg) 0 0;animation:fb-sheet-in .28s cubic-bezier(.16,1,.3,1) both}@keyframes fb-sheet-in{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}@media (min-width: 640px){.fb-sheet{position:relative;inset:auto;width:100%;max-width:480px;max-height:88dvh;border-radius:var(--radius-lg);box-shadow:0 24px 64px #0000002e,0 4px 16px #00000014}}.fb-header{display:flex;align-items:center;justify-content:space-between;padding:18px 16px 14px;border-bottom:1px solid var(--border);flex-shrink:0}.fb-title{font-size:18px;font-weight:800;letter-spacing:-.02em;color:var(--text-primary);margin:0;line-height:1.2}.fb-close-btn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:none;background:none;cursor:pointer;color:var(--text-muted);border-radius:var(--radius-full);transition:background .15s,color .15s;flex-shrink:0}.fb-close-btn:hover{background:var(--hover-bg);color:var(--text-primary)}.fb-close-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.fb-body{flex:1;overflow-y:auto;padding:20px 16px 8px;display:flex;flex-direction:column;gap:20px;-webkit-overflow-scrolling:touch}.fb-sub{font-size:14px;color:var(--text-muted);line-height:1.6;margin:0}.fb-type-group{display:flex;gap:8px;flex-wrap:wrap}.fb-type-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:var(--radius-full);border:1.5px solid var(--border);background:var(--bg);color:var(--text-secondary);font-size:14px;font-weight:600;cursor:pointer;transition:border-color .15s,background .15s,color .15s;font-family:inherit}.fb-type-chip:hover{border-color:var(--brand-primary);color:var(--brand-primary)}.fb-type-chip--active{border-color:var(--brand-primary);background:color-mix(in oklch,var(--brand-primary) 10%,transparent);color:var(--brand-primary)}.fb-type-chip:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.fb-field{display:flex;flex-direction:column;gap:6px}.fb-label{font-size:13px;font-weight:700;color:var(--text-secondary);letter-spacing:.01em}.fb-label-optional{font-weight:400;color:var(--text-muted);font-size:12px}.fb-textarea,.fb-input{width:100%;padding:11px 14px;border-radius:var(--radius-md);border:1.5px solid var(--border);font-size:15px;background:var(--bg);color:var(--text-primary);outline:none;font-family:inherit;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.fb-textarea{resize:vertical;min-height:110px;max-height:240px;line-height:1.55}.fb-textarea:focus,.fb-input:focus{border-color:var(--brand-primary);box-shadow:0 0 0 3px #00aa6f1f;box-shadow:0 0 0 3px oklch(65% .18 160 / .12)}.fb-textarea::placeholder,.fb-input::placeholder{color:var(--text-muted)}.fb-counter{font-size:12px;color:var(--text-muted);text-align:right;margin:0;transition:color .15s;min-height:16px}.fb-counter--warn{color:var(--warning)}.fb-footer{padding:12px 16px;border-top:1px solid var(--border);flex-shrink:0;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}.fb-submit-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px;border-radius:var(--radius-full);border:none;background:var(--brand-primary);color:var(--text-on-brand);font-size:16px;font-weight:700;cursor:pointer;transition:background .15s,box-shadow .15s,transform .1s;font-family:inherit;box-shadow:0 2px 10px #00aa6f59;box-shadow:0 2px 10px oklch(65% .18 160 / .35)}.fb-submit-btn:hover:not(:disabled){background:var(--brand-primary-md);box-shadow:0 4px 14px #00aa6f73;box-shadow:0 4px 14px oklch(65% .18 160 / .45)}.fb-submit-btn:active:not(:disabled){transform:scale(.98);box-shadow:none}.fb-submit-btn:disabled{background:var(--disabled);box-shadow:none;cursor:default}.fb-submit-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:3px}.fb-spinner{display:inline-block;width:18px;height:18px;border:2.5px solid oklch(99% .002 160 / .35);border-top-color:var(--text-on-brand);border-radius:50%;animation:fb-spin .7s linear infinite;flex-shrink:0}@keyframes fb-spin{to{transform:rotate(360deg)}}@supports (view-transition-name: none){::view-transition-old(root),::view-transition-new(root){animation:none}.fb-fab--morph,.fb-sheet{view-transition-name:fb-morph}.fb-overlay{view-transition-name:fb-overlay}::view-transition-old(fb-morph){animation:.22s cubic-bezier(.16,1,.3,1) both vt-fade-out}::view-transition-new(fb-morph){animation:.34s cubic-bezier(.16,1,.3,1) both vt-fade-in}::view-transition-old(fb-overlay){animation:.2s ease-out both vt-fade-out}::view-transition-new(fb-overlay){animation:.26s cubic-bezier(.16,1,.3,1) both vt-fade-in}@keyframes vt-fade-out{0%{opacity:1}to{opacity:0}}@keyframes vt-fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion: reduce){::view-transition-old(fb-morph),::view-transition-new(fb-morph),::view-transition-old(fb-overlay),::view-transition-new(fb-overlay){animation-duration:.01ms!important}}}.parkly-v2 .hdr-v3{padding:8px 16px}.parkly-v2 .hdr-v3-logo{height:3.5rem;width:auto}.parkly-v2 .hdr-v3-actions{display:flex;align-items:center;gap:8px}.parkly-v2 .hdr-v3-profile{display:inline-flex;align-items:center;gap:10px;padding:4px 8px 4px 4px;border-radius:var(--radius-full);text-decoration:none;color:var(--text-primary);transition:background-color .2s cubic-bezier(.16,1,.3,1)}.parkly-v2 .hdr-v3-profile:hover{background:var(--hover-bg)}.parkly-v2 .hdr-v3-profile:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.parkly-v2 .hdr-v3-ring{display:grid;place-items:center;padding:2px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--brand-primary-lt),var(--brand-primary))}.parkly-v2 .hdr-v3-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:var(--radius-full);background:var(--surface);color:var(--brand-primary-dk);font-size:var(--text-caption);font-weight:var(--font-bold)}.parkly-v2 .hdr-v3-avatar-img{width:38px;height:38px;border-radius:var(--radius-full);object-fit:cover;display:block}.parkly-v2 .hdr-v3-name{font-size:var(--text-caption);font-weight:var(--font-semibold)}.parkly-v2 .hdr-v3-logout{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:44px;min-height:44px;padding:0 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);cursor:pointer;font-size:var(--text-caption);font-weight:var(--font-semibold)}.parkly-v2 .hdr-v3-logout:hover{color:var(--error);border-color:#f3bfbe}.parkly-v2 .hdr-v3-logout:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}@media (max-width: 479px){.parkly-v2 .hdr-v3-name,.parkly-v2 .hdr-v3-logout-text{display:none}.parkly-v2 .hdr-v3-logout{width:44px;padding:0}}.parkly-v2{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;display:grid;grid-template-rows:auto 1fr;background:var(--bg);background-image:url(/parking-bg3.svg);background-position:center center;background-repeat:no-repeat;background-size:cover;background-attachment:scroll}.parkly-v2 .v2-top{padding-top:env(safe-area-inset-top);border-bottom:1px solid var(--border);background:var(--surface)}.parkly-v2 .v2-grid{display:grid;grid-template-columns:1fr;max-width:1200px;margin:0 auto;width:100%;overflow-y:auto;-webkit-overflow-scrolling:touch;min-height:0}.parkly-v2 .v2-sidebar{display:none}.parkly-v2 .v2-main{padding:16px 16px calc(76px + env(safe-area-inset-bottom))}.parkly-v2 .v2-title{margin:0 0 4px}.parkly-v2 .v2-sub{color:var(--text-muted);margin:0 0 16px}.parkly-v2 .v2-content{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px;box-shadow:var(--shadow-md)}.parkly-v2 .v2-dock{position:fixed;left:0;right:0;bottom:0;z-index:50;display:grid;grid-template-columns:repeat(5,1fr);gap:0;padding:8px 4px env(safe-area-inset-bottom);background:#ffffffe6;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--border);border-radius:0;box-shadow:none}.parkly-v2 .v2-dock a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:10px 4px;border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-tiny);font-weight:var(--font-bold);transition:transform .2s cubic-bezier(.16,1,.3,1),background-color .2s cubic-bezier(.16,1,.3,1)}.parkly-v2 .v2-dock a:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.parkly-v2 .v2-dock a[aria-current=page]{background:transparent;color:var(--brand-primary-dk);transform:none}.parkly-v2 .v2-dock svg{width:18px;height:18px}.parkly-v2 .v2-sidebar a{display:block;padding:10px 12px;border-radius:var(--radius-sm);font-size:var(--text-caption);font-weight:var(--font-semibold);color:var(--text-secondary);transition:background-color .2s cubic-bezier(.16,1,.3,1)}.parkly-v2 .v2-sidebar a:hover,.parkly-v2 .v2-sidebar a[aria-current=page]{background:var(--hover-bg);color:var(--brand-primary)}.v2-dock-icon-wrap{position:relative;display:inline-flex}.v2-dock-badge{position:absolute;top:-5px;right:-7px;min-width:16px;height:16px;padding:0 3px;border-radius:var(--radius-full);background:var(--error);color:var(--surface);font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1;border:1.5px solid var(--brand-secondary)}.v2-sidebar-chat-link{display:flex!important;align-items:center;justify-content:space-between}.v2-sidebar-badge{min-width:20px;height:20px;padding:0 5px;border-radius:var(--radius-full);background:var(--error);color:var(--surface);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1;flex-shrink:0}@media (min-width: 768px){.parkly-v2 .v2-grid{grid-template-columns:minmax(200px,240px) 1fr;gap:24px;padding:24px}.parkly-v2 .v2-sidebar{display:flex;flex-direction:column;gap:8px;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);height:fit-content;position:sticky;top:24px}.parkly-v2 .v2-dock{display:none}.parkly-v2 .v2-main{padding-bottom:24px}}.chat-overlay{position:fixed;left:0;right:0;top:var(--viewport-offset-top, 0px);height:var(--app-height, 100dvh);background:#0203068c;z-index:50;display:flex;align-items:flex-end;justify-content:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:20px 8px}@media (min-width: 640px){.chat-overlay{align-items:center;padding:0 8px}}.chat-sheet{width:100%;height:95%;display:flex;flex-direction:column;background:var(--surface);overflow:hidden;border-radius:var(--radius-lg)}@media (min-width: 640px){.chat-sheet{width:100%;max-width:70dvw;height:88dvh;max-height:720px;border-radius:var(--radius-lg);box-shadow:0 24px 64px #0000002e,0 4px 16px #00000014}}.chat-header{display:flex;align-items:center;gap:12px;padding:16px 16px 14px;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0}.chat-header-info{flex:1;min-width:0}.chat-header-name{font-size:16px;font-weight:700;letter-spacing:-.01em;color:var(--text-primary);margin:0 0 1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.chat-header-spot{font-size:12px;color:var(--brand-primary);font-weight:600;margin:0;letter-spacing:.01em}.chat-close-btn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:none;background:none;cursor:pointer;color:var(--text-muted);border-radius:var(--radius-full);transition:background .15s,color .15s;flex-shrink:0}.chat-close-btn:hover{background:var(--hover-bg);color:var(--text-primary)}.chat-body{flex:1;overflow-y:auto;padding:20px 14px 12px;display:flex;flex-direction:column;gap:16px;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.chat-body::-webkit-scrollbar{width:4px}.chat-body::-webkit-scrollbar-track{background:transparent}.chat-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.chat-day-sep{display:flex;align-items:center;gap:10px;margin:4px 0 8px}.chat-day-sep:before,.chat-day-sep:after{content:"";flex:1;height:1px;background:var(--border)}.chat-day-sep span{font-size:11px;font-weight:600;letter-spacing:.04em;color:var(--text-muted);padding:3px 10px;background:var(--bg);border-radius:var(--radius-full);white-space:nowrap}.chat-group{display:flex;flex-direction:column;gap:2px}.chat-group--mine{align-items:flex-end}.chat-group--theirs{align-items:flex-start}.chat-group-row{display:flex;align-items:flex-end;gap:8px}.chat-bubble-wrapper--mine{width:100%;display:flex;flex-direction:column;align-items:end}.chat-bubble-wrapper--theirs{width:100%;display:flex;flex-direction:column;align-items:start}.chat-group--mine .chat-group-row{flex-direction:row-reverse;width:100%}.chat-group--theirs .chat-group-row{width:100%}.chat-avatar-spacer{width:32px;flex-shrink:0}.chat-bubble{max-width:70%;padding:9px 14px;font-size:15px;line-height:1.55;word-break:break-word}@media (min-width: 640px){.chat-bubble{max-width:65%}}.chat-bubble--mine{background:var(--brand-primary);color:var(--text-on-brand);border-radius:18px 18px 4px;box-shadow:0 2px 8px #00aa6f40;box-shadow:0 2px 8px oklch(65% .18 160 / .25)}.chat-bubble--theirs{background:var(--bg);color:var(--text-primary);border-radius:18px 18px 18px 4px;border:1px solid var(--border)}.chat-time{font-size:11px;color:var(--text-muted);margin-top:3px;padding:0 4px;letter-spacing:.01em}.chat-group--mine .chat-time{text-align:right}.chat-composer{display:flex;align-items:flex-end;gap:10px;padding:12px 14px;background:var(--surface);border-top:1px solid var(--border);flex-shrink:0;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}.chat-composer-input{flex:1;padding:10px 16px;border-radius:var(--radius-full);border:1.5px solid var(--border);font-size:15px;background:var(--bg);color:var(--text-primary);outline:none;transition:height .12s cubic-bezier(.16,1,.3,1),border-color .15s,box-shadow .15s;resize:none;font-family:inherit;min-height:44px;max-height:120px;height:44px;overflow-y:auto;line-height:1.5}.chat-composer-input:focus{border-color:var(--brand-primary);box-shadow:0 0 0 3px #00aa6f1f;box-shadow:0 0 0 3px oklch(65% .18 160 / .12)}.chat-composer-input::placeholder{color:var(--text-muted)}.chat-send-btn{width:44px;height:44px;border-radius:var(--radius-full);border:none;background:var(--brand-primary);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s,transform .1s,box-shadow .15s;box-shadow:0 2px 10px #00aa6f59;box-shadow:0 2px 10px oklch(65% .18 160 / .35)}.chat-send-btn:hover{background:var(--brand-primary-md);box-shadow:0 4px 14px #00aa6f73;box-shadow:0 4px 14px oklch(65% .18 160 / .45)}.chat-send-btn:active{transform:scale(.92);box-shadow:none}.chat-send-btn:disabled{background:var(--disabled);box-shadow:none;cursor:default}.chat-send-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:3px}.chat-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--text-muted);padding:40px 20px;text-align:center}.chat-empty p{margin:0;font-size:14px;line-height:1.6;max-width:26ch}.chat-trigger-btn{display:inline-flex;width:100%;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius-full);border:1.5px solid var(--brand-primary);background:none;color:var(--brand-primary);font-size:13px;font-weight:600;cursor:pointer;transition:background .15s,color .15s;position:relative;font-family:inherit}.chat-trigger-btn:hover{background:var(--hover-bg)}.chat-badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 5px;border-radius:var(--radius-full);background:var(--error);color:var(--surface);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1}.chat-inbox-page{display:flex;flex-direction:column;gap:20px}.chat-inbox-header{padding-bottom:4px}.chat-inbox-title{margin:0 0 4px}.chat-inbox-sub{margin:0;color:var(--text-muted)}.chat-inbox-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.chat-inbox-card{width:100%;display:flex;align-items:center;gap:14px;padding:14px 12px;background:none;border:none;border-radius:var(--radius-md);cursor:pointer;text-align:left;transition:background .15s;color:inherit;font-family:inherit}.chat-inbox-card:hover{background:var(--hover-bg)}.chat-inbox-card:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.chat-inbox-card--unread{background:oklch(from var(--brand-primary) l c h / .06)}.chat-inbox-card--unread:hover{background:oklch(from var(--brand-primary) l c h / .1)}.chat-inbox-avatar-wrap{position:relative;flex-shrink:0}.chat-inbox-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 4px;border-radius:var(--radius-full);background:var(--error);color:var(--surface);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1;border:2px solid var(--surface)}.chat-inbox-info{flex:1;min-width:0}.chat-inbox-peer{margin:0 0 2px;font-size:15px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-inbox-card--unread .chat-inbox-peer{font-weight:700}.chat-inbox-meta{margin:0;font-size:13px;color:var(--text-muted);display:flex;align-items:center;gap:8px}.chat-inbox-role{font-size:11px;font-weight:600;color:var(--brand-primary);background:oklch(from var(--brand-primary) l c h / .1);padding:1px 7px;border-radius:var(--radius-full)}.chat-inbox-chevron{color:var(--text-muted);flex-shrink:0;opacity:.5}.chat-inbox-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:48px 24px;text-align:center}.chat-inbox-empty-title{margin:0;font-size:17px;font-weight:700;color:var(--text-primary)}.chat-inbox-empty-sub{margin:0;font-size:14px;color:var(--text-muted);max-width:28ch;line-height:1.6}.chat-inbox-loading{display:flex;flex-direction:column;align-items:center;gap:12px;padding:48px 24px;color:var(--text-muted);font-size:14px}.dt-range{display:flex;flex-direction:column;gap:20px}.dt-picker{display:flex;flex-direction:column;gap:12px}.dt-picker-head{display:flex;flex-direction:column;gap:4px}.dt-picker-label{margin:0;font-size:var(--text-caption);font-weight:var(--font-bold);color:var(--text-secondary)}.dt-picker-summary{margin:0;font-size:var(--text-body);font-weight:var(--font-extrabold);line-height:1.25;color:var(--text-primary)}.dt-quick-section{display:flex;flex-direction:column;gap:8px}.dt-quick-section-label{margin:0;font-size:var(--text-tiny);font-weight:var(--font-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.dt-quick-row{display:flex;flex-wrap:wrap;gap:8px}.dt-quick-chip{min-height:40px;padding:0 14px;border:1px solid var(--border);border-radius:var(--radius-full);background:var(--surface);font-size:var(--text-caption);font-weight:var(--font-bold);color:var(--text-secondary);cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1),border-color .2s cubic-bezier(.16,1,.3,1),color .2s cubic-bezier(.16,1,.3,1)}.dt-quick-chip:hover{border-color:#00aa6f59;border-color:oklch(65% .18 160 / .35);color:var(--brand-primary-dk);background:#eafaf059}.dt-quick-chip--active{border-color:var(--brand-primary);background:var(--brand-primary);color:#fff}.dt-quick-confirm{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid oklch(65% .18 160 / .35);border-radius:var(--radius-md);background:#e5fcee66}.dt-quick-confirm-title{margin:0;font-size:var(--text-caption);font-weight:var(--font-bold);color:var(--brand-primary-dk)}.dt-quick-confirm-range{margin:0;font-size:var(--text-subheading);font-weight:var(--font-extrabold);line-height:1.2;color:var(--text-primary)}.dt-applied-range{margin:0;padding:10px 12px;border-radius:var(--radius-sm);font-size:var(--text-caption);font-weight:var(--font-bold);line-height:1.35;color:var(--brand-primary-dk);background:#eafaf059}.dt-quick-fromnow{gap:12px}.dt-quick-fromnow-info{margin:0;font-size:var(--text-caption);line-height:1.45;color:var(--text-secondary)}.dt-quick-fromnow-block{display:flex;flex-direction:column;gap:8px}.dt-quick-fromnow-block-label{margin:0;font-size:var(--text-tiny);font-weight:var(--font-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.dt-quick-fromnow-or{margin:0;font-size:var(--text-caption);font-weight:var(--font-semibold);color:var(--text-muted);text-align:center}.dt-quick-confirm-actions{display:flex;flex-wrap:wrap;gap:8px}.dt-quick-confirm-secondary,.dt-quick-confirm-primary{min-height:44px;padding:0 14px;border-radius:var(--radius-sm);font-size:var(--text-caption);font-weight:var(--font-bold);cursor:pointer}.dt-quick-confirm-secondary{border:1px solid var(--border);background:var(--surface);color:var(--text-primary)}.dt-quick-confirm-primary{border:none;background:var(--brand-primary);color:#fff;box-shadow:0 4px 14px #00aa6f47;box-shadow:0 4px 14px oklch(65% .18 160 / .28)}.dt-day-shortcuts{display:flex;flex-wrap:wrap;gap:8px}.dt-day-shortcut{min-height:44px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius-full);background:var(--bg);font-size:var(--text-tiny);font-weight:var(--font-bold);color:var(--text-secondary);cursor:pointer}.dt-day-shortcut--active{border-color:var(--brand-primary);color:var(--brand-primary-dk);background:#dffeec8c}.dt-wheels{display:grid;grid-template-columns:1.2fr .8fr;gap:12px}.dt-wheel-col{display:flex;flex-direction:column;gap:6px;min-width:0}.dt-wheel-col-label{margin:0;font-size:var(--text-tiny);font-weight:var(--font-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);text-align:center}.dt-wheel{position:relative;height:calc(var(--dt-wheel-item-height, 44px) * 5);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);overflow:hidden;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,oklch(0% 0 0) 18%,oklch(0% 0 0) 82%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,oklch(0% 0 0) 18%,oklch(0% 0 0) 82%,transparent 100%)}.dt-wheel--empty{display:flex;align-items:center;justify-content:center}.dt-wheel-empty{margin:0;font-size:var(--text-caption);color:var(--text-muted)}.dt-wheel-highlight{position:absolute;top:50%;left:8px;right:8px;z-index:0;height:var(--dt-wheel-item-height, 44px);border-radius:var(--radius-sm);background:#dffeeca6;border:1px solid oklch(65% .18 160 / .25);transform:translateY(-50%);pointer-events:none}.dt-wheel-track{position:relative;z-index:1;height:100%;overflow-y:auto;padding-block:calc(var(--dt-wheel-item-height, 44px) * 2);scroll-snap-type:y mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}.dt-wheel-track::-webkit-scrollbar{display:none}.dt-wheel-item{display:flex;width:100%;flex-direction:column;align-items:center;justify-content:center;gap:1px;border:none;background:transparent;cursor:pointer;scroll-snap-align:center;color:var(--text-muted);transition:color .2s cubic-bezier(.16,1,.3,1)}.dt-wheel-item-label{font-size:var(--text-caption);font-weight:var(--font-semibold);line-height:1.1}.dt-wheel-item-sub{font-size:var(--text-tiny);line-height:1.1}.dt-wheel-item--active{color:var(--brand-primary-dk)}.dt-wheel-item--active .dt-wheel-item-label{font-weight:var(--font-extrabold)}.dt-picker-error{margin:0;font-size:var(--text-tiny);color:var(--error)}.dt-range-divider{height:1px;background:var(--border)}:root{--dt-wheel-item-height: 44px}@media (prefers-reduced-motion: reduce){.dt-quick-chip,.dt-wheel-item{transition:none}}.demands-page{display:flex;flex-direction:column;gap:20px}.demands-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.demands-new-btn{min-height:44px;padding:0 16px;border:none;border-radius:var(--radius-md);background:var(--brand-primary);color:#fff;font-size:var(--text-caption);font-weight:var(--font-bold);cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1)}.demands-new-btn:hover{background:var(--brand-primary-dk)}.demands-section{display:flex;flex-direction:column;gap:12px}.demands-section-title{margin:0;font-size:var(--text-caption);font-weight:var(--font-bold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.demands-list{display:grid;gap:12px}@media (min-width: 640px){.demands-list{grid-template-columns:repeat(2,1fr)}}.demand-card{display:flex;flex-direction:column;gap:10px;padding:16px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-md);animation:demandCardIn .36s cubic-bezier(.16,1,.3,1) both}.demand-card--mine{flex-direction:row;align-items:center;justify-content:space-between;background:color-mix(in oklch,var(--brand-primary) 5%,var(--surface))}.demand-card-main{display:flex;flex-direction:column;gap:4px}.demand-card-head{display:flex;align-items:center;gap:10px}.demand-card-avatar{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;flex-shrink:0;border-radius:var(--radius-full);background:var(--brand-secondary);color:#fff;font-size:var(--text-tiny);font-weight:var(--font-bold)}.demand-card-name{margin:0;font-size:var(--text-caption);font-weight:var(--font-bold);color:var(--text-primary)}.demand-card-when{margin:0;font-size:var(--text-tiny);color:var(--text-muted)}.demand-card-range{margin:0;font-size:var(--text-caption);font-weight:var(--font-semibold);color:var(--brand-primary-md)}.demand-card-note{margin:0;font-size:var(--text-caption);line-height:1.45;color:var(--text-secondary)}.demand-card-status{font-size:var(--text-tiny);font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.04em;color:var(--brand-primary-md)}.demand-card-cancel{flex-shrink:0;min-height:40px;padding:0 14px;border:1px solid var(--border);border-radius:var(--radius-md);background:transparent;color:var(--error);font-weight:var(--font-semibold);cursor:pointer;transition:background-color .16s ease}.demand-card-cancel:hover{background:color-mix(in oklch,var(--error) 8%,transparent)}.demand-card-fulfill{min-height:44px;padding:0 16px;border:none;border-radius:var(--radius-md);background:var(--brand-primary);color:#fff;font-weight:var(--font-bold);cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1)}.demand-card-fulfill:hover{background:var(--brand-primary-dk)}.demands-empty{display:flex;flex-direction:column;gap:6px;padding:28px 20px;text-align:center;border:1px dashed var(--border);border-radius:var(--radius-lg)}.demands-empty-title{margin:0;font-size:var(--text-subheading);font-weight:var(--font-extrabold);color:var(--text-primary)}.demand-empty-text{margin:0;font-size:var(--text-caption);line-height:1.5;color:var(--text-secondary)}.demand-modal-backdrop{position:fixed;left:0;right:0;top:var(--viewport-offset-top, 0px);height:var(--app-height, 100dvh);z-index:90;display:flex;align-items:flex-end;justify-content:center;padding:16px;padding-top:max(16px,env(safe-area-inset-top));padding-bottom:calc(var(--toast-dock-offset, 96px));background:#131a2973;animation:demandBackdropIn .22s cubic-bezier(.16,1,.3,1) forwards}.demand-modal-dialog{width:min(100%,460px);max-height:100%;display:flex;flex-direction:column;overflow:hidden;border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-lg);padding-bottom:env(safe-area-inset-bottom);animation:demandDialogIn .32s cubic-bezier(.16,1,.3,1) forwards}.demand-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 18px 12px;border-bottom:1px solid var(--border)}.demand-modal-title{margin:0;font-size:var(--text-subheading);font-weight:var(--font-extrabold);color:var(--text-primary);line-height:1.2}.demand-modal-sub{margin:4px 0 0;font-size:var(--text-caption);color:var(--text-secondary);line-height:1.4}.demand-modal-close{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:var(--radius-full);background:var(--hover-bg, oklch(95% .006 260));color:var(--text-secondary);cursor:pointer;transition:background-color .16s ease}.demand-modal-close:hover{background:var(--border);color:var(--text-primary)}.demand-modal-body{display:flex;flex-direction:column;gap:14px;padding:16px 18px 20px;overflow-y:auto;flex:1 1 auto;min-height:0}.demand-form{display:flex;flex-direction:column;gap:14px}.demand-modal-primary{min-height:48px;padding:0 18px;border:none;border-radius:var(--radius-md);background:var(--brand-primary);color:#fff;font-size:var(--text-caption);font-weight:var(--font-bold);cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1)}.demand-modal-primary:hover:not(:disabled){background:var(--brand-primary-dk)}.demand-modal-primary:disabled{background:var(--disabled);color:var(--text-muted);cursor:default}.demand-note-field{display:flex;flex-direction:column;gap:6px}.demand-note-label{font-size:var(--text-caption);font-weight:var(--font-semibold);color:var(--text-secondary)}.demand-note-input{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text-primary);font:inherit;resize:vertical}.demand-note-input:focus-visible{outline:2px solid var(--brand-primary);outline-offset:1px}.demand-note-error{margin:0;font-size:var(--text-tiny);color:var(--error)}.demand-fulfill-note{margin:0;font-size:var(--text-caption);font-style:italic;color:var(--text-secondary)}.demand-spot-picker{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;border:none}.demand-spot-picker-legend{padding:0;margin-bottom:4px;font-size:var(--text-caption);font-weight:var(--font-semibold);color:var(--text-secondary)}.demand-spot-option{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 14px;border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer}.demand-spot-option:has(input:checked){border-color:var(--brand-primary);background:color-mix(in oklch,var(--brand-primary) 8%,transparent)}.demand-spot-option-label{font-size:var(--text-caption);font-weight:var(--font-semibold);color:var(--text-primary)}.demand-fulfill-hint{margin:0;font-size:var(--text-tiny);line-height:1.45;color:var(--text-muted)}@keyframes demandCardIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes demandBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes demandDialogIn{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.demand-card,.demand-modal-backdrop,.demand-modal-dialog{animation:none}}.reservation-success-backdrop{position:fixed;left:0;right:0;top:var(--viewport-offset-top, 0px);height:var(--app-height, 100dvh);z-index:80;display:flex;align-items:center;justify-content:center;padding:20px;padding-top:max(20px,env(safe-area-inset-top));padding-bottom:calc(var(--toast-dock-offset, 96px));background:#131a2985;animation:reservationSuccessBackdropIn .22s cubic-bezier(.16,1,.3,1) forwards}.reservation-success-dialog{width:min(100%,420px);overflow:hidden;border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-lg);animation:reservationSuccessDialogIn .34s cubic-bezier(.16,1,.3,1) forwards}.reservation-success-image-wrap{padding:14px 14px 0}.reservation-success-image{display:block;width:100%;max-height:min(52vh,340px);object-fit:fill;border-radius:var(--radius-md);animation:reservationSuccessImageIn .42s cubic-bezier(.16,1,.3,1) 80ms both}.reservation-success-body{display:flex;flex-direction:column;gap:10px;padding:18px 18px 20px;text-align:center}.reservation-success-kicker{margin:0;font-size:var(--text-tiny);font-weight:var(--font-bold);letter-spacing:.08em;color:var(--brand-primary-md)}.reservation-success-title{margin:0;font-size:var(--text-subheading);font-weight:var(--font-extrabold);color:var(--text-primary);line-height:1.2}.reservation-success-details{margin:0;font-size:var(--text-caption);font-weight:var(--font-semibold);color:var(--brand-primary-md)}.reservation-success-text{margin:0;font-size:var(--text-caption);line-height:1.5;color:var(--text-secondary)}.reservation-success-actions{display:flex;flex-direction:column;gap:8px;margin-top:6px}.reservation-success-primary{min-height:48px;padding:0 18px;border:none;border-radius:var(--radius-md);background:var(--brand-primary);color:#fff;font-size:var(--text-caption);font-weight:var(--font-bold);cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1)}.reservation-success-primary:hover{background:var(--brand-primary-dk)}.reservation-success-secondary{min-height:44px;padding:0 18px;border:1px solid var(--border);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:var(--text-caption);font-weight:var(--font-semibold);cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1),color .2s cubic-bezier(.16,1,.3,1)}.reservation-success-secondary:hover{background:var(--hover-bg);color:var(--text-primary)}@keyframes reservationSuccessBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes reservationSuccessDialogIn{0%{opacity:0;transform:translateY(20px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes reservationSuccessImageIn{0%{opacity:0;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion: reduce){.reservation-success-backdrop,.reservation-success-dialog,.reservation-success-image{animation:none}}.home-page{display:flex;flex-direction:column;gap:20px}.home-page .home-hero{margin:-16px -16px 0;padding:24px 16px 20px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,oklch(95% .03 160 / .55) 0%,var(--surface) 100%)}.home-page .home-hero-title{margin:0}.home-page .home-hero-sub{margin:6px 0 0;max-width:28rem}.home-page .home-phone-nudge{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:var(--radius-md);border:1px solid oklch(65% .15 50 / .35);background:#fff2ec73;background:oklch(97% .03 50 / .45)}.home-page .home-phone-nudge-icon{flex-shrink:0;margin-top:2px;color:var(--warning)}.home-page .home-phone-nudge-text{flex:1;min-width:0;margin:0;font-size:var(--text-caption);font-weight:var(--font-semibold);line-height:1.45;color:var(--text-primary)}.home-page .home-phone-nudge-link{flex-shrink:0;display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border-radius:var(--radius-sm);font-size:var(--text-caption);font-weight:var(--font-bold);color:var(--brand-primary-dk);text-decoration:none;transition:background-color .2s cubic-bezier(.16,1,.3,1)}.home-page .home-phone-nudge-link:hover{background:#d9f7e58c}.home-page .home-loading,.home-page .home-error{display:flex;flex-direction:column;align-items:center;gap:12px;padding:40px 16px;text-align:center}.home-page .home-loading-ring{width:40px;height:40px;border:3px solid oklch(65% .18 160 / .2);border-top-color:var(--brand-primary);border-radius:var(--radius-full);animation:homeSpin .7s linear infinite}.home-page .home-error-btn{min-height:44px;padding:0 16px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);font-size:var(--text-caption);font-weight:var(--font-bold);color:var(--text-primary);cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1)}.home-page .home-error-btn:hover{background:var(--hover-bg)}.avail-spots{display:flex;flex-direction:column;gap:16px}.avail-spots-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px}.avail-spots-count{margin:0;font-size:var(--text-subheading);font-weight:var(--font-extrabold);line-height:1.15;letter-spacing:-.02em;color:var(--text-primary)}.avail-spots-count-num{color:var(--brand-primary-dk)}.avail-spots-filters{display:flex;flex-wrap:wrap;gap:8px}.avail-spots-filter{min-height:44px;padding:0 14px;border:1px solid var(--border);border-radius:var(--radius-full);background:var(--surface);font-size:var(--text-caption);font-weight:var(--font-bold);color:var(--text-secondary);cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1),border-color .2s cubic-bezier(.16,1,.3,1),color .2s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1)}.avail-spots-filter:hover{border-color:#00aa6f59;border-color:oklch(65% .18 160 / .35);color:var(--brand-primary-dk);background:#eafaf059}.avail-spots-filter--active{border-color:var(--brand-primary);background:var(--brand-primary);color:#fff;box-shadow:0 4px 14px #00aa6f47;box-shadow:0 4px 14px oklch(65% .18 160 / .28);transform:translateY(-1px)}.avail-spots-filter--active:hover{background:var(--brand-primary-dk);color:#fff}.avail-spots-grid{display:grid;grid-template-columns:1fr;gap:14px}.avail-spots-grid-item{opacity:0;animation:availSpotIn .32s cubic-bezier(.16,1,.3,1) forwards}.avail-spots-empty{display:flex;flex-direction:column;gap:16px}.avail-spots-empty-image{aspect-ratio:4 / 3;width:100%;overflow:hidden;border-radius:var(--radius-lg);border:1px dashed oklch(65% .18 160 / .3)}.avail-spots-empty-image img{height:100%;width:100%;object-fit:fill}.avail-spots-empty-actions{display:flex;justify-content:center}.avail-spots-empty-cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:var(--radius-sm);background:var(--brand-primary);color:#fff;font-size:var(--text-caption);font-weight:var(--font-bold);text-decoration:none;box-shadow:0 6px 18px #00aa6f47;box-shadow:0 6px 18px oklch(65% .18 160 / .28);transition:background-color .2s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1)}.avail-spots-empty-cta:hover{background:var(--brand-primary-dk);transform:translateY(-1px)}.avail-spots-empty-btn{min-height:44px;padding:0 18px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);font-size:var(--text-caption);font-weight:var(--font-bold);color:var(--brand-primary-dk);cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1)}.avail-spots-empty-btn:hover{background:var(--hover-bg)}.avail-spot-card{display:flex;flex-direction:column;gap:14px;height:100%;padding:18px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-md);transition:border-color .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1)}.avail-spot-card:hover{border-color:#00aa6f59;border-color:oklch(65% .18 160 / .35);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.avail-spot-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.avail-spot-card-time{padding:4px 10px;border-radius:var(--radius-sm);background:var(--bg);font-size:var(--text-tiny);font-weight:var(--font-bold);color:var(--text-secondary)}.avail-spot-card-section{padding:4px 10px;border-radius:var(--radius-sm);background:var(--brand-primary);font-size:var(--text-tiny);font-weight:var(--font-bold);color:#fff}.avail-spot-card-number{margin:0;font-size:var(--text-heading);font-weight:var(--font-extrabold);line-height:1.05;letter-spacing:-.03em;color:var(--text-primary)}.avail-spot-card-dates{margin:0;font-size:var(--text-caption);font-weight:var(--font-semibold);line-height:1.4;color:var(--text-secondary)}.avail-spot-card-contact{display:flex;flex-direction:column;gap:2px;padding:12px;border-radius:var(--radius-sm);background:#eafaf066}.avail-spot-card-owner{margin:0;font-size:var(--text-caption);font-weight:var(--font-semibold);color:var(--text-muted)}.avail-spot-card-phone{margin:0;font-size:var(--text-subheading);font-weight:var(--font-extrabold);line-height:1.2;color:var(--brand-primary-dk);text-decoration:none}.avail-spot-card-phone:hover{color:var(--brand-primary);text-decoration:underline}.avail-spot-card-cta{margin-top:auto;min-height:48px;width:100%;border:none;border-radius:var(--radius-sm);font-size:var(--text-caption);font-weight:var(--font-bold);cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1)}.avail-spot-card-cta:not(:disabled){background:var(--brand-primary);color:#fff;box-shadow:0 6px 16px #00aa6f4d;box-shadow:0 6px 16px oklch(65% .18 160 / .3)}.avail-spot-card-cta:not(:disabled):hover{background:var(--brand-primary-dk);transform:translateY(-1px)}.avail-spot-card-cta:disabled{background:var(--disabled);color:var(--text-muted);cursor:not-allowed}.avail-spot-card-cta:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}@keyframes homeSpin{to{transform:rotate(360deg)}}@keyframes availSpotIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (min-width: 640px){.avail-spots-grid{grid-template-columns:repeat(2,1fr);gap:16px}.avail-spot-card-number{font-size:var(--text-hero)}}@media (min-width: 1024px){.avail-spots-grid{grid-template-columns:repeat(3,1fr)}}.avail-view-tabs{display:flex;gap:4px;padding:4px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.avail-view-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 14px;border:none;border-radius:calc(var(--radius-md) - 2px);font-size:var(--text-caption);font-weight:var(--font-semibold);cursor:pointer;background:transparent;color:var(--text-secondary);white-space:nowrap;transition:background-color .2s cubic-bezier(.16,1,.3,1),color .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1)}.avail-view-tab:hover:not(.avail-view-tab--active){background:var(--hover-bg);color:var(--text-primary)}.avail-view-tab--active{background:var(--brand-primary);color:#fff;box-shadow:0 2px 10px #00aa6f52;box-shadow:0 2px 10px oklch(65% .18 160 / .32)}.avail-view-tab--active:hover{background:var(--brand-primary-dk)}.avail-view-tab--map:not(.avail-view-tab--active){color:var(--brand-primary-dk)}.avail-view-tab--map:not(.avail-view-tab--active):hover{background:#e8fbef99;color:var(--brand-primary-dk)}.avail-view-tab--active .avail-view-map-icon circle{fill:var(--brand-primary)}.avail-spots-count--map{margin:0;font-size:var(--text-caption);font-weight:var(--font-semibold);color:var(--text-secondary)}.garage-map-wrap{position:relative;width:100%}.garage-popup-backdrop{position:fixed;left:0;right:0;top:var(--viewport-offset-top, 0px);height:var(--app-height, 100dvh);z-index:60;display:flex;align-items:center;justify-content:center;padding:20px;background:#131a2985;animation:garagePopupBackdropIn .2s cubic-bezier(.16,1,.3,1) forwards}.garage-popup{width:min(100%,320px);filter:drop-shadow(0 12px 32px oklch(0% 0 0 / .22));animation:garagePopupIn .26s cubic-bezier(.16,1,.3,1) forwards}.garage-popup-inner{display:flex;flex-direction:column;gap:10px;width:100%;padding:16px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border)}@keyframes garagePopupBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes garagePopupIn{0%{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media (prefers-reduced-motion: reduce){.garage-popup-backdrop,.garage-popup{animation:none}}.garage-popup-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.garage-popup-spot{font-size:var(--text-subheading);font-weight:var(--font-extrabold);letter-spacing:-.02em;color:var(--brand-primary-dk)}.garage-popup-close{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:none;border-radius:var(--radius-sm);background:transparent;font-size:11px;color:var(--text-muted);cursor:pointer;transition:background-color .16s cubic-bezier(.16,1,.3,1)}.garage-popup-close:hover{background:var(--hover-bg);color:var(--text-primary)}.garage-popup-dates{margin:0;font-size:var(--text-tiny);font-weight:var(--font-semibold);line-height:1.4;color:var(--text-secondary)}.garage-popup-contact{display:flex;flex-direction:column;gap:2px;padding:10px;border-radius:var(--radius-sm);background:#eafaf066}.garage-popup-owner{font-size:var(--text-tiny);font-weight:var(--font-semibold);color:var(--text-muted)}.garage-popup-phone{font-size:var(--text-caption);font-weight:var(--font-extrabold);color:var(--brand-primary-dk);text-decoration:none}.garage-popup-phone:hover{color:var(--brand-primary);text-decoration:underline}.garage-popup-cta{min-height:44px;width:100%;border:none;border-radius:var(--radius-sm);font-size:var(--text-caption);font-weight:var(--font-bold);cursor:pointer;background:var(--brand-primary);color:#fff;box-shadow:0 4px 12px #00aa6f47;box-shadow:0 4px 12px oklch(65% .18 160 / .28);transition:background-color .16s cubic-bezier(.16,1,.3,1),transform .16s cubic-bezier(.16,1,.3,1)}.garage-popup-cta:hover:not(:disabled){background:var(--brand-primary-dk);transform:translateY(-1px)}.garage-popup-cta:disabled{background:var(--disabled);color:var(--text-muted);cursor:not-allowed}.avail-spots-empty--section{padding:24px 0}@media (prefers-reduced-motion: reduce){.home-page .home-loading-ring,.avail-spots-grid-item{animation:none;opacity:1}.avail-spot-card,.avail-spots-filter,.avail-spot-card-cta{transition:none}}.my-availability-page{display:flex;flex-direction:column;gap:24px}.my-availability-page .my-avail-hero{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px;margin:-16px -16px 0;padding:24px 16px 20px;background:linear-gradient(180deg,oklch(95% .03 160 / .55) 0%,var(--surface) 100%);border-bottom:1px solid var(--border)}.my-availability-page .my-avail-hero-title{margin:0}.my-availability-page .my-avail-hero-sub{margin:6px 0 0;max-width:28rem}.my-availability-page .my-avail-add-btn{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 16px;border:none;border-radius:var(--radius-sm);background:var(--brand-primary);color:#fff;font-size:var(--text-caption);font-weight:var(--font-bold);cursor:pointer;box-shadow:0 6px 18px #00aa6f47;box-shadow:0 6px 18px oklch(65% .18 160 / .28);transition:background-color .2s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1)}.my-availability-page .my-avail-add-btn:hover{background:var(--brand-primary-dk);transform:translateY(-1px)}.my-availability-page .my-avail-add-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.my-availability-page .my-avail-loading{display:flex;flex-direction:column;align-items:center;gap:12px;padding:48px 16px}.my-availability-page .my-avail-loading-ring{width:40px;height:40px;border:3px solid oklch(65% .18 160 / .2);border-top-color:var(--brand-primary);border-radius:var(--radius-full);animation:myAvailSpin .7s linear infinite}.my-availability-page .my-avail-loading-text{margin:0;font-size:var(--text-caption);font-weight:var(--font-semibold);color:var(--text-secondary)}.my-availability-page .my-avail-empty{display:flex;flex-direction:column;align-items:center;gap:14px;padding:32px 20px;border:1px dashed oklch(65% .18 160 / .35);border-radius:var(--radius-lg);background:#edf8f259;text-align:center}.my-availability-page .my-avail-empty-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:var(--radius-full);background:#d9f7e58c;color:var(--brand-primary-dk)}.my-availability-page .my-avail-empty-title{margin:0;font-size:var(--text-subheading);font-weight:var(--font-extrabold);color:var(--text-primary)}.my-availability-page .my-avail-empty-text{margin:0;max-width:20rem;font-size:var(--text-caption);line-height:1.5;color:var(--text-secondary)}.my-availability-page .my-avail-empty-cta{min-height:48px;padding:0 20px;border:none;border-radius:var(--radius-md);background:var(--brand-primary);color:#fff;font-size:var(--text-caption);font-weight:var(--font-bold);cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1)}.my-availability-page .my-avail-form-panel{display:flex;flex-direction:column;gap:16px;padding:20px;border:1px solid oklch(65% .18 160 / .28);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-md);animation:myAvailPanelIn .32s cubic-bezier(.16,1,.3,1) both}.my-availability-page .my-avail-form-heading{margin:0;font-size:var(--text-body);font-weight:var(--font-extrabold);color:var(--text-primary)}.my-availability-page .my-avail-form-cancel{min-height:44px;width:100%;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);font-size:var(--text-caption);font-weight:var(--font-bold);cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1)}.my-availability-page .my-avail-form-cancel:hover{background:var(--hover-bg);color:var(--text-primary)}.my-availability-page .my-avail-list-heading{margin:0 0 4px;font-size:var(--text-caption);font-weight:var(--font-bold);color:var(--text-primary)}.my-availability-page .my-avail-list{display:flex;flex-direction:column;gap:12px}.my-availability-page .my-avail-card{display:flex;flex-direction:column;gap:14px;padding:18px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-md);animation:myAvailCardIn .32s cubic-bezier(.16,1,.3,1) both}.my-availability-page .my-avail-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.my-availability-page .my-avail-card-spot{margin:0;font-size:var(--text-subheading);font-weight:var(--font-extrabold);line-height:1.15;letter-spacing:-.02em;color:var(--text-primary)}.my-availability-page .my-avail-card-badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.my-availability-page .my-avail-section-badge{padding:4px 10px;border-radius:var(--radius-sm);background:var(--brand-primary);color:#fff;font-size:var(--text-tiny);font-weight:var(--font-bold)}.my-availability-page .my-avail-status-badge{padding:4px 10px;border-radius:var(--radius-sm);font-size:var(--text-tiny);font-weight:var(--font-bold);white-space:nowrap}.my-availability-page .my-avail-status-badge--available{background:#d9f7e5a6;color:var(--brand-primary-dk)}.my-availability-page .my-avail-status-badge--reserved{background:#ffe7e68c;background:oklch(95% .04 20 / .55);color:var(--error)}.my-availability-page .my-avail-status-badge--inactive{background:var(--disabled);color:var(--text-muted)}.my-availability-page .my-avail-datetime-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.my-availability-page .my-avail-datetime-cell{padding:10px 12px;border-radius:var(--radius-sm);background:var(--bg)}.my-availability-page .my-avail-datetime-label{margin:0 0 4px;font-size:var(--text-tiny);font-weight:var(--font-bold);color:var(--text-muted)}.my-availability-page .my-avail-datetime-value{margin:0;font-size:var(--text-caption);font-weight:var(--font-semibold);line-height:1.35;color:var(--text-primary)}.my-availability-page .my-avail-renter-block{display:flex;flex-direction:column;gap:4px;padding:14px;border-radius:var(--radius-sm);background:#eafaf073;border:1px solid oklch(65% .18 160 / .22)}.my-availability-page .my-avail-renter-heading{margin:0;font-size:var(--text-tiny);font-weight:var(--font-bold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.my-availability-page .my-avail-renter-name{margin:0;font-size:var(--text-subheading);font-weight:var(--font-extrabold);line-height:1.2;color:var(--text-primary)}.my-availability-page .my-avail-renter-phone{margin:2px 0 0;font-size:var(--text-body);font-weight:var(--font-bold);line-height:1.35;color:var(--brand-primary-dk);text-decoration:none}.my-availability-page .my-avail-renter-phone:hover{color:var(--brand-primary);text-decoration:underline}.my-availability-page .my-avail-renter-email{font-size:var(--text-caption);font-weight:var(--font-semibold);color:var(--text-secondary);text-decoration:none;word-break:break-all}.my-availability-page .my-avail-renter-email:hover{color:var(--brand-primary-dk);text-decoration:underline}.my-availability-page .my-avail-renter-meta{margin:6px 0 0;font-size:var(--text-tiny);font-weight:var(--font-semibold);color:var(--text-muted)}.my-availability-page .my-avail-cancel-btn{min-height:44px;width:100%;border:1px solid oklch(50% .18 20 / .35);border-radius:var(--radius-sm);background:#fff1f159;background:oklch(97% .02 20 / .35);color:var(--error);font-size:var(--text-caption);font-weight:var(--font-bold);cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1)}.my-availability-page .my-avail-cancel-btn:hover:not(:disabled){background:#ffe7e680;background:oklch(95% .04 20 / .5)}.my-availability-page .my-avail-cancel-btn:disabled{opacity:.5;cursor:not-allowed}.my-availability-page .my-avail-card-footnote{margin:0;font-size:var(--text-caption);font-weight:var(--font-semibold);color:var(--text-muted)}.my-availability-page .my-avail-form{display:flex;flex-direction:column;gap:16px}.my-availability-page .my-avail-field{display:flex;flex-direction:column;gap:6px}.my-availability-page .my-avail-label{font-size:var(--text-caption);font-weight:var(--font-bold);color:var(--text-secondary)}.my-availability-page .my-avail-input,.my-availability-page .my-avail-textarea{width:100%;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text-primary);font-size:var(--text-body);transition:border-color .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1)}.my-availability-page .my-avail-input{height:44px;padding:10px 12px}.my-availability-page .my-avail-textarea{min-height:88px;padding:10px 12px;resize:vertical}.my-availability-page .my-avail-input:focus,.my-availability-page .my-avail-textarea:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 2px #00aa6f40;box-shadow:0 0 0 2px oklch(65% .18 160 / .25)}.my-availability-page .my-avail-input--error,.my-availability-page .my-avail-textarea--error{border-color:var(--error);box-shadow:0 0 0 1px #b3203540}.my-availability-page .my-avail-error{margin:0;font-size:var(--text-tiny);color:var(--error)}.my-availability-page .my-avail-submit{min-height:48px;width:100%;border:none;border-radius:var(--radius-md);background:var(--brand-primary);color:#fff;font-size:var(--text-body);font-weight:var(--font-bold);cursor:pointer;box-shadow:0 6px 18px #00aa6f38;box-shadow:0 6px 18px oklch(65% .18 160 / .22);transition:background-color .2s cubic-bezier(.16,1,.3,1)}.my-availability-page .my-avail-submit:hover:not(:disabled){background:var(--brand-primary-dk)}.my-availability-page .my-avail-submit:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}@keyframes myAvailSpin{to{transform:rotate(360deg)}}@keyframes myAvailPanelIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes myAvailCardIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.my-availability-page .my-avail-loading-ring,.my-availability-page .my-avail-form-panel,.my-availability-page .my-avail-card{animation:none}.my-availability-page .my-avail-add-btn{transition:none}}@media (min-width: 640px){.my-availability-page .my-avail-card-spot{font-size:var(--text-heading)}}.my-availability-page .my-avail-card--clickable{width:100%;text-align:left;cursor:pointer;border:1px solid var(--border);transition:border-color .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1)}.my-availability-page .my-avail-card--clickable:hover{border-color:#00aa6f73;border-color:oklch(65% .18 160 / .45);box-shadow:var(--shadow-lg);transform:translateY(-1px)}.my-availability-page .my-avail-card--clickable:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.my-availability-page .my-avail-card-hint{margin:0;font-size:var(--text-caption);font-weight:var(--font-semibold);color:var(--text-muted)}.my-availability-page .my-avail-card-summary{margin:0;font-size:var(--text-caption);font-weight:var(--font-semibold);color:var(--text-secondary)}.my-avail-timer{position:relative;overflow:hidden;display:flex;align-items:center;padding:6px 10px;border-radius:var(--radius-sm);background:#d5f4e28c;border:1px solid oklch(70% .14 160 / .25)}.my-avail-timer--urgent{background:#ffeada8c;background:oklch(95% .06 60 / .55);border-color:#dd87364d}.my-avail-timer-progress{position:absolute;inset:0 auto 0 0;background:#00b4761f;background:oklch(68% .16 160 / .12);transition:width 1s linear;pointer-events:none}.my-avail-timer--urgent .my-avail-timer-progress{background:#dd7c0026;background:oklch(68% .16 60 / .15)}.my-avail-timer-text{position:relative;display:flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--brand-primary-dk);letter-spacing:.01em}.my-avail-timer--urgent .my-avail-timer-text{color:#773a00;color:oklch(42% .14 55)}@media (prefers-reduced-motion: reduce){.my-avail-timer-progress{transition:none}}.my-availability-page .my-avail-empty-cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:var(--radius-sm);background:var(--brand-primary);color:#fff;font-size:var(--text-caption);font-weight:var(--font-bold);text-decoration:none}.my-availability-page .my-avail-empty-cta:hover{background:var(--brand-primary-dk)}.spot-share-backdrop{position:fixed;left:0;right:0;top:var(--viewport-offset-top, 0px);height:var(--app-height, 100dvh);z-index:70;display:flex;align-items:flex-end;justify-content:center;padding:16px;padding-top:max(16px,env(safe-area-inset-top));padding-bottom:calc(var(--toast-dock-offset, 96px));background:#131a2973;animation:spotShareBackdropIn .2s cubic-bezier(.16,1,.3,1) forwards}.spot-share-dialog{width:min(100%,520px);max-height:100%;overflow:auto;border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-lg);animation:spotShareDialogIn .26s cubic-bezier(.16,1,.3,1) forwards}.spot-share-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 18px 0}.spot-share-dialog-title{margin:0;font-size:var(--text-subheading);font-weight:var(--font-extrabold);color:var(--text-primary)}.spot-share-dialog-sub{margin:4px 0 0;font-size:var(--text-caption);color:var(--text-secondary)}.spot-share-close{flex-shrink:0;width:44px;height:44px;border:none;border-radius:var(--radius-full);background:var(--bg);color:var(--text-secondary);font-size:1.5rem;line-height:1;cursor:pointer;display:flex;justify-content:center;align-items:center}.spot-share-close:hover{background:var(--hover-bg);color:var(--text-primary)}.spot-share-body{display:flex;flex-direction:column;gap:14px;padding:16px 18px 18px}.spot-share-lead{margin:0;font-size:var(--text-caption);line-height:1.5;color:var(--text-secondary)}@media (min-width: 768px){.spot-share-backdrop{align-items:center;padding:24px}.spot-share-dialog{animation:spotShareDialogInDesktop .26s cubic-bezier(.16,1,.3,1) forwards}}@keyframes spotShareBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes spotShareDialogIn{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes spotShareDialogInDesktop{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.share-spot-backdrop{position:fixed;left:0;right:0;top:var(--viewport-offset-top, 0px);z-index:90;display:flex;align-items:flex-start;justify-content:center;padding:10px;background:#131a2985;animation:shareSpotBackdropIn .22s cubic-bezier(.16,1,.3,1) forwards}.share-spot-dialog{width:min(100%,460px);max-height:calc(var(--app-height, 100dvh) - 24px);display:flex;flex-direction:column;overflow:hidden;border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-lg);padding-bottom:env(safe-area-inset-bottom);animation:shareSpotDialogIn .32s cubic-bezier(.16,1,.3,1) forwards;z-index:10000}@media (min-width: 768px){.share-spot-backdrop{align-items:center;padding:20px}}.share-spot-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 18px 12px;border-bottom:1px solid var(--border)}.share-spot-title{margin:0;font-size:var(--text-subheading);font-weight:var(--font-extrabold);color:var(--text-primary);line-height:1.2}.share-spot-sub{margin:4px 0 0;font-size:var(--text-caption);font-weight:var(--font-semibold);color:var(--brand-primary-md)}.share-spot-close{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:var(--radius-full);background:var(--hover-bg, oklch(95% .006 260));color:var(--text-secondary);cursor:pointer;transition:background-color .16s ease}.share-spot-close:hover{background:var(--border);color:var(--text-primary)}.share-spot-body{display:flex;flex-direction:column;gap:14px;padding:16px 18px 20px;overflow-y:auto}.share-spot-lead{margin:0;font-size:var(--text-caption);line-height:1.5;color:var(--text-secondary)}.share-spot-preview{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;background:var(--surface);max-height:38vh}.share-spot-preview svg{display:block;width:100%;height:auto}.share-spot-error{margin:0;font-size:var(--text-caption);font-weight:var(--font-semibold);color:var(--error)}.share-spot-actions{display:flex;flex-direction:column;gap:8px}.share-spot-primary{min-height:48px;padding:0 18px;border:none;border-radius:var(--radius-md);background:var(--brand-primary);color:#fff;font-size:var(--text-caption);font-weight:var(--font-bold);cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1)}.share-spot-primary:hover:not(:disabled){background:var(--brand-primary-dk)}.share-spot-primary:disabled{background:var(--disabled);color:var(--text-muted);cursor:default}.share-spot-secondary-row{display:flex;gap:8px}.share-spot-secondary{flex:1;min-height:44px;padding:0 14px;border:1px solid var(--border);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:var(--text-caption);font-weight:var(--font-semibold);cursor:pointer;transition:background-color .2s ease,color .2s ease}.share-spot-secondary:hover:not(:disabled){background:var(--hover-bg, oklch(95% .006 260));color:var(--text-primary)}.share-spot-secondary:disabled{opacity:.5;cursor:default}.res-card-share-btn{min-height:44px;padding:0 16px;border:1px solid var(--brand-primary);border-radius:var(--radius-md);background:color-mix(in oklch,var(--brand-primary) 8%,transparent);color:var(--brand-primary-dk);font-weight:var(--font-bold);cursor:pointer;transition:background-color .2s ease}.res-card-share-btn:hover{background:color-mix(in oklch,var(--brand-primary) 16%,transparent)}@keyframes shareSpotBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes shareSpotDialogIn{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.share-spot-backdrop,.share-spot-dialog{animation:none}}.my-reservations-page{display:flex;flex-direction:column;gap:24px}.my-reservations-page .my-res-empty{display:flex;flex-direction:column;align-items:center;gap:20px;padding:28px 20px 32px;border:1px dashed oklch(65% .18 160 / .35);border-radius:var(--radius-lg);background:#edf8f259;text-align:center}.my-reservations-page .my-res-empty-cta{min-height:44px;padding:0 16px;border:none;border-radius:var(--radius-sm);background:var(--brand-primary);color:#fff;text-decoration:none;display:inline-flex;align-items:center;transition:opacity .2s cubic-bezier(.16,1,.3,1)}.my-reservations-page .my-res-empty-cta:hover{opacity:.92}.my-reservations-page .my-res-list{display:flex;flex-direction:column;gap:16px}.my-reservations-page .my-res-loading{padding:32px 16px;text-align:center}.res-map-wrapper{overflow:hidden}.res-card-body:has(.chat-trigger-btn.open){min-height:80dvh}.res-map-inner{max-height:0;overflow:hidden;transition:max-height .35s cubic-bezier(.16,1,.3,1)}.res-map-wrapper.open .res-map-inner{max-height:1200px}@keyframes my-res-card-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.my-res-card{animation:my-res-card-in .32s cubic-bezier(.16,1,.3,1) both}.res-card{overflow:hidden;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.res-card--active .res-card-head{background:var(--brand-secondary);padding:14px 16px 18px}.res-card--past{opacity:.65}.res-card--past .res-card-head{background:var(--bg);padding:14px 16px 18px;border-bottom:1px solid var(--border)}.res-card-head-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.res-card--active .res-card-status{font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#fff9}.res-card--past .res-card-status{font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.res-card-section{padding:3px 10px;border-radius:var(--radius-full);font-size:12px;font-weight:700}.res-card--active .res-card-section{background:#ffffff26;color:#fff}.res-card--past .res-card-section{background:var(--disabled);color:var(--text-secondary)}.res-card-number-label{display:block;font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.res-card--active .res-card-number-label{color:#ffffff6b}.res-card--past .res-card-number-label{color:var(--text-muted)}.res-card-number{display:block;font-size:44px;font-weight:800;line-height:1;letter-spacing:-.025em}.res-card--active .res-card-number{color:#fff}.res-card--past .res-card-number{color:var(--text-primary)}.res-card-body{padding:16px;display:flex;flex-direction:column;gap:14px}.res-card-dates{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px}.res-card-date{display:flex;flex-direction:column;gap:1px}.res-card-date--end{text-align:right}.res-card-date-label{font-size:10px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--text-muted)}.res-card-date-day{font-size:15px;font-weight:600;color:var(--text-primary);line-height:1.3}.res-card-date-time{font-size:13px;color:var(--text-secondary)}.res-card-date-arrow{font-size:12px;color:var(--text-muted);text-align:center;-webkit-user-select:none;user-select:none}.res-card-owner{display:flex;flex-direction:column;gap:2px;padding:10px 12px;background:var(--bg);border-radius:var(--radius-sm)}.res-card-phone{font-size:15px;font-weight:600;color:var(--text-primary);letter-spacing:.01em}.res-card-name{font-size:13px;color:var(--text-secondary)}.res-card-actions{display:flex;flex-direction:column;gap:8px}.res-card-chat-share-wrapper{display:flex;flex-direction:column;gap:8px;align-items:center;justify-content:center}.res-card-map-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:44px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1),color .2s cubic-bezier(.16,1,.3,1)}.res-card-map-btn:hover{background:var(--hover-bg);color:var(--brand-primary)}.res-card-map-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:-2px}.my-res-header{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.my-res-active-count{font-size:13px;font-weight:600;padding:2px 9px;border-radius:var(--radius-full);background:color-mix(in oklch,var(--brand-primary) 13%,transparent);color:var(--brand-primary-md)}.my-res-empty-art{width:min(100%,168px);height:auto;display:block}.res-car-icon{transform:perspective(80px) rotateY(18deg);animation:carBob 2.4s ease-in-out 3;flex-shrink:0}.res-car-wheel{transform-box:fill-box;transform-origin:center;animation:wheelSpin .8s linear 9}@keyframes carBob{0%,to{transform:perspective(80px) rotateY(18deg) translateY(0)}50%{transform:perspective(80px) rotateY(18deg) translateY(-1.5px)}}@keyframes wheelSpin{to{transform:rotate(360deg)}}.res-card-timer{position:relative;overflow:hidden;display:flex;align-items:center;padding:6px 10px;border-radius:var(--radius-sm);background:#d5f4e28c;border:1px solid oklch(70% .14 160 / .25);animation:timerIn .28s cubic-bezier(.16,1,.3,1) both}.res-card-timer--urgent{background:#ffeada8c;background:oklch(95% .06 60 / .55);border-color:#dd87364d}.res-card-timer-progress{position:absolute;inset:0 auto 0 0;background:#00b4761f;background:oklch(68% .16 160 / .12);transition:width 1s linear;pointer-events:none}.res-card-timer--urgent .res-card-timer-progress{background:#dd7c0026;background:oklch(68% .16 60 / .15)}.res-card-timer-text{position:relative;display:flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--brand-primary-dk);letter-spacing:.01em}.res-card-timer--urgent .res-card-timer-text{color:#773a00;color:oklch(42% .14 55)}@keyframes timerIn{0%{opacity:0;transform:scaleX(.94)}to{opacity:1;transform:scaleX(1)}}.res-card-cancel-btn{min-height:44px;width:100%;border:1px solid oklch(50% .18 20 / .35);border-radius:var(--radius-sm);background:#fff1f159;background:oklch(97% .02 20 / .35);color:var(--error);font-size:var(--text-body);font-weight:var(--font-semibold);cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1)}.res-card-cancel-btn:hover:not(:disabled){background:#ffe7e680;background:oklch(95% .04 20 / .5)}.res-card-cancel-btn:disabled{opacity:.5;cursor:not-allowed}.res-card-release-btn{min-height:44px;width:100%;border:1px solid oklch(65% .18 160 / .3);border-radius:var(--radius-sm);background:#e5fcee73;color:var(--brand-primary-dk);font-size:var(--text-body);font-weight:var(--font-semibold);cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1),border-color .2s cubic-bezier(.16,1,.3,1)}.res-card-release-btn:hover:not(:disabled){background:#cff6e099;border-color:#00aa6f80;border-color:oklch(65% .18 160 / .5)}.res-card-release-btn:disabled{opacity:.5;cursor:not-allowed}.res-card-confirm{padding:12px;background:var(--bg);border-radius:var(--radius-sm);border:1px solid var(--border);display:flex;flex-direction:column;gap:10px}.res-card-confirm-text{margin:0;font-size:13px;color:var(--text-secondary);line-height:1.5}.res-card-confirm-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.res-card-confirm-no{min-height:40px;padding:0 12px;border:1px solid var(--border);background:transparent;color:var(--text-secondary);border-radius:var(--radius-sm);font-size:var(--text-caption);font-weight:var(--font-semibold);cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1),color .2s cubic-bezier(.16,1,.3,1)}.res-card-confirm-no:hover{background:var(--hover-bg);color:var(--text-primary)}.res-card-confirm-yes{min-height:40px;padding:0 12px;border:1px solid oklch(65% .18 160 / .35);background:#d3f9e380;color:var(--brand-primary-dk);border-radius:var(--radius-sm);font-size:var(--text-caption);font-weight:var(--font-semibold);cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1),border-color .2s cubic-bezier(.16,1,.3,1)}.res-card-confirm-yes:hover{background:#bdf4d5a6;border-color:#00aa6f8c;border-color:oklch(65% .18 160 / .55)}.res-card-confirm-yes--danger{border-color:#b3203559;background:#fff1f14d;background:oklch(97% .02 20 / .3);color:var(--error)}.res-card-confirm-yes--danger:hover{background:#ffe2e180;background:oklch(94% .05 20 / .5);border-color:#b3203580}@media (min-width: 480px){.res-card-chat-share-wrapper{flex-direction:row}}@media screen and (min-width:767px) and (max-width:790px){.res-card-chat-share-wrapper{flex-direction:column}}@media (prefers-reduced-motion: reduce){.res-car-icon{animation:none;transform:perspective(80px) rotateY(18deg)}.res-car-wheel,.res-card-timer{animation:none}.res-card-timer-progress,.res-map-inner{transition:none}.my-res-card{animation:none}.res-card-cancel-btn,.res-card-release-btn{transition:none}}.profile-page{display:flex;flex-direction:column;gap:28px}.profile-page .profile-hero{display:flex;flex-direction:column;align-items:center;gap:10px;margin:-16px -16px 0;padding:28px 16px 24px;background:linear-gradient(180deg,oklch(95% .03 160 / .55) 0%,var(--surface) 100%);border-bottom:1px solid var(--border)}.profile-page .profile-avatar-wrap{position:relative}.profile-page .profile-avatar-ring{display:flex;padding:3px;border-radius:var(--radius-full);background:linear-gradient(145deg,var(--brand-primary-lt),var(--brand-primary),var(--brand-primary-dk));box-shadow:0 8px 24px #00aa6f38;box-shadow:0 8px 24px oklch(65% .18 160 / .22)}.profile-page .profile-avatar{display:block;width:96px;height:96px;border-radius:var(--radius-full);object-fit:cover;border:3px solid var(--surface);background:var(--bg)}.profile-page .profile-avatar-btn{position:absolute;right:0;bottom:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:2px solid var(--surface);border-radius:var(--radius-full);background:var(--brand-primary);color:#fff;cursor:pointer;transition:transform .2s cubic-bezier(.16,1,.3,1)}.profile-page .profile-avatar-btn:hover{transform:scale(1.06)}.profile-page .profile-avatar-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.profile-page .profile-avatar-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.profile-page .profile-hero-name{margin:4px 0 0;text-align:center}.profile-page .profile-spot-badge{display:inline-flex;align-items:center;gap:6px;margin-top:2px;padding:4px 12px;border-radius:var(--radius-full);background:var(--brand-secondary);color:#fff;font-size:var(--text-caption);font-weight:var(--font-bold)}.profile-page .profile-spot-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:4px}.profile-page .profile-group-lead{margin:0 0 8px;font-size:var(--text-caption);line-height:1.5;color:var(--text-secondary)}.profile-page .profile-spots-manager{display:flex;flex-direction:column;gap:12px}.profile-page .profile-spots-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.profile-page .profile-spots-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg)}.profile-page .profile-spots-number{font-size:var(--text-caption);font-weight:var(--font-bold);color:var(--text-primary)}.profile-page .profile-spots-remove{border:none;background:transparent;color:var(--error);font-size:var(--text-caption);font-weight:var(--font-semibold);cursor:pointer;min-height:44px;padding:0 10px;border-radius:var(--radius-sm)}.profile-page .profile-spots-remove:hover:not(:disabled){background:#fff1f159;background:oklch(97% .02 20 / .35)}.profile-page .profile-spots-add{display:flex;flex-direction:column;gap:10px}@media (min-width: 640px){.profile-page .profile-spots-add{flex-direction:row;align-items:flex-start}.profile-page .profile-spots-add .profile-input{flex:1}.profile-page .profile-spots-add .profile-btn-primary{flex-shrink:0}}.profile-page .profile-upload-hint{margin:0;font-size:var(--text-tiny);color:var(--text-muted)}.profile-page .profile-spots-conflict{display:flex;flex-direction:column;gap:6px;padding:12px 14px;background:#fff2ef99;background:oklch(97% .03 30 / .6);border:1px solid oklch(75% .12 30 / .4);border-radius:var(--radius-md);color:#6e2920;animation:conflictIn .24s cubic-bezier(.16,1,.3,1) both}.profile-page .profile-spots-conflict-header{display:flex;align-items:center;gap:6px;font-size:var(--text-caption);font-weight:var(--font-semibold)}.profile-page .profile-spots-conflict-desc{margin:0;font-size:var(--text-tiny);color:#7c433a;line-height:1.5}.profile-page .profile-spots-conflict-contact{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:2px;padding-top:8px;border-top:1px solid oklch(75% .08 30 / .3)}.profile-page .profile-spots-conflict-name{font-size:var(--text-caption);font-weight:var(--font-semibold);color:#542019}.profile-page .profile-spots-conflict-phone{font-size:var(--text-caption);color:var(--brand-primary);font-weight:var(--font-semibold);text-decoration:none}.profile-page .profile-spots-conflict-phone:hover{text-decoration:underline}.profile-page .profile-group{display:flex;flex-direction:column;gap:8px}.profile-page .profile-group-title{margin:0;font-size:var(--text-caption);font-weight:var(--font-bold);color:var(--text-primary)}.profile-page .profile-rows{overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-md)}.profile-page .profile-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px;border-bottom:1px solid var(--border);animation:profileRowIn .32s cubic-bezier(.16,1,.3,1) both}.profile-page .profile-row:last-child{border-bottom:none}.profile-page .profile-row-label{margin:0 0 4px;font-size:var(--text-caption);font-weight:var(--font-semibold);color:var(--text-secondary)}.profile-page .profile-row-value{margin:0;font-size:var(--text-body);font-weight:var(--font-semibold);line-height:1.35;color:var(--text-primary);word-break:break-word}.profile-page .profile-row-helper{margin:6px 0 0;font-size:var(--text-tiny);color:var(--text-muted)}.profile-page .profile-row-edit{flex-shrink:0;margin-top:2px;padding:6px 10px;border:1px solid oklch(65% .18 160 / .35);border-radius:var(--radius-sm);background:#def5e866;color:var(--brand-primary-dk);font-size:var(--text-caption);font-weight:var(--font-bold);cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1),border-color .2s cubic-bezier(.16,1,.3,1)}.profile-page .profile-row-edit:hover{background:var(--hover-bg);border-color:var(--brand-primary)}.profile-page .profile-row-edit:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.profile-page .profile-input{width:100%;height:44px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text-primary);font-size:var(--text-body)}.profile-page .profile-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 2px #00aa6f40;box-shadow:0 0 0 2px oklch(65% .18 160 / .25)}.profile-page .profile-input:disabled{opacity:.5}.profile-page .profile-input-error{margin:6px 0 0;font-size:var(--text-tiny);color:var(--error)}.profile-page .profile-row-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.profile-page .profile-btn-primary{min-height:44px;padding:0 14px;border:none;border-radius:var(--radius-sm);background:var(--brand-primary);color:#fff;font-size:var(--text-caption);font-weight:var(--font-bold);cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1)}.profile-page .profile-btn-primary:hover:not(:disabled){background:var(--brand-primary-dk)}.profile-page .profile-btn-primary:disabled{opacity:.5;cursor:not-allowed}.profile-page .profile-btn-secondary{min-height:44px;padding:0 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-primary);font-size:var(--text-caption);font-weight:var(--font-bold);cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1)}.profile-page .profile-btn-secondary:hover:not(:disabled){background:var(--hover-bg)}.profile-page .profile-btn-secondary:disabled{opacity:.5;cursor:not-allowed}.profile-page .profile-danger-zone{display:flex;flex-direction:column;gap:10px;padding-top:8px}.profile-page .profile-danger-title{margin:0;font-size:var(--text-caption);font-weight:var(--font-bold);color:var(--error)}.profile-page .profile-btn-logout{min-height:48px;width:100%;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text-primary);font-size:var(--text-body);font-weight:var(--font-bold);cursor:pointer;box-shadow:var(--shadow-sm);transition:background-color .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1)}.profile-page .profile-btn-logout:hover{background:var(--hover-bg);box-shadow:var(--shadow-md)}.profile-page .profile-btn-delete{min-height:48px;width:100%;border:1px solid oklch(50% .18 20 / .35);border-radius:var(--radius-md);background:#fff1f159;background:oklch(97% .02 20 / .35);color:var(--error);font-size:var(--text-caption);font-weight:var(--font-bold);cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1)}.profile-page .profile-btn-delete:hover{background:#ffe7e680;background:oklch(95% .04 20 / .5)}.profile-page .profile-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:16px;background:#090f1a8c}.profile-page .profile-dialog{display:flex;flex-direction:column;gap:16px;width:100%;max-width:22rem;padding:24px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-lg)}.profile-page .profile-dialog-text{margin:0;font-size:var(--text-body);line-height:1.5;color:var(--text-primary)}.profile-page .profile-btn-danger{background:var(--error)}.profile-page .profile-btn-danger:hover:not(:disabled){background:var(--error-hover)}@keyframes profileRowIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes conflictIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.profile-page .profile-row{animation:none}.profile-page .profile-avatar-btn{transition:none}}@media (min-width: 640px){.profile-page .profile-avatar{width:112px;height:112px}}.public-spot{min-height:100dvh;display:flex;flex-direction:column;background:var(--bg)}.public-spot-header{display:flex;align-items:baseline;gap:10px;padding:16px 20px;padding-top:max(16px,env(safe-area-inset-top));background:var(--brand-secondary)}.public-spot-brand{font-size:var(--text-subheading);font-weight:var(--font-extrabold);color:#fff}.public-spot-brand-sub{font-size:var(--text-caption);font-weight:var(--font-semibold);color:#b8d6c5}.public-spot-main{flex:1;display:flex;flex-direction:column;gap:16px;width:min(100%,640px);margin:0 auto;padding:20px;padding-bottom:max(20px,env(safe-area-inset-bottom))}.public-spot-headline{text-align:center}.public-spot-kicker{margin:0;font-size:var(--text-tiny);font-weight:var(--font-bold);letter-spacing:.08em;text-transform:uppercase;color:var(--brand-primary-md)}.public-spot-number{margin:4px 0 0;font-size:3rem;font-weight:var(--font-extrabold);line-height:1;color:var(--text-primary)}.public-spot-valid{margin:8px 0 0;font-size:var(--text-caption);font-weight:var(--font-semibold);color:var(--text-secondary)}.public-spot-map{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;background:var(--surface);box-shadow:var(--shadow-md)}.public-spot-map svg{display:block;width:100%;height:auto}.public-spot-hint{margin:0;font-size:var(--text-caption);line-height:1.5;text-align:center;color:var(--text-secondary)}.public-spot-message{margin:0;font-size:var(--text-caption);color:var(--text-secondary);text-align:center}.public-spot-state{margin:auto;text-align:center;display:flex;flex-direction:column;gap:8px}.public-spot-state-title{margin:0;font-size:var(--text-subheading);font-weight:var(--font-extrabold);color:var(--text-primary)}/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-white:#fff;--spacing:.25rem;--container-3xl:48rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-semibold:600;--font-weight-bold:700;--leading-snug:1.375;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--blur-xl:24px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.top-0{top:calc(var(--spacing) * 0)}.right-0{right:calc(var(--spacing) * 0)}.right-4{right:calc(var(--spacing) * 4)}.bottom-0{bottom:calc(var(--spacing) * 0)}.bottom-4{bottom:calc(var(--spacing) * 4)}.left-0{left:calc(var(--spacing) * 0)}.z-40{z-index:40}.z-50{z-index:50}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.my-auto{margin-block:auto}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-grid{display:inline-grid}.table{display:table}.h-4{height:calc(var(--spacing) * 4)}.h-11{height:calc(var(--spacing) * 11)}.h-16{height:calc(var(--spacing) * 16)}.h-\[70px\]{height:70px}.h-auto{height:auto}.min-h-screen{min-height:100vh}.w-4{width:calc(var(--spacing) * 4)}.w-11{width:calc(var(--spacing) * 11)}.w-16{width:calc(var(--spacing) * 16)}.w-auto{width:auto}.w-full{width:100%}.max-w-3xl{max-width:var(--container-3xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[400px\]{max-width:400px}.min-w-0{min-width:calc(var(--spacing) * 0)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-\[slideIn_300ms_cubic-bezier\(0\.16\,1\,0\.3\,1\)_forwards\]{animation:.3s cubic-bezier(.16,1,.3,1) forwards slideIn}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\[var\(--radius-lg\)\]{border-radius:var(--radius-lg)}.rounded-\[var\(--radius-md\)\]{border-radius:var(--radius-md)}.rounded-\[var\(--radius-sm\)\]{border-radius:var(--radius-sm)}.rounded-full{border-radius:3.40282e38px}.rounded-sm{border-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-2{border-top-style:var(--tw-border-style);border-top-width:2px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-\[rgb\(71_85_105\/0\.4\)\]{border-color:#47556966}.border-\[rgb\(71_85_105\/0\.5\)\]{border-color:#47556980}.border-\[rgb\(71_85_105\/0\.6\)\]{border-color:#47556999}.border-\[var\(--border\)\]{border-color:var(--border)}.border-\[var\(--brand-primary\)\]{border-color:var(--brand-primary)}.border-\[var\(--error\)\]{border-color:var(--error)}.bg-\[\#\.\.\.\]{background-color:#...}.bg-\[oklch\(60\%_0\.16_70\)\]{background-color:#b17000;background-color:oklch(60% .16 70)}.bg-\[rgb\(30_41_59\/0\.5\)\]{background-color:#1e293b80}.bg-\[var\(--bg\)\]{background-color:var(--bg)}.bg-\[var\(--brand-primary\)\]{background-color:var(--brand-primary)}.bg-\[var\(--brand-secondary\)\]{background-color:var(--brand-secondary)}.bg-\[var\(--error\)\]{background-color:var(--error)}.bg-\[var\(--surface\)\]{background-color:var(--surface)}.bg-transparent{background-color:#0000}.p-6{padding:calc(var(--spacing) * 6)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.pr-4{padding-right:calc(var(--spacing) * 4)}.pr-11{padding-right:calc(var(--spacing) * 11)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pl-4{padding-left:calc(var(--spacing) * 4)}.text-center{text-align:center}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.break-all{word-break:break-all}.text-\[\#\.\.\.\]{color:#...}.text-\[var\(--brand-primary\)\]{color:var(--brand-primary)}.text-\[var\(--login-text-muted\)\]{color:var(--login-text-muted)}.text-\[var\(--text-primary\)\]{color:var(--text-primary)}.text-\[var\(--text-secondary\)\]{color:var(--text-secondary)}.text-white{color:var(--color-white)}.underline{text-decoration-line:underline}.accent-\[var\(--brand-primary\)\]{accent-color:var(--brand-primary)}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[var\(--shadow-lg\)\]{--tw-shadow:var(--shadow-lg);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-xl{--tw-backdrop-blur:blur(var(--blur-xl));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.outline-none{--tw-outline-style:none;outline-style:none}.placeholder\:text-\[rgb\(148_163_184\/0\.6\)\]::placeholder{color:#94a3b899}@media (hover:hover){.hover\:bg-\[rgb\(30_41_59\/0\.5\)\]:hover{background-color:#1e293b80}.hover\:bg-\[rgb\(30_41_59\/0\.8\)\]:hover{background-color:#1e293bcc}.hover\:bg-\[var\(--brand-primary-lt\)\]:hover{background-color:var(--brand-primary-lt)}.hover\:text-\[var\(--brand-primary\)\]:hover{color:var(--brand-primary)}.hover\:text-\[var\(--brand-primary-lt\)\]:hover{color:var(--brand-primary-lt)}.hover\:text-white:hover{color:var(--color-white)}}.focus\:border-\[var\(--brand-primary\)\]:focus{border-color:var(--brand-primary)}.focus\:ring-1:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-\[var\(--brand-primary\)\]:focus{--tw-ring-color:var(--brand-primary)}.focus-visible\:text-white:focus-visible{color:var(--color-white)}.focus-visible\:underline:focus-visible{text-decoration-line:underline}.focus-visible\:ring-1:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-\[var\(--brand-primary\)\]:focus-visible{--tw-ring-color:var(--brand-primary)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:ring-offset-\[rgb\(15_23_42\)\]:focus-visible{--tw-ring-offset-color:#0f172a}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}@media not all and (min-width:650px){.max-\[650px\]\:block{display:block}}@media (min-width:40rem){.sm\:flex{display:flex}.sm\:hidden{display:none}}}:root{--text-tiny:.75rem;--text-caption:.875rem;--text-body:1rem;--text-subheading:1.25rem;--text-heading:1.5rem;--text-hero:2rem;--font-regular:400;--font-medium:500;--font-semibold:600;--font-bold:700;--font-extrabold:800;--leading-hero:1.2;--leading-heading:1.3;--leading-subheading:1.35;--leading-body:1.5;--leading-caption:1.45;--leading-tiny:1.35;--tracking-heading:-.03em;--tracking-subheading:-.02em;--tracking-normal:0}body{font-size:var(--text-body);font-weight:var(--font-regular);line-height:var(--leading-body);font-kerning:normal;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}.type-hero{font-size:var(--text-hero);font-weight:var(--font-extrabold);line-height:var(--leading-hero);letter-spacing:var(--tracking-heading);color:var(--text-primary)}.type-h1{font-size:var(--text-heading);font-weight:var(--font-bold);line-height:var(--leading-heading);letter-spacing:var(--tracking-subheading);color:var(--text-primary)}.type-page-title{font-size:var(--text-heading);font-weight:var(--font-extrabold);line-height:var(--leading-heading);letter-spacing:var(--tracking-heading);color:var(--text-primary)}.type-h2{font-size:var(--text-subheading);font-weight:var(--font-semibold);line-height:var(--leading-subheading);letter-spacing:var(--tracking-subheading);color:var(--text-primary)}.type-h3{font-size:var(--text-body);font-weight:var(--font-bold);line-height:var(--leading-subheading);color:var(--text-primary)}.type-body{font-size:var(--text-body);font-weight:var(--font-regular);line-height:var(--leading-body);color:var(--text-primary)}.type-body-strong{font-size:var(--text-body);font-weight:var(--font-semibold);line-height:var(--leading-body);color:var(--text-primary)}.type-caption{font-size:var(--text-caption);font-weight:var(--font-regular);line-height:var(--leading-caption);color:var(--text-secondary)}.type-caption-strong,.type-label{font-size:var(--text-caption);font-weight:var(--font-semibold);line-height:var(--leading-caption);color:var(--text-secondary)}.type-tiny{font-size:var(--text-tiny);font-weight:var(--font-regular);line-height:var(--leading-tiny);color:var(--text-muted)}.type-badge{font-size:var(--text-tiny);font-weight:var(--font-semibold);line-height:var(--leading-tiny)}.type-button{font-size:var(--text-body);font-weight:var(--font-semibold);line-height:1.25}.type-button-sm,.type-tab{font-size:var(--text-caption);font-weight:var(--font-semibold);line-height:1.25}.type-data{font-variant-numeric:tabular-nums}.type-prose{max-width:65ch}.type-login-title,.type-login-lead{font-size:var(--text-subheading);font-weight:var(--font-semibold);line-height:var(--leading-subheading);color:var(--login-text)}.type-login-body{font-size:var(--text-caption);font-weight:var(--font-regular);color:var(--login-text-muted);line-height:1.55}.type-login-label{font-size:var(--text-caption);font-weight:var(--font-medium);line-height:var(--leading-caption);color:var(--login-text-muted)}.type-login-input{font-size:var(--text-body);font-weight:var(--font-regular);line-height:1.25}.type-login-error{font-size:var(--text-tiny);font-weight:var(--font-regular);line-height:var(--leading-tiny);color:#ed7477}.type-login-link{font-size:var(--text-tiny);font-weight:var(--font-regular);line-height:var(--leading-tiny);color:var(--login-text-muted)}.type-login-emphasis{font-size:var(--text-caption);font-weight:var(--font-medium);line-height:var(--leading-caption);color:var(--login-text)}.type-map-section{font-size:var(--text-subheading);font-weight:var(--font-bold);line-height:var(--leading-subheading);fill:var(--text-secondary)}.type-map-label{font-size:var(--text-tiny);font-weight:var(--font-semibold);line-height:var(--leading-tiny);fill:var(--text-primary)}@media (min-width:640px){.type-hero{font-size:calc(var(--text-hero) * 1.0625)}.type-page-title{font-size:var(--text-hero);line-height:var(--leading-hero)}}:root{--brand-primary:oklch(65% .18 160);--brand-primary-lt:oklch(78% .16 162);--brand-primary-md:oklch(60% .17 159);--brand-primary-dk:oklch(50% .16 157);--brand-secondary:oklch(22% .03 263);--brand-secondary-dk:oklch(17% .025 262);--text-on-brand:oklch(99% .002 160);--error:oklch(50% .18 20);--error-hover:oklch(44% .18 20);--warning:oklch(65% .15 50);--disabled:oklch(88% .005 260);--bg:oklch(97% .006 260);--surface:oklch(100% 0 0);--border:oklch(87% .006 260);--text-primary:oklch(22% .03 263);--text-secondary:oklch(43% .025 261);--text-muted:oklch(62% .017 260);--hover-bg:oklch(95% .008 160);--login-card-bg:#0f172abf;--login-input-bg:#1e293bcc;--login-border:#10b98140;--login-border-focus:#10b98199;--login-text:oklch(96% .002 260);--login-text-muted:oklch(65% .015 260);--shadow-sm:none;--shadow-md:0 2px 8px #00000014;--shadow-lg:0 4px 24px #00000024;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-full:9999px}html{overscroll-behavior:none;background-color:#0f172a;overflow:hidden}#root{width:100%;min-height:100dvh;margin:0;overflow:hidden}.login-bg{background-image:url(/login-bg.png);background-position:52%;background-size:cover;min-height:100dvh;position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}@media (max-width:650px){.login-bg{background-position:0}}@media (min-width:650px){.parklyLogo{display:none}#tabpanel{margin-top:20px}}body{color:var(--text-primary);overscroll-behavior:none;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);background-color:#0f172a;margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Helvetica Neue,sans-serif;overflow:hidden}input,textarea,select{touch-action:manipulation;font-size:16px}button,a{-webkit-tap-highlight-color:transparent}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes drawRoute{0%{stroke-dashoffset:1000px}to{stroke-dashoffset:0}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
