@import"https://fonts.googleapis.com/css2?family=Geist:wght@100..900&display=swap";@import"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:wght,FILL@100..700,0..1&display=swap";@layer components;@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-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--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}}}@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;--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);--color-background:#f7f4ef;--color-surface:#fdfbf8;--color-surface-container:#f3ede5;--color-surface-container-high:#ece3d9;--color-primary:#8b5cf6;--color-on-primary:#fff;--color-tertiary:#0f9f6e;--color-outline-variant:#d8cec2;--color-error:#dc2626;--color-on-background:#1f172a;--color-on-surface-variant:#6b7280}}@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%;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]){appearance:button}::file-selector-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 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}.relative{position:relative}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.flex-shrink{flex-shrink:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.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,)}.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))}}:root{color-scheme:light;--bg:#f7f4ef;--surface:#fdfbf8;--surface-2:#f6f0e8;--surface-3:#ece3d9;--surface-4:#e3d8cc;--line:#d8cec2;--line-strong:#b8ada0;--text:#1f172a;--muted:#6b7280;--muted-2:#9ca3af;--primary:#8b5cf6;--primary-strong:#6d28d9;--primary-soft:#8b5cf61f;--tertiary:#0f9f6e;--tertiary-soft:#0f9f6e1f;--error:#dc2626;--error-soft:#dc26261f;--shadow:0 18px 44px #5239221a;--radius-sm:10px;--radius-md:14px;--radius-lg:18px;--radius-xl:26px;--radius-pill:999px;font-family:Geist,sans-serif}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark;--bg:#09090b;--surface:#18181b;--surface-2:#111114;--surface-3:#27272a;--surface-4:#3f3f46;--line:#3f3f46;--line-strong:#5f5f68;--text:#fafafa;--muted:#a1a1aa;--muted-2:#71717a;--primary:#a78bfa;--primary-strong:#8b5cf6;--primary-soft:#a78bfa29;--tertiary:#34d399;--tertiary-soft:#34d39924;--error:#ef4444;--error-soft:#ef444429;--shadow:0 18px 44px #0000005c}*,:before,:after{box-sizing:border-box}html,body,#app{min-height:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;min-height:100vh;margin:0;font-family:Geist,sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}a{color:inherit;text-decoration:none}::selection{color:var(--text);background:#8b5cf638}.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}.app-shell{min-height:100vh;color:var(--text)}.app-shell--admin{padding:28px 28px 36px}.app-shell--admin input,.app-shell--admin textarea,.app-shell--admin select{background:#fffdf9eb;border-radius:12px;min-height:44px;padding:12px 14px}.app-shell--admin textarea{min-height:136px}.desktop-layout{gap:20px;max-width:1200px;margin:0 auto;display:grid}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding:10px 0 18px;display:flex}.topbar__brand{align-items:center;gap:12px;min-width:0;display:flex}.brand-mark{width:34px;height:34px;color:var(--primary);background:var(--surface-2);border:1px solid var(--line);border-radius:12px;flex:none;place-items:center;display:grid}.brand-title{flex-direction:column;gap:2px;min-width:0;display:flex}.brand-title strong{letter-spacing:-.02em;font-size:1.05rem;line-height:1.2}.brand-title span,.muted{color:var(--muted)}.topbar__actions{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.avatar,.avatar--round{border:1px solid var(--line);background:linear-gradient(145deg,var(--surface),var(--surface-2));width:40px;height:40px;color:var(--primary);border-radius:999px;flex:none;place-items:center;display:grid}.avatar--sm{width:32px;height:32px}.sidebar-layout{grid-template-columns:260px minmax(0,1fr);gap:22px;display:grid}.sidebar{background:var(--surface);border-radius:24px;flex-direction:column;gap:14px;padding:18px;display:flex}@supports (color:color-mix(in lab,red,red)){.sidebar{background:color-mix(in srgb,var(--surface) 92%,transparent)}}.sidebar{border:1px solid var(--line);align-self:start;min-height:calc(100vh - 76px);position:sticky;top:24px}.sidebar__brand{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:8px 4px 14px;display:flex}.sidebar__brand h1{letter-spacing:-.02em;margin:0;font-size:1.1rem}.sidebar__brand p{color:var(--muted);margin:4px 0 0;font-size:.92rem}.nav-list{gap:8px;display:grid}.nav-item{color:var(--muted);border:1px solid #0000;border-radius:10px;align-items:center;gap:12px;padding:10px 12px;font-size:.9rem;font-weight:500;transition:all .16s;display:flex}.nav-item:hover{color:var(--text);background:#ffffff05}.nav-item.is-active{background:var(--color-surface-container,#121215);border-color:var(--color-outline-variant,#27272a);color:var(--primary)}.nav-item .material-symbols-outlined{font-size:20px}.content{gap:18px;min-width:0;display:grid}.page-title{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;display:flex}.page-title h2,.page-title h1,.section-title{letter-spacing:-.03em;margin:0}.page-title h1{font-size:clamp(2rem,3vw,3.2rem);line-height:1.02}.page-title h2{font-size:1.5rem;line-height:1.08}.page-title p,.section-subtitle,.hint,.copy,.log-meta,.route-overview,.segment-copy,.activity-copy{color:var(--muted)}.section-title{font-size:1.45rem;line-height:1.1}.panel{border:1px solid var(--color-outline-variant,var(--line));background:var(--color-surface-container,#121215);border-radius:16px;overflow:hidden}.panel--flat{box-shadow:none;border-color:var(--color-outline-variant,var(--line));background:0 0;border-radius:16px}.panel__inner{padding:18px}.panel__header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.panel__header h3,.panel__header h4{letter-spacing:-.02em;margin:0}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.stat-card{border:1px solid var(--color-outline-variant,var(--line));background:var(--color-surface-container,#121215);border-radius:18px;min-width:0;padding:20px;transition:background .16s}.stat-card:hover{background:var(--color-surface-container-high,#18181b)}.stat-card__label{color:var(--muted);font-size:.9rem;font-weight:500}.stat-card__value{letter-spacing:-.04em;margin-top:10px;font-size:clamp(1.8rem,2.7vw,3rem);font-weight:800;line-height:1.05}.stat-card__delta{align-items:center;gap:6px;margin-top:10px;font-size:.9rem;display:flex}.stat-card__delta.is-positive{color:var(--tertiary)}.stat-card__delta.is-warning{color:var(--error)}.activity-list,.route-segments,.stack{gap:12px;display:grid}.activity-item,.route-card,.list-row{border:1px solid var(--line);background:#ffffff04;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;transition:background .12s;display:flex}.activity-item:last-child,.list-row:last-child{margin-bottom:0}.activity-item:hover,.list-row:hover{background:#ffffff08}.activity-left,.list-left{align-items:center;gap:12px;min-width:0;display:flex}.activity-icon{border:1px solid var(--line);background:var(--surface);width:40px;height:40px;color:var(--primary);border-radius:12px;flex:none;place-items:center;display:grid}.activity-icon.is-success{color:var(--tertiary)}.activity-title,.list-title{margin:0;font-weight:600;line-height:1.35}.activity-meta,.list-meta{color:var(--muted);margin-top:3px;font-size:.88rem}.status-pill,.tag,.chip,.tab-pill{border:1px solid var(--line);min-height:32px;color:var(--muted);background:#ffffff05;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:.8rem;font-weight:600;line-height:1;display:inline-flex}.status-pill--success,.tag--success,.chip--success{color:var(--tertiary);background:#34d39914;border-color:#34d39947}.status-pill--warning,.tag--warning{color:#b91c1c;background:#ef444414;border-color:#ef44443d}.status-pill--primary,.tag--primary,.chip--primary{color:var(--primary);background:#a78bfa14;border-color:#a78bfa3d}.status-pill--muted{color:var(--muted)}.button-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.locale-voice-switcher{border:1px solid var(--line);background:var(--surface);border-radius:18px;gap:12px;padding:14px;display:grid}@supports (color:color-mix(in lab,red,red)){.locale-voice-switcher{background:color-mix(in srgb,var(--surface) 78%,transparent)}}.locale-voice-switcher.is-compact{padding:12px}.locale-voice-switcher__group{gap:10px;display:grid}.locale-voice-switcher__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.locale-voice-switcher__label{letter-spacing:.02em;font-size:.92rem;font-weight:800}.locale-voice-switcher__hint{color:var(--muted);font-size:.82rem}.locale-voice-switcher__chips{flex-wrap:wrap;gap:8px;display:flex}.locale-chip{border:1px solid var(--line);background:var(--surface);border-radius:14px;min-height:44px;padding:10px 12px}@supports (color:color-mix(in lab,red,red)){.locale-chip{background:color-mix(in srgb,var(--surface) 88%,transparent)}}.locale-chip{color:var(--muted);text-align:left;align-items:center;gap:8px;transition:all .16s;display:inline-flex}.locale-chip strong,.locale-chip small{display:block}.locale-chip strong{font-size:.88rem}.locale-chip small{color:var(--muted-2);font-size:.72rem}.locale-chip.is-active{color:var(--text);background:#a78bfa1f;border-color:#a78bfa5c}.locale-chip--voice{min-width:168px}.locale-chip--theme{justify-content:center;min-width:112px}.button,.primary-action,.secondary-action,.ghost-action,.icon-button,.table-action,.pill-button{min-height:44px;color:var(--text);background:0 0;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:.9rem;font-weight:600;transition:all .16s;display:inline-flex}.button:focus-visible,.primary-action:focus-visible,.secondary-action:focus-visible,.ghost-action:focus-visible,.icon-button:focus-visible,.table-action:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.primary-action{background:var(--primary);color:var(--color-on-primary);border-color:#0000}.primary-action:hover{background:#9f79ff}.secondary-action,.icon-button,.table-action{border-color:var(--line);background:var(--surface-2)}.secondary-action:hover,.icon-button:hover,.table-action:hover{background:var(--surface-3);border-color:var(--line-strong)}.secondary-action.is-active{color:var(--primary);background:#a78bfa1f;border-color:#a78bfa4d}.ghost-action{color:var(--muted);border-color:#0000}.ghost-action:hover{color:var(--text)}.field-grid{gap:14px;display:grid}.field-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.field{gap:8px;display:grid}.field label,.field__label{color:var(--text);font-size:.9rem;font-weight:600}.field small,.field__hint{color:var(--muted)}input,textarea,select{width:100%;color:var(--text);border:1px solid var(--line);background:#fffdf9eb;border-radius:10px;padding:10px 14px;transition:border-color .16s,box-shadow .16s}input::placeholder,textarea::placeholder{color:var(--muted-2)}input:focus,textarea:focus,select:focus{border-color:#a78bfa80;outline:none;box-shadow:0 0 0 3px #a78bfa14}textarea{resize:vertical;min-height:126px}.divider{background:var(--line);width:100%;height:1px}.grid-gap{gap:16px;display:grid}.dashboard-layout{gap:18px;display:grid}.table-shell{border:1px solid var(--line);background:var(--surface-2);border-radius:12px;overflow:hidden}.data-table{border-collapse:collapse;width:100%}.data-table th,.data-table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:14px 16px}.data-table thead th{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;background:#8b5cf60a;font-size:.75rem;font-weight:700}.data-table tbody tr:hover{background:#ffffff05}.data-table tbody tr:last-child td{border-bottom:none}.table-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.table-action{min-height:40px;padding:0 14px;font-size:.86rem}.pagination{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;font-size:.88rem;display:flex}.pagination__pages{align-items:center;gap:6px;display:flex}.page-chip{border:1px solid var(--line);min-width:40px;height:40px;color:var(--text);background:#ffffff05;border-radius:10px;place-items:center;font-size:.88rem;display:grid}.page-chip.is-active{background:var(--primary);color:var(--color-on-primary);border-color:#0000;font-weight:700}.tabs{border-bottom:1px solid var(--line);gap:0;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab-item{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;padding:14px 16px 12px;font-size:.88rem;font-weight:700;transition:color .12s}.tab-item.is-active{color:var(--primary);border-bottom-color:var(--primary)}.route-card{border:1px solid var(--line);background:#ffffff05;border-radius:16px;flex-direction:column;align-items:flex-start;padding:16px 18px}.route-card__header{justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}.route-card__overview{color:var(--muted);margin:0;line-height:1.7}.route-summary{gap:10px;width:100%;display:grid}.route-segment{border:1px solid var(--line);background:#ffffff05;border-radius:16px;padding:14px}.route-segment strong{margin-bottom:6px;display:block}.route-segment p{color:var(--muted);margin:0;line-height:1.65}.mobile-shell{width:min(100%,540px);min-height:100vh;margin:0 auto;padding:0 0 88px;position:relative}.mobile-topbar{z-index:20;-webkit-backdrop-filter:blur(18px);border-bottom:1px solid var(--line);background:#f7f4eff0;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex;position:sticky;top:0}.mobile-topbar__title{letter-spacing:-.02em;margin:0;font-size:1.18rem;font-weight:600;line-height:1.15}.mobile-topbar__meta{align-items:center;gap:10px;display:flex}.pill-meter{gap:4px;min-width:72px;display:grid}.meter-track{background:var(--surface-3);border-radius:999px;height:6px;overflow:hidden}.meter-fill{border-radius:inherit;background:var(--tertiary);height:100%}.mobile-section{padding:12px 16px 0}.search-box{border:1px solid var(--line);background:var(--surface-2);border-radius:10px;align-items:center;gap:10px;height:48px;padding:0 14px;display:flex}.search-box input{box-shadow:none;background:0 0;border:none;height:100%;padding:0}.search-box input:focus{box-shadow:none;border:none}.subheading{letter-spacing:-.02em;margin:0 0 10px;font-size:1.08rem;font-weight:600;line-height:1.2}.hero-image-block{border:1px solid var(--line);background:linear-gradient(135deg,#f1ebe4,#e5dacc) 50%/cover no-repeat;border-radius:14px;height:192px;margin:12px 16px 0;position:relative;overflow:hidden}.hero-image-block__overlay{background:linear-gradient(#0000 45%,#1f172a6b);position:absolute;inset:0}.hero-image-block__label{position:absolute;bottom:12px;left:14px;right:14px}.hero-image-block__title{color:#fffdf9;margin:0;font-size:1rem;font-weight:600}.hero-image-block__sub{color:var(--muted);margin:2px 0 0;font-size:.82rem}.history-strip{scrollbar-width:none;gap:12px;padding:0 16px 4px;display:flex;overflow-x:auto}.history-strip::-webkit-scrollbar{display:none}.history-card{cursor:pointer;flex-direction:column;flex:none;gap:6px;width:140px;display:flex}.history-thumb{border:1px solid var(--line);background:var(--surface-2) center/cover no-repeat;border-radius:12px;width:140px;height:140px;position:relative;overflow:hidden}.history-thumb__overlay{background:#1f172a14;transition:background .16s;position:absolute;inset:0}.history-card:hover .history-thumb__overlay{background:0 0}.history-title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.88rem;font-weight:600;overflow:hidden}.history-subtitle{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;font-size:.78rem;overflow:hidden}.venue-list{gap:10px;display:grid}.venue-card{border:1px solid var(--line);background:var(--surface-2);cursor:pointer;border-radius:12px;align-items:center;gap:14px;padding:12px;transition:background .12s;display:flex}.venue-card:hover{background:var(--surface-3)}.venue-thumb{background:var(--surface-4) center/cover no-repeat;border-radius:14px;flex:none;width:64px;height:64px}.venue-card__body{flex:1;min-width:0}.venue-title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.92rem;font-weight:600;overflow:hidden}.venue-subtitle{color:var(--muted);margin:3px 0 0;font-size:.82rem}.venue-card__aside{color:var(--muted);flex-direction:column;flex:none;align-items:flex-end;gap:4px;display:flex}.floating-button{z-index:30;border-radius:999px;min-height:56px;padding:0 20px;font-size:.98rem;font-weight:700;position:fixed;bottom:84px;right:16px;box-shadow:0 8px 28px #a78bfa40}.bottom-nav{z-index:30;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(18px);background:#f7f4eff0;padding:8px 0 20px;position:fixed;bottom:0;left:0;right:0}.bottom-nav__items{grid-template-columns:repeat(4,1fr);max-width:540px;margin:0 auto;display:grid}.bottom-nav__item{color:var(--muted);letter-spacing:.01em;place-items:center;gap:4px;padding:6px 0;font-size:.72rem;font-weight:600;display:grid}.bottom-nav__item.is-active{color:var(--primary)}.bottom-nav__item .material-symbols-outlined{font-size:24px}.ar-shell{background:var(--bg);flex-direction:column;width:100%;height:100dvh;display:flex;position:relative;overflow:hidden}.ar-camera-bg{background:50%/cover no-repeat;position:absolute;inset:0}.ar-reticle{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.ar-reticle__frame{border:2px dashed #a78bfa66;border-radius:26px;width:248px;height:248px;animation:2s ease-in-out infinite pulse;position:relative}.ar-reticle__corner{border-color:var(--primary);border-style:solid;width:22px;height:22px;position:absolute}.ar-reticle__corner--tl{border-width:2px 0 0 2px;border-radius:6px 0 0;top:-1px;left:-1px}.ar-reticle__corner--tr{border-width:2px 2px 0 0;border-radius:0 6px 0 0;top:-1px;right:-1px}.ar-reticle__corner--bl{border-width:0 0 2px 2px;border-radius:0 0 0 6px;bottom:-1px;left:-1px}.ar-reticle__corner--br{border-width:0 2px 2px 0;border-radius:0 0 6px;bottom:-1px;right:-1px}@keyframes pulse{50%{opacity:.5}}.ar-topbar{z-index:10;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);background:#f7f4efd6;justify-content:space-between;align-items:center;padding:16px;display:flex;position:relative}.ar-scanning-pill{border:1px solid var(--line);letter-spacing:.06em;text-transform:uppercase;min-height:44px;color:var(--primary);background:#fffdf9e0;border-radius:14px;align-items:center;gap:8px;padding:0 14px;font-size:.78rem;font-weight:700;display:flex}.ar-scanning-dot{background:var(--primary);border-radius:50%;width:10px;height:10px;position:relative}.ar-scanning-dot:before{content:"";background:inherit;opacity:.7;border-radius:50%;animation:1.2s ease-out infinite ping;position:absolute;inset:0}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}.ar-info-card{z-index:10;border:1px solid var(--line);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:var(--shadow);background:#fffdf9f5;border-radius:26px;margin:auto 16px 16px;padding:16px;position:relative}.capture-stage{border-bottom:1px solid var(--line);background:linear-gradient(180deg,var(--surface),var(--bg));min-height:430px;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.capture-stage{background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 32%,transparent),color-mix(in srgb,var(--bg) 94%,transparent))}}.capture-stage__camera{filter:saturate(.82)contrast(.9)brightness(.72);background:50%/cover no-repeat;position:absolute;inset:0;transform:scale(1.04)}.capture-stage__overlay{background:linear-gradient(180deg,var(--surface),var(--bg));position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.capture-stage__overlay{background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 12%,transparent),color-mix(in srgb,var(--bg) 78%,transparent))}}.capture-stage__frame{aspect-ratio:1;border:2px dashed #a78bfa80;border-radius:26px;width:min(68vw,304px);position:absolute;top:44%;left:50%;transform:translate(-50%,-50%)}.capture-stage__scan{border:1px solid var(--line);width:72px;height:72px;color:var(--primary);background:#fffdf9d1;border-radius:50%;place-items:center;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.capture-sheet{border:1px solid var(--line);box-shadow:var(--shadow);background:#fffdf9f7;border-radius:26px;margin:-60px 14px 0;padding:16px;position:relative}.capture-sheet__title{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.scan-card__title{letter-spacing:-.025em;margin:6px 0 8px;font-size:1.1rem;font-weight:700;line-height:1.18}.audio-card{border:1px solid var(--line);background:#fffdf9db;border-radius:18px;gap:12px;padding:16px;display:grid}.audio-row{align-items:center;gap:12px;display:flex}.audio-play-btn{background:var(--primary);width:52px;height:52px;color:var(--color-on-primary);border:none;border-radius:50%;flex:none;place-items:center;transition:background .12s;display:grid}.audio-play-btn:hover{background:#9f79ff}.audio-play-btn:disabled{opacity:.4}.audio-progress-wrap{flex:1}.audio-progress-bar{background:var(--surface-3);cursor:pointer;border-radius:999px;height:6px;overflow:hidden}.audio-progress-fill{background:var(--primary);border-radius:inherit;height:100%}.audio-time{color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;margin-top:4px;font-size:.78rem;display:flex}.guide-shell{border-inline:1px solid var(--line);max-width:680px;min-height:100vh;margin:0 auto}.guide-hero{aspect-ratio:16/9;border:1px solid var(--line);background:linear-gradient(135deg,#f1ebe4,#e5dacc) 50%/cover no-repeat;border-radius:12px;width:100%;max-height:280px}.guide-tabs{border-bottom:1px solid var(--line);display:flex}.guide-tab{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;background:0 0;border:none;border-bottom:3px solid #0000;flex:1;padding:14px 8px 12px;font-size:.82rem;font-weight:700;transition:color .12s}.guide-tab.is-active{color:var(--primary);border-bottom-color:var(--primary)}.guide-content{padding:20px 18px 32px}.guide-prose{color:#1f172aeb;font-size:.97rem;line-height:1.8}.guide-prose p{margin:0 0 1.2em}.guide-prose p:last-child{margin-bottom:0}.question-chips{flex-wrap:wrap;gap:10px;display:flex}.question-chip{color:var(--muted);border:1px solid var(--line);background:#fffdf9e6;border-radius:999px;padding:10px 16px;font-size:.88rem;transition:all .16s}.question-chip:hover{color:var(--text);background:#a78bfa0f;border-color:#a78bfa66}.editor-layout{gap:18px;display:grid}.editor-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.form-grid{gap:16px;display:grid}.form-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.login-card{border:1px solid var(--line);background:linear-gradient(180deg,var(--surface),var(--surface-2));width:min(440px,100vw - 32px);box-shadow:var(--shadow);border-radius:18px;margin:10vh auto;padding:18px}.login-card h1{letter-spacing:-.03em;margin:0;font-size:1.8rem}.login-card p{color:var(--muted);margin:8px 0 0}.empty-state{text-align:center;border:1px dashed var(--line-strong);color:var(--muted);background:var(--surface);border-radius:16px;flex-direction:column;align-items:center;padding:22px 16px;display:flex}@supports (color:color-mix(in lab,red,red)){.empty-state{background:color-mix(in srgb,var(--surface) 78%,transparent)}}@media(max-width:1100px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar-layout{grid-template-columns:1fr}.sidebar{min-height:auto;position:static}}@media(max-width:760px){.app-shell--admin{padding:14px}.topbar{flex-direction:column;align-items:flex-start;gap:12px}.stats-grid,.field-grid--2,.form-grid--2{grid-template-columns:1fr}.data-table{min-width:640px}.table-shell{overflow-x:auto}}.hide-scrollbar{scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none}@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-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@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}
