:root{--ink: #1a1a1a;--paper: #f6f3fb;--white: #ffffff;--deep: #2a1745;--deep-2: #442767;--violet: #9a52e4;--violet-ink: #7e39d8;--pink: #e73a77;--blush: #ffd7e0;--gold: #f1cb46;--mint: #91fba3;--muted: rgba(26, 26, 26, .72);--muted-2: rgba(26, 26, 26, .62);--orb: linear-gradient(45deg, #e73a77 0%, #9a52e4 50%, #f1cb46 100%);--font-head: "Poppins", "Kanit", system-ui, sans-serif;--font-latin: "Poppins", system-ui, sans-serif;--font-body: "IBM Plex Sans Thai", "Poppins", system-ui, sans-serif;--border: 2px solid var(--ink);--shadow-sm: 3px 3px 0 var(--ink);--shadow: 4px 4px 0 var(--ink);--shadow-lg: 6px 6px 0 var(--ink);--column: 480px}*,*:before,*:after{box-sizing:border-box}[hidden]{display:none!important}html{background:var(--paper);-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.6}h1,h2,h3,p{margin:0}img{max-width:100%}a{color:var(--violet-ink)}a:hover{color:var(--deep-2)}a:focus-visible,button:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--violet);outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.shell{position:relative;width:100%;max-width:var(--column);margin:0 auto;flex:1 0 auto;display:flex;flex-direction:column;overflow-x:clip}.site-header{position:relative;height:64px;flex-shrink:0;padding:0 20px;display:flex;align-items:center;justify-content:space-between;gap:12px}.site-header--back{padding-left:8px}.site-header .tag{align-self:center}.site-header__logo{display:flex;align-items:center;min-height:44px}.site-header__logo img{display:block;height:22px;width:auto}.site-header--back .site-header__logo img{height:18px}.back-link{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 12px;color:var(--ink);text-decoration:none;font-weight:500}.back-link:hover{color:var(--ink);text-decoration:underline}.site-footer{margin-top:32px;background:var(--ink);color:#fffc;font-size:14px;line-height:24px}.site-footer__inner{max-width:var(--column);margin:0 auto;padding:28px 20px 36px;display:flex;flex-direction:column;gap:8px}.site-footer__inner img{display:block;height:18px;width:auto;align-self:flex-start}.tag{display:inline-block;align-self:flex-start;padding:4px 12px;border:var(--border);border-radius:999px;background:var(--white);font-family:var(--font-latin);font-size:12px;line-height:16px;font-weight:700;letter-spacing:.08em}.badge{display:inline-block;align-self:flex-start;padding:2px 12px;border:var(--border);border-radius:999px;background:var(--white);color:var(--ink);font-size:14px;line-height:22px;font-weight:600}.badge--open{background:var(--mint)}.badge--soon{background:var(--gold)}.eyebrow{font-family:var(--font-latin);font-size:12px;line-height:16px;font-weight:700;letter-spacing:.08em;color:var(--violet-ink)}.card{border:var(--border);border-radius:20px;background:var(--white);box-shadow:var(--shadow)}.box{border:var(--border);border-radius:20px;background:var(--white)}.btn{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:56px;padding:0 24px;border:var(--border);border-radius:999px;background:var(--white);color:var(--ink);font-family:var(--font-head);font-size:16px;line-height:1.3;font-weight:600;text-align:center;text-decoration:none;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}.btn:hover{color:var(--ink)}.btn--shadow{box-shadow:var(--shadow)}.btn--cta{min-height:60px;justify-content:space-between;padding:0 8px 0 24px;border-color:var(--ink);background:var(--ink);color:var(--white);font-size:17px;box-shadow:4px 4px 0 var(--violet);text-align:left}.btn--cta:hover{color:var(--white)}.btn--cta:not(:disabled):active,.btn--shadow:not(:disabled):active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--violet)}.btn--shadow:not(:disabled):active{box-shadow:2px 2px 0 var(--ink)}.btn--cta:disabled{border:2px dashed rgba(26,26,26,.35);background:transparent;color:#1a1a1a8c;box-shadow:none;justify-content:center;padding:0 24px;cursor:not-allowed}.btn--cta:disabled .disc{display:none}.btn--cta[aria-busy=true]:disabled{border:var(--border);background:var(--ink);color:var(--white);gap:14px}.btn--sm{width:auto;min-height:52px;padding:0 18px;border-radius:14px;font-weight:700;flex-shrink:0}.btn:disabled:not(.btn--cta){cursor:not-allowed;opacity:.6}.disc{flex-shrink:0;width:44px;height:44px;border-radius:50%;background:var(--gold);display:inline-flex;align-items:center;justify-content:center}.disc svg{display:block}.disc--sm{width:36px;height:36px}.disc--white{background:var(--white)}.disc--ink{width:40px;height:40px;background:var(--ink)}.spinner{width:20px;height:20px;border-radius:50%;border:3px solid rgba(255,255,255,.25);border-top-color:var(--gold);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.alert{display:flex;align-items:center;gap:12px;padding:14px 16px;border:var(--border);border-radius:16px;font-size:16px;line-height:26px;font-weight:500}.alert--error{background:var(--blush);box-shadow:4px 4px 0 var(--pink)}.alert--warn{background:var(--gold);box-shadow:var(--shadow)}.alert__icon{flex-shrink:0;width:32px;height:32px;border:var(--border);border-radius:50%;background:var(--pink);color:var(--white);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-latin);font-weight:800;line-height:1}.alert--warn .alert__icon{border-radius:10px;background:var(--white);color:var(--ink)}.field-error{display:flex;align-items:center;gap:8px;font-size:15px;line-height:24px;font-weight:600}.field-error .alert__icon{width:22px;height:22px;border:0;font-size:13px}.tile{flex-shrink:0;width:60px;height:60px;border:var(--border);border-radius:16px;overflow:hidden;display:flex;align-items:center;justify-content:center;color:var(--white);background:var(--violet)}.tile--1{background:var(--pink)}.tile--2{background:var(--gold);color:var(--ink)}.tile img{display:block;width:100%;height:100%;object-fit:cover}.orb{position:absolute;border-radius:50%;background:var(--orb);pointer-events:none}.steps-bar{display:flex;align-items:flex-end;gap:5px;flex-shrink:0}.steps-bar>span{width:16px;border:var(--border);border-radius:4px;background:transparent}.steps-bar>span:nth-child(1){height:14px}.steps-bar>span:nth-child(2){height:22px}.steps-bar>span:nth-child(3){height:30px}.steps-bar>span:nth-child(4){height:38px}.steps-bar>span:nth-child(5){height:46px}.steps-bar>[data-filled=true]{background:var(--ink)}.loader{display:flex;align-items:flex-end;gap:8px;height:96px}.loader>span{width:30px;border:var(--border);border-radius:8px;background:var(--white);animation:loader-step 1.5s ease-in-out infinite}.loader>span:nth-child(1){height:24px}.loader>span:nth-child(2){height:42px;animation-delay:.15s}.loader>span:nth-child(3){height:60px;animation-delay:.3s}.loader>span:nth-child(4){height:78px;animation-delay:.45s}.loader>span:nth-child(5){height:96px;animation-delay:.6s}@keyframes loader-step{0%,to{background:var(--white)}35%,65%{background:var(--gold)}}.state{position:relative;margin:auto 0;padding:40px 28px;display:flex;flex-direction:column;align-items:center;gap:24px;text-align:center}.state__title{font-family:var(--font-head);font-size:26px;line-height:38px;font-weight:800}.state__text{color:var(--muted);font-size:16px;line-height:26px}.ghost-ticket{position:relative;width:200px;height:120px;border:2px dashed var(--ink);border-radius:20px;background:var(--white);display:flex;align-items:center;justify-content:center;transform:rotate(-6deg);font-family:var(--font-latin);font-weight:800;color:#1a1a1a8c}.ghost-ticket:before,.ghost-ticket:after{content:"";position:absolute;top:44px;width:26px;height:26px;border:2px dashed var(--ink);border-radius:50%;background:var(--paper)}.ghost-ticket:before{left:-14px}.ghost-ticket:after{right:-14px}.ticket{position:relative;border:var(--border);border-radius:24px;box-shadow:var(--shadow-lg);overflow:hidden;background:var(--deep);color:var(--white)}.ticket__main{position:relative;overflow:hidden;padding:20px 20px 24px;display:flex;flex-direction:column;gap:2px}.ticket__main .orb{right:-60px;top:-80px;width:190px;height:190px}.ticket__logo{position:relative;display:block;height:16px;width:auto;align-self:flex-start;margin-bottom:20px}.ticket__event{position:relative;font-size:13px;line-height:20px;color:#ffffffd9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ticket__lead{position:relative;font-family:var(--font-head);font-size:17px;line-height:26px;font-weight:500;overflow-wrap:anywhere}.ticket__skill{position:relative;font-family:var(--font-head);font-size:32px;line-height:40px;font-weight:800;letter-spacing:-.02em;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ticket__perf{position:relative;height:0;border-top:2px dashed var(--ink)}.ticket__perf:before,.ticket__perf:after{content:"";position:absolute;top:-15px;width:28px;height:28px;border:var(--border);border-radius:50%;background:var(--paper)}.ticket__perf:before{left:-16px}.ticket__perf:after{right:-16px}.ticket__stub{padding:16px 22px 18px;background:var(--gold);color:var(--ink);display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.ticket__stub-text{display:flex;flex-direction:column;min-width:0}.ticket__tag{font-size:13px;line-height:20px;font-weight:600}.ticket__level{font-family:var(--font-head);font-size:26px;line-height:32px;font-weight:800;overflow-wrap:anywhere}.start{display:flex;flex-direction:column;gap:24px}.progress{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.progress li{padding:10px 6px;border:var(--border);border-radius:14px;background:var(--white);display:flex;flex-direction:column;text-align:center;font-size:14px;line-height:22px;font-weight:600}.progress__n{font-family:var(--font-latin);font-size:12px;line-height:16px;font-weight:700;color:var(--muted-2)}.progress li[data-state=current]{background:var(--ink);color:var(--white)}.progress li[data-state=current] .progress__n{color:var(--gold)}.progress li[data-state=done]{background:var(--mint)}.progress li[data-state=done] .progress__n{color:var(--ink)}.consent{overflow:hidden}.consent__title{padding:16px 18px 8px;font-family:var(--font-head);font-size:18px;line-height:28px;font-weight:700}.consent__text{max-height:220px;overflow-y:auto;padding:0 18px 16px;font-size:15px;line-height:26px;color:#1a1a1acc;white-space:pre-wrap;overflow-wrap:anywhere}.consent__text:focus-visible{outline-offset:-3px}.person__fields{display:flex;flex-direction:column;gap:14px;padding:0 18px 18px}.person__field{display:flex;flex-direction:column;gap:6px;font-size:15px;line-height:24px;font-weight:600}.person__field .input{width:100%}.check{display:flex;align-items:center;gap:12px;min-height:56px;padding:12px 16px;border:var(--border);border-radius:16px;background:var(--white);cursor:pointer;font-size:16px;line-height:26px;font-weight:500}.check:has(input:checked){background:var(--gold)}.check:has(input:disabled){cursor:default}.check input{width:24px;height:24px;margin:0;flex-shrink:0;accent-color:var(--ink);cursor:inherit}.start__actions{display:flex;flex-direction:column;gap:10px}.hint{text-align:center;font-size:14px;line-height:22px;color:var(--muted)}.owner{display:flex;flex-direction:column;gap:28px}.name-form{display:flex;flex-direction:column;gap:8px}.name-form__label{font-family:var(--font-head);font-size:18px;line-height:28px;font-weight:700}.name-form__label small{font-family:var(--font-body);font-size:14px;font-weight:400;color:var(--muted)}.name-form__row{display:flex;gap:8px}.input{flex:1;min-width:0;height:52px;padding:0 16px;border:var(--border);border-radius:14px;background:var(--white);color:var(--ink);font-family:var(--font-body);font-size:16px}.input[aria-invalid=true]{border:3px solid var(--pink)}.owner__share{display:flex;flex-direction:column;gap:10px}.owner__h{font-family:var(--font-head);font-size:22px;line-height:32px;font-weight:800}.share-preview{padding:14px 16px;border:var(--border);border-radius:16px;background:var(--white);display:flex;flex-direction:column;gap:4px;overflow-wrap:anywhere}.share-preview__label{font-family:var(--font-latin);font-size:12px;line-height:16px;font-weight:700;letter-spacing:.08em;color:var(--muted-2)}.share-preview__url{font-size:13px;line-height:20px;color:var(--violet-ink)}.btn--copied{background:var(--mint);color:var(--ink);box-shadow:var(--shadow);justify-content:center;padding:0 24px}.btn--copied:hover{color:var(--ink)}.share-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.share-grid .btn{min-height:52px;font-family:var(--font-latin);font-weight:700}html:not([data-view=owner]) [data-owner-only],html[data-view=owner] [data-public-only]{display:none!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.done-state{padding:40px 24px;gap:28px}.done-state__text{display:flex;flex-direction:column;gap:4px}.done-state__title{font-family:var(--font-head);font-size:28px;line-height:40px;font-weight:800}.done-state__ok{width:80px;height:80px;border:var(--border);border-radius:24px;box-shadow:var(--shadow);background:var(--mint);display:flex;align-items:center;justify-content:center}.done-state__retry{justify-content:center;padding:0 24px}.done-state__back{min-height:44px;display:inline-flex;align-items:center;color:var(--ink);font-weight:600}.done-state__back:hover{color:var(--deep-2)}
