*{box-sizing:border-box}html,body,#root{margin:0;height:100%}.app{--bg: #f8f7fa;--card: #ffffff;--wash: #eeedf2;--line: #dbdae3;--line2: #bec0c6;--ink: #39364f;--head: #1e0a3c;--muted: #6f7287;--accent: #3659e3;--accentFill: #3659e3;--accentTint: #dee5ff;--onAccent: #ffffff;--danger: #c4314b;--dangerTint: #fbe6ea;--scrim: rgba(30, 10, 60, .4);--hover: rgba(30, 10, 60, .035);--font: "Onest", system-ui, -apple-system, "Segoe UI", sans-serif;position:relative;height:100%;display:flex;flex-direction:column;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:14px;letter-spacing:.01em;overflow:hidden;-webkit-font-smoothing:antialiased}.app[data-theme=dark]{--bg: #14111c;--card: #1e1a29;--wash: #28233a;--line: #332d46;--line2: #4d4763;--ink: #d6d3e2;--head: #f4f2fa;--muted: #9a97ad;--accent: #8fa3ff;--accentFill: #4b68ee;--accentTint: #252b52;--danger: #ff7a8f;--dangerTint: #3a1d27;--scrim: rgba(0, 0, 0, .55);--hover: rgba(255, 255, 255, .04)}.app[data-theme=dark] input{color-scheme:dark}:where(.app) :where(button,input,textarea){font:inherit;color:inherit;letter-spacing:inherit}:where(.app) button{cursor:pointer;-webkit-tap-highlight-color:transparent}.app ::-webkit-scrollbar{display:none}.app input::placeholder,.app textarea::placeholder{color:var(--muted)}.t{transition:background .15s,border-color .15s,color .15s,transform .15s,filter .15s}.bar{flex:none;display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;height:52px;padding:0 8px}.bar-back{width:44px;height:44px;border-radius:50%;border:none;background:transparent;color:var(--head);font-size:30px;line-height:1;display:flex;align-items:center;justify-content:center;padding-bottom:4px}.bar-title{text-align:center;font-size:16px;font-weight:600;color:var(--head);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.page{padding:8px 16px 32px;display:flex;flex-direction:column;gap:24px}.row-btn{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;align-items:center;width:calc(100% + 32px);margin:0 -16px;padding:14px 20px;border:none;background:transparent;text-align:left}.row-btn:active,.link-row:active{background:var(--hover)}@media (hover: hover){.row-btn:hover,.link-row:hover{background:var(--hover)}.row-btn:hover .row-title:not(.struck){color:var(--accent)}}.thumb{width:64px;height:64px;border-radius:20px;object-fit:cover;background:repeating-linear-gradient(135deg,var(--wash) 0 6px,var(--line) 6px 7px)}.row-title{font-size:16px;font-weight:600;line-height:1.3;color:var(--head)}.struck{text-decoration:line-through;opacity:.5}.meta{font-size:13px;color:var(--muted)}.meta b{font-weight:600;color:var(--ink)}.star{color:var(--accent)}.star-off{color:var(--line2)}.divider{border-top:1px solid var(--line)}.link-row{display:flex;align-items:center;gap:12px;width:calc(100% + 32px);margin:0 -16px;min-height:56px;padding:8px 20px;border:none;background:transparent;text-align:left}.chev{font-size:24px;color:var(--line2);line-height:1}.badge{align-self:flex-start;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:600}.b-published{background:var(--accentTint);color:var(--accent)}.b-pending{background:var(--wash);color:var(--ink)}.b-rejected,.b-cancelled{background:var(--dangerTint);color:var(--danger)}.b-past{background:var(--wash);color:var(--ink)}.tabs{display:flex;gap:4px;padding:4px;border-radius:100px;background:var(--wash)}.tab{flex:1;height:40px;border:none;border-radius:100px;background:transparent;color:var(--muted);font-weight:600;font-size:14px}.tab.on{background:var(--card);color:var(--head)}.hint{border-radius:32px;padding:18px 20px;display:flex;flex-direction:column;gap:6px;font-size:14px;line-height:1.5}.btn-outline{height:48px;border-radius:360px;border:1.5px solid var(--accent);background:transparent;color:var(--accent);font-weight:600;font-size:15px}.btn-outline:active{background:var(--accentTint)}.btn-neutral{flex:1;height:44px;border-radius:360px;border:1px solid var(--line);background:var(--card);color:var(--ink);font-weight:600;font-size:14px}.btn-danger{color:var(--danger)}.avatar{border-radius:50%;background:var(--wash);color:var(--head);font-weight:600;display:flex;align-items:center;justify-content:center;flex:none;object-fit:cover;overflow:hidden}.field{display:flex;flex-direction:column;gap:8px}.field-head{display:flex;justify-content:space-between;padding:0 4px;font-size:13px}.field-head b{font-weight:600;color:var(--head)}.input{width:100%;height:50px;padding:0 16px;border-radius:4px;border:1px solid var(--line2);background:var(--card);font-size:15px;outline:none}.input:focus,.textarea:focus{border-color:var(--accent)}.textarea{width:100%;resize:none;padding:14px 16px;border-radius:4px;border:1px solid var(--line2);background:var(--card);font-size:15px;line-height:1.5;outline:none}.err{font-size:13px;color:var(--danger);padding:0 4px}.input.bad{border-color:var(--danger)}.form-compact{padding:4px 16px 24px;display:flex;flex-direction:column;gap:14px}.form-compact .field{gap:6px}.form-compact .input{height:46px;padding:0 14px}.form-compact .textarea{padding:12px 14px;line-height:1.45}.form-compact .err{font-size:12px}.field-hint{font-size:12px;line-height:1.4;color:var(--muted);padding:0 4px}.hint-sm{border-radius:20px;padding:12px 16px;font-size:13px;line-height:1.45;display:flex;flex-direction:column}.grid2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.chips{display:flex;gap:6px;overflow-x:auto;margin:0 -16px;padding:2px 16px}.chip{flex:none;width:46px;height:54px;border-radius:16px;border:1px solid var(--line);background:var(--card);color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.chip.on{background:var(--accentFill);border-color:var(--accentFill);color:var(--onAccent)}.chip.bad{border-color:var(--danger)}.main-bar{flex:none;padding:12px 16px calc(16px + env(safe-area-inset-bottom));background:var(--bg);border-top:1px solid var(--line);display:flex;flex-direction:column;gap:8px}.btn-outline[disabled]{opacity:.5}.tag{position:absolute;top:-6px;left:-6px;padding:2px 7px;border-radius:20px;border:2px solid var(--bg);font-size:11px;font-weight:700;line-height:1.3}.tag-mine{background:var(--accentFill);color:var(--onAccent)}.tag-going{background:var(--accentTint);color:var(--accent)}.tag-pending{background:var(--wash);color:var(--ink)}.bar-track{height:6px;border-radius:6px;background:var(--wash);overflow:hidden}.bar-fill{height:100%;background:var(--accent);border-radius:6px}.small-btn{height:34px;padding:0 12px;border-radius:360px;border:1px solid var(--line);background:transparent;color:var(--ink);font-weight:600;font-size:13px}.small-btn.fill{border:none;padding:0 14px;background:var(--accentFill);color:var(--onAccent)}.small-btn.danger{color:var(--danger)}@media (hover: hover){.small-btn:hover{background:var(--wash);border-color:var(--line2)}.small-btn.fill:hover{background:var(--accentFill);filter:brightness(1.08)}.small-btn.danger:hover{background:var(--dangerTint);border-color:var(--danger)}}.main-btn{width:100%;height:52px;border-radius:360px;border:none;background:var(--accentFill);color:var(--onAccent);font-weight:600;font-size:16px}.main-btn:active{filter:brightness(.92)}.main-btn[disabled]{opacity:.4}.toast{position:absolute;left:16px;right:16px;bottom:96px;display:flex;justify-content:center;pointer-events:none;z-index:5}.toast span{padding:12px 18px;border-radius:360px;background:var(--head);color:var(--bg);font-size:14px;font-weight:500;text-align:center}.sheet-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--scrim);display:flex;align-items:flex-end;z-index:6}.sheet{width:100%;background:var(--card);border-radius:32px 32px 0 0;padding:24px 20px calc(20px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:8px}.city-pill{height:40px;padding:0 16px;border-radius:360px;background:var(--wash);color:var(--ink);font-size:14px;font-weight:600;display:flex;align-items:center;gap:6px;cursor:default;-webkit-user-select:none;user-select:none}.city-pin{width:11px;height:11px;border:2px solid var(--muted);border-radius:50% 50% 50% 0;transform:rotate(-45deg);margin:-2px 2px 0 0;flex:none}.avatar-btn{border:1px solid var(--line);border-radius:50%;padding:0;background:var(--wash)}.btn-cancel{align-self:flex-start;margin-top:8px;height:40px;padding:0 18px;border-radius:360px;border:1px solid var(--line);background:transparent;color:var(--danger);font-weight:600;font-size:14px}.pill-accent{height:32px;padding:0 14px;border-radius:360px;border:1.5px solid var(--accent);background:transparent;color:var(--accent);font-weight:600;font-size:13px}.star-btn{width:52px;height:52px;border:none;background:transparent;font-size:40px;line-height:1;padding:0}.add-img{aspect-ratio:16 / 9;width:100%;border-radius:32px;border:1.5px dashed var(--line2);background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}.sheet-ghost{height:52px;border-radius:360px;border:none;background:transparent;color:var(--ink);font-weight:600;font-size:16px}.hero{width:100%;aspect-ratio:4 / 3;border-radius:32px;background:repeating-linear-gradient(135deg,var(--wash) 0 8px,var(--line) 8px 9px)}img.hero,.img-full{display:block;width:100%;height:auto;aspect-ratio:auto;border-radius:32px;background:var(--wash)}@media (hover: hover){.bar-back:hover,.sheet-ghost:hover{background:var(--hover)}.tab:not(.on):hover{color:var(--head)}.btn-outline:hover,.pill-accent:hover{background:var(--accentTint)}.btn-neutral:hover{background:var(--wash);border-color:var(--line2)}.btn-neutral.btn-danger:hover,.btn-cancel:hover{background:var(--dangerTint);border-color:var(--danger)}.star-btn:hover{transform:scale(1.12)}.chip:not(.on):hover{border-color:var(--accent)}.main-btn:not([disabled]):hover{filter:brightness(1.08)}.avatar-btn:hover{border-color:var(--accent)}.add-img:hover{border-color:var(--accent);background:var(--accentTint)}.sheet-danger:hover{background:var(--dangerTint)}}.empty{padding:40px 24px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}.empty-ring{width:56px;height:56px;border-radius:50%;border:1.5px dashed var(--line2);margin-bottom:8px}.loading{padding:64px 0;text-align:center;color:var(--muted)}.spinner{width:72px;height:72px;border-radius:50%;border:6px solid var(--accentTint);border-top-color:var(--accent);margin-bottom:12px}.person-chat{flex:1;min-width:0;display:flex;align-items:center;gap:12px;border:none;background:transparent;padding:0;text-align:left}@media (hover: hover){.person-chat:hover span span:first-child{color:var(--accent)}}.fl{display:flex;flex-direction:column;gap:1px;padding:7px 14px 8px;border-radius:4px;border:1px solid var(--line2);background:var(--card);transition:border-color .15s,box-shadow .15s;cursor:text;min-width:0}.fl:hover{border-color:var(--ink)}.fl:focus-within{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.fl.bad{border-color:var(--danger)}.fl-label{font-size:12px;font-weight:600;color:var(--muted);display:flex;justify-content:space-between;gap:8px}.fl-label span{font-weight:400}.fl input,.fl textarea{width:100%;border:none;outline:none;background:transparent;padding:0;font-size:15px;line-height:22px;color:var(--head);resize:none}.form-v4{padding:4px 16px 20px;display:flex;flex-direction:column;gap:10px}.form-v4 .err{font-size:12px;padding:0 2px}.chip4{flex:none;width:44px;height:50px;border-radius:4px;border:1px solid var(--line);background:var(--card);color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center}.chip4.on{background:var(--accentFill);border-color:var(--accentFill);color:var(--onAccent)}.chip4.bad{border-color:var(--danger)}@media (hover: hover){.chip4:not(.on):hover{border-color:var(--accent)}}.cover-row{display:flex;align-items:center;gap:12px;padding:8px;border-radius:4px;border:1px solid var(--line2);background:var(--card)}.cover-add{height:52px;width:100%;border-radius:4px;border:1px dashed var(--line2);background:var(--card);display:flex;align-items:center;justify-content:center;gap:8px}@media (hover: hover){.cover-add:hover{border-color:var(--accent);background:var(--accentTint)}}.icon-x{width:32px;height:32px;border-radius:50%;border:none;background:transparent;color:var(--muted);font-size:18px}.text-btn{height:32px;padding:0 12px;border-radius:360px;border:none;background:transparent;color:var(--accent);font-weight:600;font-size:13px}@media (hover: hover){.icon-x:hover{background:var(--dangerTint);color:var(--danger)}.text-btn:hover{background:var(--accentTint)}}.hero-wrap{position:relative;margin:0 -16px}.hero-wrap .hero{border-radius:0 0 32px 32px}.float-back{position:absolute;top:12px;left:12px;width:40px;height:40px;border-radius:50%;border:none;background:var(--card);color:var(--head);font-size:26px;line-height:1;padding-bottom:3px;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 4px #1e0a3c1f}@media (hover: hover){.float-back:hover{transform:scale(1.06)}}.rating-pill{align-self:flex-start;display:flex;align-items:center;gap:8px;font-size:14px;color:var(--muted);border:none;background:transparent;border-radius:360px;padding:4px 8px;margin:-4px -8px}.seats-block{display:flex;flex-direction:column;gap:8px;margin:8px -16px 0;padding:12px 20px}.seats-block.clickable,.summary-btn{cursor:pointer}.summary-btn{margin:0 -16px;padding:4px 20px 8px}.btn-ghost{height:46px;border-radius:360px;border:1px solid var(--line2);background:transparent;color:var(--accent);font-weight:600;font-size:15px}.sort-chip{flex:none;height:34px;padding:0 14px;border-radius:360px;border:1px solid var(--line2);background:transparent;color:var(--ink);font-weight:600;font-size:13px}.sort-chip.on{background:var(--accentTint);color:var(--accent);border-color:var(--accent)}.seats-block,.summary-btn,.rating-pill{transition:background .15s}@media (hover: hover){.rating-pill:hover,.seats-block.clickable:hover,.summary-btn:hover{background:var(--hover)}.btn-ghost:hover{background:var(--accentTint);border-color:var(--accent)}.sort-chip:hover{border-color:var(--accent)}}.reviews-head{display:flex;align-items:baseline;gap:8px;width:calc(100% + 32px);margin:-6px -16px;padding:6px 20px;border:none;background:transparent;text-align:left}.review-links{display:flex;flex-direction:column;margin:0 -16px}.review-link{cursor:pointer;padding:0 20px;transition:background .15s}.review-link>.divider{border-top:none}.review-link+.review-link,.review-link:first-child{border-top:1px solid var(--line)}@media (hover: hover){.reviews-head:hover,.review-link:hover{background:var(--hover)}}
