:root{--bg:#f1eef6;--surface:#fff;--surface-2:#e9e4f2;--line:#17131a1f;--line-2:#17131a47;--ink:#17131a;--ink-2:#4e4757;--ink-3:#8b8794;--go:#ff6a3d;--go-ink:#1a0e08;--go-soft:#ffe6dc;--plum:#5b2a86;--plum-ink:#fff;--plum-soft:#ebe1f6;--ok:#19b37e;--ok-soft:#ddf5eb;--est:#5b2a86;--est-soft:#ebe1f6;--bad:#d9443c;--bad-soft:#fbe2e0;--off:#8b8794;--off-soft:#edebf0;--radius:18px;--chip:8px;--font:"SUIT Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;--led:var(--go);--led-ink:var(--plum-ink);--led-soft:var(--go-soft);--shadow:none;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#141018;--surface:#1e1824;--surface-2:#2a2233;--line:#ffffff1f;--line-2:#ffffff47;--ink:#f4f0f8;--ink-2:#c2bacb;--ink-3:#8b8794;--go:#ff7a50;--go-ink:#1a0e08;--go-soft:#3a1f16;--plum:#b08bd8;--plum-ink:#17131a;--plum-soft:#2e2340;--ok:#3acb95;--ok-soft:#173a2b;--est:#b08bd8;--est-soft:#2e2340;--bad:#f07378;--bad-soft:#3d1f24;--off:#8b8794;--off-soft:#2a2233;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font);letter-spacing:-.012em;word-break:keep-all;font-variant-numeric:tabular-nums;min-height:100dvh;font-size:16px;font-weight:500;line-height:1.55}h1,h2,h3{letter-spacing:-.035em;font-weight:800;line-height:1.22}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}button:disabled{cursor:not-allowed;opacity:.45}:focus-visible{outline:2px solid var(--go);outline-offset:2px;border-radius:8px}a{color:var(--plum)}.nubi .nubi-eyes{transform-box:fill-box;transform-origin:50%;animation:5.2s infinite nubi-blink}.nubi-focus .nubi-needle{transform-box:fill-box;transform-origin:50%;animation:1.8s ease-in-out infinite nubi-seek}.nubi-excited{animation:.7s ease-in-out 2 nubi-hop}@keyframes nubi-blink{0%,94%,to{transform:scaleY(1)}97%{transform:scaleY(.12)}}@keyframes nubi-seek{0%,to{transform:rotate(-18deg)}50%{transform:rotate(18deg)}}@keyframes nubi-hop{0%,to{transform:translateY(0)}40%{transform:translateY(-6px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.notice{color:var(--ink-3);text-align:center;padding:14px 16px calc(14px + env(safe-area-inset-bottom));font-size:12px;line-height:1.5}
.shell{flex-direction:column;max-width:480px;min-height:100dvh;margin:0 auto;display:flex}.topbar{background:color-mix(in srgb, var(--bg) 90%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:5;align-items:center;gap:10px;padding:14px 16px 10px;display:flex;position:sticky;top:0}.topbar .name{letter-spacing:-.04em;font-size:19px;font-weight:800}.topnav{gap:14px;margin-left:auto;display:flex}.topnav a,.topbar a.link{color:var(--ink-2);font-size:13px;font-weight:600;text-decoration:none}.topbar a.link{margin-left:auto}.topbar .pilot{color:var(--plum);background:var(--plum-soft);border-radius:999px;padding:3px 9px;font-size:11.5px;font-weight:700}.muted{color:var(--ink-3);font-size:12.5px}.chat{flex-direction:column;flex:1;gap:12px;padding:8px 16px 12px;display:flex}.chat-end{height:1px;scroll-margin-bottom:150px}.hero{flex-direction:column;align-items:flex-start;gap:14px;padding:28px 4px 8px;display:flex}.hero h1{flex-direction:column;font-size:28px;display:flex}.hero-sub{color:var(--ink-2);font-size:15px}.turn{flex-direction:column;gap:10px;padding-top:6px;display:flex}.turn+.turn,.turn+.user-bubble,.user-bubble+.turn{margin-top:6px}.bubble{border-radius:18px;max-width:88%;padding:11px 14px;font-size:15px}.user-bubble{background:var(--ink);color:var(--bg);border-bottom-right-radius:6px;align-self:flex-end}.say{align-items:flex-end;gap:8px;display:flex}.say .nubi{flex:none}.nubi-bubble{background:var(--surface);border:1px solid var(--line);border-bottom-left-radius:6px}.nubi-bubble .actions{margin-top:10px}.tag{color:var(--ink-3);border:1px solid var(--line);vertical-align:2px;border-radius:999px;margin-left:8px;padding:1px 8px;font-size:11px;font-weight:700;display:inline-block}.dots{gap:5px;padding:4px 2px;display:inline-flex}.dots i{background:var(--go);opacity:.35;border-radius:50%;width:7px;height:7px;animation:1.1s infinite dot}.dots i:nth-child(2){animation-delay:.18s}.dots i:nth-child(3){animation-delay:.36s}@keyframes dot{0%,to{opacity:.25}50%{opacity:1}}.group{flex-direction:column;gap:10px;display:flex}.group-label{color:var(--plum);padding-left:38px;font-size:12.5px;font-weight:700}.suggestions{flex-wrap:wrap;gap:6px;padding-left:38px;list-style:none;display:flex}.suggestions button{color:var(--ink);background:var(--surface);border:1px solid var(--line-2);border-radius:999px;padding:7px 12px;font-size:13px;font-weight:600}.suggestions button:hover:not(:disabled){border-color:var(--ink)}.ticket{background:var(--surface);border:1px solid var(--line-2);border-radius:var(--radius);--st:var(--off);--st-soft:var(--off-soft);grid-template-columns:28px 1fr;margin-left:38px;display:grid;overflow:hidden}.ticket.st-GO{--st:var(--go);--st-soft:var(--go-soft)}.ticket.st-CONFIRMED{--st:var(--ok);--st-soft:var(--ok-soft)}.ticket.st-ESTIMATED{--st:var(--est);--st-soft:var(--est-soft)}.ticket.st-NEEDS_CHECK{--st:var(--bad);--st-soft:var(--bad-soft)}.ticket.st-OFF,.ticket.st-EXPIRED,.ticket.st-UNCONFIRMED{--st:var(--off);--st-soft:var(--off-soft)}.ticket-spine{background:var(--plum);color:var(--plum-ink);writing-mode:vertical-rl;letter-spacing:.02em;justify-content:center;align-items:center;padding:10px 0;font-size:12px;font-weight:800;display:flex;transform:rotate(180deg)}.ticket-body{min-width:0;padding:12px 14px}.photos{grid-template-columns:1fr 1fr;gap:6px;margin:0 0 10px;display:grid}.photos img{aspect-ratio:4/3;object-fit:cover;background:var(--surface-2);border-radius:10px;width:100%}.photos img:only-child{aspect-ratio:16/7;grid-column:1/-1}.photos-empty{grid-template-columns:1fr}.photos-empty span{aspect-ratio:16/6;background:linear-gradient(135deg, var(--plum-soft), var(--go-soft));color:var(--plum);border-radius:10px;place-items:center;font-size:28px;font-weight:800;display:grid}.ticket-h{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.ticket-h h3{font-size:17px}.ticket-meta{color:var(--ink-3);flex-wrap:wrap;gap:0 10px;margin-top:3px;font-size:12.5px;display:flex}.ticket-meta .band{color:var(--ink-2);letter-spacing:-.06em;font-weight:700}.unclaimed{color:var(--ink-3);border:1px solid var(--line);border-radius:999px;padding:0 7px;font-size:11px;font-weight:700}.pill{color:var(--st);background:var(--st-soft);border-radius:999px;flex:none;padding:3px 10px;font-size:12px;font-weight:800}.why{flex-wrap:wrap;gap:5px;margin-top:9px;list-style:none;display:flex}.why li{color:var(--ink-2);background:var(--surface-2);border-radius:var(--chip);padding:3px 8px;font-size:12.5px}.why li.vibe{color:var(--plum);background:var(--plum-soft);font-weight:700}.desc{color:var(--ink-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:8px;font-size:14px;display:-webkit-box;overflow:hidden}.perf{border-top:2px dashed var(--line-2);margin:12px -14px 10px;position:relative}.perf:before,.perf:after{content:"";background:var(--bg);border:1px solid var(--line-2);border-radius:50%;width:14px;height:14px;position:absolute;top:-8px}.perf:before{left:-8px}.perf:after{right:-8px}.slots-wrap{flex-direction:column;gap:8px;display:flex}.slots-hint{color:var(--ink-2);flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-size:12.5px;display:flex}.slots-hint .deposit{color:var(--ink);font-weight:700}.slots-hint b{color:var(--ink);font-size:16px}.slots{scrollbar-width:none;gap:6px;padding-bottom:2px;list-style:none;display:flex;overflow-x:auto}.slot{background:var(--go);min-width:64px;color:var(--go-ink);border-radius:var(--chip);flex-direction:column;align-items:center;padding:8px 12px;line-height:1.1;display:flex}.slot b{letter-spacing:-.02em;font-size:17px;font-weight:800}.slot small{opacity:.8;font-size:10.5px;font-weight:700}.slot:hover:not(:disabled){filter:brightness(1.06)}.slot:active:not(:disabled){transform:scale(.96)}.actions{flex-wrap:wrap;gap:6px;display:flex}.btn{border:1px solid var(--line-2);background:var(--surface);color:var(--ink);border-radius:12px;align-items:center;padding:9px 13px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){background:var(--surface-2)}.btn.primary{background:var(--go);border-color:var(--go);color:var(--go-ink)}.btn.primary:hover:not(:disabled){filter:brightness(1.06);background:var(--go)}.btn.ink{background:var(--ink);border-color:var(--ink);color:var(--bg)}.btn.ghost{color:var(--go-ink);background:0 0;border-color:#1a0e0859}.btn.big{flex:1;justify-content:center;padding:13px 16px;font-size:15px}.btn.sm{border-radius:10px;padding:6px 10px;font-size:13px}.approve-inline{background:var(--plum-soft);border-radius:14px;flex-direction:column;gap:8px;margin-top:8px;padding:12px 13px;display:flex}.approve-h{font-size:14.5px;font-weight:800}.approve-inline dl,.sheet-dl{grid-template-columns:auto 1fr;gap:4px 14px;font-size:14px;display:grid}.approve-inline dt,.sheet-dl dt{color:var(--ink-3)}.hold{background:var(--go);color:var(--go-ink);border-radius:var(--radius);flex-direction:column;gap:10px;margin-left:38px;padding:14px 16px;animation:.28s ease-out hold-in;display:flex}@keyframes hold-in{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:none}}.hold-eyebrow{opacity:.85;font-size:13px;font-weight:700}.hold-row{justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.hold-when{letter-spacing:-.03em;font-size:22px;font-weight:800}.hold-meta{opacity:.9;gap:12px;margin-top:2px;font-size:13.5px;display:flex}.hold-clock{text-align:right;flex-direction:column;align-items:flex-end;display:flex}.hold-clock b{letter-spacing:-.04em;font-size:36px;font-weight:800;line-height:1}.hold-clock small{opacity:.8;font-size:11.5px;font-weight:700}.hold .actions{margin-top:2px}.hold-note{opacity:.8;font-size:12px}.done{background:var(--surface);border:1px solid var(--ok);border-radius:var(--radius);align-items:flex-start;gap:12px;margin-left:38px;padding:14px;display:flex}.done .nubi{flex:none}.done-eyebrow{color:var(--ok);font-size:13px;font-weight:800}.done.pending{border-color:var(--plum)}.done.pending .done-eyebrow{color:var(--plum)}.done b{margin-top:2px;font-size:17px;display:block}.done-when{color:var(--ink-2);gap:10px;font-size:14px;display:flex}.done .muted{margin:6px 0 10px}.sheet-back{z-index:20;background:#17131a73;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);width:100%;max-width:480px;padding:0 18px calc(18px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0;flex-direction:column;gap:12px;animation:.26s ease-out sheet-in;display:flex}@keyframes sheet-in{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.sheet-h{background:var(--plum);color:var(--plum-ink);border-radius:22px 22px 0 0;justify-content:space-between;align-items:center;gap:10px;margin:0 -18px;padding:16px 18px;display:flex}.sheet-h h2{font-size:18px}.sim{background:#ffffff2e;border-radius:999px;padding:3px 9px;font-size:11.5px;font-weight:800}.sheet-dl{font-size:15px}.sheet-note{color:var(--ink-2);font-size:13.5px}.sheet-refund{color:var(--plum);font-size:13px;font-weight:700}.composer{background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line);padding:8px 16px 0;position:sticky;bottom:0}.examples{flex-direction:column;gap:6px;padding-bottom:10px;list-style:none;display:flex}.examples button{text-align:left;width:100%;color:var(--ink);background:var(--surface);border:1px solid var(--line-2);border-radius:6px 14px 14px;padding:10px 13px;font-size:14px;font-weight:600}.examples button:hover:not(:disabled){border-color:var(--ink)}.composer-row{gap:8px;display:flex}.composer-row input{background:var(--surface);border:1px solid var(--line-2);border-radius:14px;flex:1;min-width:0;padding:12px 14px;font-size:16px}.composer-row input:focus{outline:2px solid var(--go);outline-offset:0;border-color:#0000}.send{border-radius:14px;flex:none;padding:0 16px}.my{flex-direction:column;gap:18px;padding:4px 16px 24px;display:flex}.my h1{padding-top:8px;font-size:24px}.my h2{color:var(--plum);font-size:15px}.my-group{flex-direction:column;gap:10px;display:flex}.rsv{background:var(--surface);border:1px solid var(--line-2);border-radius:var(--radius);--st:var(--off);--st-soft:var(--off-soft);border-left:5px solid var(--st);flex-direction:column;gap:8px;padding:14px;display:flex}.rsv.st-CONFIRMED{--st:var(--ok);--st-soft:var(--ok-soft)}.rsv.st-HELD{--st:var(--go);--st-soft:var(--go-soft)}.rsv.st-COMPLETED{--st:var(--plum);--st-soft:var(--plum-soft)}.rsv.st-CANCELLED,.rsv.st-EXPIRED,.rsv.st-REJECTED,.rsv.st-NO_SHOW{opacity:.75}.rsv-h{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.rsv-h b{font-size:16.5px}.rsv-when{color:var(--ink-2);flex-wrap:wrap;gap:10px;font-size:14px;display:flex}.rsv-money{background:var(--surface-2);border-radius:12px;grid-template-columns:auto 1fr;gap:3px 12px;padding:10px 12px;font-size:14px;display:grid}.rsv-money dt{color:var(--ink-3)}.rsv-money dd.total{font-size:16px;font-weight:800}.empty{color:var(--ink-3);background:var(--surface);border:1px dashed var(--line-2);border-radius:var(--radius);padding:16px;font-size:14px}.login{flex-direction:column;align-items:center;gap:14px;max-width:360px;margin:0 auto;padding:72px 20px;display:flex}.login h1{font-size:22px}.login form{flex-direction:column;gap:12px;width:100%;display:flex}.login label{color:var(--ink-2);flex-direction:column;gap:6px;font-size:13px;display:flex}.login input{background:var(--surface);border:1px solid var(--line-2);border-radius:12px;padding:12px 14px;font-size:16px}.form-err{color:var(--bad);font-size:13px}.ok-msg{color:var(--ok);font-size:13px}.ops{max-width:1100px;margin:0 auto;padding:0 16px 24px}.ops-top{align-items:center;gap:12px;padding:16px 0 12px;display:flex}.ops-top .btn{margin-left:auto}.ops-title{letter-spacing:-.03em;font-size:18px;font-weight:800}.ops-sub{color:var(--ink-2);font-size:13px}.ops-nav{gap:6px;margin:0 0 12px;display:flex}.ops-nav a{color:var(--ink-2);border:1px solid var(--line-2);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:700;text-decoration:none}.ops-nav a.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}.ops-offline{background:var(--bad-soft);color:var(--bad);border-radius:12px;margin-bottom:12px;padding:8px 12px;font-size:13px}.ops-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}@media (max-width:860px){.ops-grid{grid-template-columns:1fr}}.panel{flex-direction:column;gap:12px;display:flex}.block{background:var(--surface);border:1px solid var(--line-2);border-radius:var(--radius);padding:14px}.block h2{margin-bottom:10px;font-size:15px}.field{background:var(--bg);border:1px solid var(--line-2);border-radius:10px;width:100%;padding:9px 11px;font-size:15px}textarea.field{resize:vertical;min-height:84px}.lbl{color:var(--ink-2);flex-direction:column;gap:6px;margin-top:10px;font-size:12.5px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.row.between{flex-wrap:nowrap;justify-content:space-between;margin-top:0}.toggles{flex-wrap:wrap;gap:6px;display:flex}.toggles button{border:1px solid var(--line-2);color:var(--ink-2);background:var(--surface);border-radius:999px;padding:5px 11px;font-size:13px}.toggles button.on{background:var(--ink);border-color:var(--ink);color:var(--bg)}.venue-list{flex-direction:column;gap:4px;max-height:260px;margin-top:8px;list-style:none;display:flex;overflow-y:auto}.venue-list button{text-align:left;border-radius:10px;flex-direction:column;width:100%;padding:8px 10px;display:flex}.venue-list button:hover{background:var(--surface-2)}.venue-list button.on{background:var(--plum-soft)}.venue-list b{font-size:14px;font-weight:700}.venue-list span{color:var(--ink-3);font-size:12px}.venue-list .empty{color:var(--ink-3);background:0 0;border:0;padding:6px 2px;font-size:12.5px}.openings,.assists,.recent,.rsv-list{flex-direction:column;gap:8px;list-style:none;display:flex}.opening{--st:var(--est);--st-soft:var(--est-soft);border:1px solid var(--line);border-left:4px solid var(--st);border-radius:12px;padding:10px 12px}.opening.st-CONFIRMED{--st:var(--ok);--st-soft:var(--ok-soft)}.opening.st-NEEDS_CHECK{--st:var(--bad);--st-soft:var(--bad-soft)}.opening.st-EXPIRED{--st:var(--off);--st-soft:var(--off-soft);opacity:.6}.opening .pill{color:var(--st);background:var(--st-soft)}.assist{border:1px solid var(--line);background:var(--plum-soft);border-radius:12px;padding:10px 12px}.quote{margin-top:4px;font-size:14px}.kpis{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.kpis div{background:var(--bg);border-radius:10px;padding:8px 10px}.kpis dt{color:var(--ink-3);font-size:11.5px}.kpis dd{letter-spacing:-.02em;font-size:19px;font-weight:800}.todo{flex-direction:column;gap:4px;padding-left:18px;font-size:14px;display:flex}.recent li{border-bottom:1px solid var(--line);padding-bottom:8px}.recent li:last-child{border-bottom:0}.recent code{color:var(--ink-3);font-size:11px}.clip{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.rail{gap:4px;margin:6px 0 4px;list-style:none;display:flex}.rail li{text-align:center;color:var(--ink-3);background:var(--surface-2);border-radius:6px;flex:1;padding:2px 0;font-size:11px;font-weight:700}.rail li.on{background:var(--plum-soft);color:var(--plum)}.rail li.on.confirmed{background:var(--ok-soft);color:var(--ok)}.rail li.on.failed{background:var(--bad-soft);color:var(--bad)}.slot-grid{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.slot-grid span{background:var(--ok-soft);color:var(--ok);border-radius:6px;padding:2px 6px;font-size:11.5px;font-weight:700}.slot-grid span.HELD{background:var(--go-soft);color:var(--go)}.slot-grid span.BOOKED{background:var(--plum-soft);color:var(--plum)}.slot-grid span.BLOCKED{background:var(--off-soft);color:var(--off)}.about{flex-direction:column;gap:16px;padding:8px 16px 24px;display:flex}.about-hero{flex-direction:column;align-items:flex-start;gap:10px;padding-top:12px;display:flex}.about h1{font-size:26px}.lede{color:var(--ink-2);font-size:16px}.steps{counter-reset:s;flex-direction:column;gap:12px;list-style:none;display:flex}.steps li{counter-increment:s;background:var(--surface);border:1px solid var(--line-2);border-radius:var(--radius);padding:14px 14px 14px 52px;position:relative}.steps li:before{content:counter(s);background:var(--plum);width:26px;height:26px;color:var(--plum-ink);border-radius:50%;place-items:center;font-size:14px;font-weight:800;display:grid;position:absolute;top:14px;left:14px}.steps b{font-size:15.5px}.steps p{color:var(--ink-2);margin-top:2px;font-size:14px}.fine{color:var(--ink-3);font-size:13px}.sim-inline{color:var(--plum);background:var(--plum-soft);vertical-align:2px;border-radius:999px;padding:1px 7px;font-size:11px;font-weight:800}.rsv .pill{--st:var(--plum);--st-soft:var(--plum-soft)}.rsv.st-CONFIRMED .pill{--st:var(--ok);--st-soft:var(--ok-soft)}.rsv.st-HELD .pill{--st:var(--go);--st-soft:var(--go-soft)}.rsv.st-CANCELLED .pill,.rsv.st-EXPIRED .pill,.rsv.st-NO_SHOW .pill,.rsv.st-REJECTED .pill{--st:var(--off);--st-soft:var(--off-soft)}.my .say{margin-bottom:-6px}
