@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Noto+Sans+KR:wght@400;500;600;700;800;900&display=swap');
:root{--ink:#282925;--muted:#777a72;--paper:#f8f7f3;--purple:#6951cf;--line:#e5e4dc;--yellow:#f7e59c;--peach:#ffccb3;--pink:#f6c6d3;--lavender:#d5c9f3;--blue:#c0deef;--green:#d0e2b0;--note-color:var(--yellow);font-family:'DM Sans','Noto Sans KR',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid var(--purple);outline-offset:5px}input:focus-visible,textarea:focus-visible{outline:2px solid var(--purple);outline-offset:3px}a{color:inherit;text-decoration:none}button{border:0;background:none}h1,h2,p{margin:0}[hidden]{display:none!important}button:disabled{opacity:.55;cursor:wait}
.site-header{height:92px;margin:0 48px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}.brand{display:flex;align-items:center;gap:13px}.brand-symbol{position:relative;font-size:50px;font-weight:800;letter-spacing:-6px;line-height:1;width:40px}.brand-symbol>span{font-size:27px;position:absolute;left:22px;top:0;color:var(--purple);letter-spacing:0}.brand-type{font-size:10px;letter-spacing:1.4px;line-height:1.6}.brand-type b{font-weight:800}.view-switch{display:flex;gap:5px;border:1px solid var(--line);padding:5px;border-radius:40px}.view-switch button{padding:10px 18px;font-size:13px;font-weight:600;border-radius:30px;transition:background .2s,color .2s}.view-switch button.active{background:var(--ink);color:var(--paper)}.view-switch button span{margin-left:12px}.prototype-tag{font-size:10px;letter-spacing:1.2px;color:var(--muted);display:flex;gap:12px;align-items:center}.prototype-tag span{background:#efeee7;border-radius:50%;height:27px;width:27px;display:grid;place-items:center}
.admin-view{padding:34px 48px 0;max-width:1920px;margin:auto}.board-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:29px;gap:20px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.6px}.board-heading h1{font-size:35px;font-weight:700;letter-spacing:-1.8px;margin:9px 0 11px}.board-heading h1 span{color:var(--purple)}.subtitle{font-size:13px;line-height:1.7;color:var(--muted)}.heading-actions{display:flex;align-items:center;gap:22px;margin-bottom:3px;flex-shrink:0}.live-status{display:flex;align-items:center;gap:7px;font-size:11px;color:#697366}.live-status>span{height:6px;width:6px;background:#799267;border-radius:50%;box-shadow:0 0 0 4px #79926713}.button{display:flex;gap:15px;align-items:center;justify-content:center;padding:13px 18px;border-radius:9px;font-size:12px;font-weight:600;min-height:44px;transition:background .2s,transform .2s}.button:hover{transform:translateY(-1px)}.button.secondary{border:1px solid #dddcd3;background:var(--paper)}.button.secondary:hover{background:#efeee7}.button.primary{background:var(--purple);color:#fff}.button.primary:hover{background:#5b43bf}.button span:last-child{font-size:18px}.admin-layout{display:grid;grid-template-columns:minmax(0,1fr) 235px;gap:28px}.board-shell{border:1px solid #e3e1d7;background:#f0efe8;border-radius:12px;overflow:hidden;position:relative;box-shadow:0 3px 0 #e3e1d72e}.board-topline{display:flex;align-items:center;justify-content:space-between;padding:18px 24px 0;position:relative;z-index:2}.board-topline>span{display:flex;gap:9px;align-items:center;font-size:9px;font-weight:600;letter-spacing:1.3px;color:#86887f}.tiny-star{font-size:20px;font-style:normal}.icon-button{font-size:20px;display:flex;align-items:center;gap:7px;color:#65685e}.icon-button span{font-size:10px}.icon-button:hover{color:var(--purple)}.board-stage{position:relative;width:100%;aspect-ratio:1.65;min-height:350px;max-height:720px;background-image:radial-gradient(#d6d5ca .7px,transparent .7px);background-size:16px 16px;overflow:hidden}.board-stage canvas{position:absolute;width:100%;height:100%;inset:0;opacity:.06;pointer-events:none}.note-layer{position:absolute;inset:0}.board-bottomline{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:12px 24px 19px;color:#909185;font-size:10px}.board-bottomline b{font-weight:500;color:#707266}.board-bottomline>span{font-size:9px;letter-spacing:.3px;flex-shrink:0}.board-note{position:absolute;width:var(--note-size);height:var(--note-size);background:var(--note-color);transform:translate(-50%,-50%) rotate(var(--rotation));padding:11% 8% 8%;padding:calc(var(--note-size)*.1);box-shadow:1px 2px 3px #28292522;cursor:grab;touch-action:none;text-align:left;user-select:none;transition:box-shadow .2s,opacity .18s;z-index:1;border-radius:1px;color:#37382d;overflow:hidden}.board-note.ticket{clip-path:polygon(13% 0,87% 0,100% 13%,100% 87%,87% 100%,13% 100%,0 87%,0 13%)}.board-note:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#00000007,transparent 30%,#ffffff1a 80%,#00000004)}.board-note:hover{z-index:4;box-shadow:2px 6px 9px #2829252e}.board-note.dragging{cursor:grabbing;z-index:10;box-shadow:3px 9px 15px #28292535;transition:none}.board-note.lifted{opacity:0;pointer-events:none}.board-note .tiny-message{font-size:calc(var(--note-size)*.135);line-height:1.55;font-weight:500;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;max-height:70%;white-space:pre-wrap;overflow-wrap:anywhere}.board-note .tiny-author{font-size:calc(var(--note-size)*.12);position:absolute;bottom:9%;left:10%;max-width:80%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.8}.board-note.new-note{animation:stick-in .5s cubic-bezier(.16,1,.3,1)}@keyframes stick-in{from{opacity:0;scale:1.8;filter:drop-shadow(0 15px 7px #28292530)}to{opacity:1;scale:1;filter:none}}
.total-section{padding:13px 0 22px;border-bottom:1px solid var(--line)}.total-section .eyebrow{color:var(--muted);font-size:11px;letter-spacing:0;font-weight:500}.total-number{font-size:70px;line-height:1.2;letter-spacing:-4px;font-weight:500;margin:8px 0 0}.total-number small{font-size:15px;font-weight:400;letter-spacing:0;margin-left:9px;color:var(--muted)}.count-caption{font-size:10px;color:var(--muted);margin-top:2px}.shape-legend{margin-top:26px;display:grid;gap:13px}.shape-legend>div{display:flex;align-items:center;gap:9px;font-size:11px}.shape-legend b{margin-left:auto;font-size:12px;font-weight:500}.legend-shape{display:inline-block;width:16px;height:16px;background:#e7e5dc;border:1px solid #8b8d82;flex-shrink:0;transform:rotate(-7deg)}.ticket{clip-path:polygon(13% 0,87% 0,100% 13%,100% 87%,87% 100%,13% 100%,0 87%,0 13%)}.legend-shape.ticket{transform:rotate(7deg)}.latest-section{padding:24px 0 8px}.latest-section h2{font-size:11px;font-weight:600;display:flex;justify-content:space-between}.latest-section h2 span{font-size:16px;color:var(--muted)}.latest-item{display:block;width:100%;text-align:left;padding:15px 0;position:relative;border-bottom:1px solid var(--line)}.latest-item .latest-meta{display:flex;align-items:center;gap:7px;font-size:9px;color:var(--muted)}.latest-item .legend-shape{width:11px;height:11px;border:0;background:var(--note-color)}.latest-item :is(p,.latest-message){font-size:11px;line-height:1.8;margin-top:7px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.latest-item .latest-author{display:block;font-size:9px;margin-top:7px;color:var(--muted)}.latest-item:hover p{color:var(--purple)}.prototype-controls{margin-top:15px;display:grid;gap:8px}.demo-caption{font-size:9px;color:#94968b;margin-bottom:2px}.prototype-controls .button{width:100%;font-size:10px;justify-content:space-between;padding:11px 12px;min-height:40px}.text-button{font-size:11px;padding:10px 0;color:var(--muted)}.text-button:hover{color:var(--purple)}.prototype-controls .text-button{text-align:left}.admin-footer{height:84px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#909287}.admin-footer>span{font-size:8px;letter-spacing:1px}.admin-footer p{font-size:12px;color:#6d7167}.admin-layout:fullscreen{background:var(--paper);padding:28px;grid-template-columns:minmax(0,1fr) 230px;height:100vh;align-items:start}.admin-layout:fullscreen .board-shell{height:calc(100vh - 56px);display:flex;flex-direction:column}.admin-layout:fullscreen .board-stage{flex:1;max-height:none;aspect-ratio:auto;min-height:0}.admin-layout.expanded{grid-template-columns:1fr}.admin-layout.expanded .board-sidebar{display:none}.admin-layout.expanded .board-stage{max-height:none}
.attendee-view{display:grid;grid-template-columns:1fr 470px;max-width:1040px;margin:55px auto 65px;gap:110px;align-items:start}.attendee-intro{padding-top:44px}.attendee-intro .eyebrow{font-size:10px;color:var(--purple)}.attendee-intro h1{font-size:48px;line-height:1.35;font-weight:700;letter-spacing:-2.6px;margin:21px 0}.attendee-intro h1 span{color:var(--purple)}.attendee-intro>p:not(.eyebrow){font-size:13px;line-height:2;color:var(--muted)}.intro-paper-art{position:relative;height:265px;margin-top:28px}.art-paper{position:absolute;width:172px;height:177px;padding:27px 20px;font-size:16px;line-height:1.75;letter-spacing:-.6px;box-shadow:2px 9px 14px #28292514}.art-yellow{background:var(--yellow);transform:rotate(-11deg);left:4px;top:13px}.art-purple{background:var(--lavender);clip-path:polygon(13% 0,87% 0,100% 13%,100% 87%,87% 100%,13% 100%,0 87%,0 13%);transform:rotate(10deg);left:158px;top:68px;padding-top:33px}.art-paper span{font-weight:700}.art-spark{position:absolute;font-size:53px;color:var(--purple);left:303px;top:0}.attendee-intro>p.intro-bottom{font-size:8px;letter-spacing:1.3px;margin-top:7px}.attendee-surface{background:#fffefa;border:1px solid var(--line);border-radius:22px;box-shadow:0 18px 55px #28292508;overflow:hidden;min-height:660px}.mobile-event-label{display:flex;align-items:center;justify-content:space-between;font-size:8px;font-weight:700;letter-spacing:1px;padding:26px 29px 0;color:#888b7d}.mobile-event-label>span{font-size:21px;color:var(--purple)}.attendee-step{padding:32px 29px 25px}.step-label{font-size:10px;letter-spacing:1px;font-weight:700;color:var(--purple);display:flex;align-items:center;gap:9px}.step-label span{font-size:10px;letter-spacing:0;color:var(--muted);font-weight:400}.attendee-step h1{font-size:30px;font-weight:700;letter-spacing:-1.4px;line-height:1.5;margin:12px 0 10px}.step-description{font-size:11px;color:var(--muted);line-height:1.8;margin-bottom:29px}.topic-card{position:relative;display:flex;width:100%;gap:21px;padding:25px 18px;border:1px solid var(--line);border-radius:12px;margin-top:14px;text-align:left;align-items:center;transition:background .2s,transform .2s,border-color .2s}.topic-card:hover{background:#f7f5ee;border-color:#a9a399;transform:translateY(-2px)}.topic-card:active{transform:translateY(0)}.topic-art{flex-shrink:0;width:65px;height:72px;display:grid;place-items:center;font-size:34px;box-shadow:1px 4px 7px #28292514}.square-art{background:var(--yellow);transform:rotate(-8deg)}.ticket-art{background:var(--lavender);transform:rotate(8deg);clip-path:polygon(13% 0,87% 0,100% 13%,100% 87%,87% 100%,13% 100%,0 87%,0 13%)}.topic-copy{display:grid;gap:7px}.topic-copy small{font-size:7px;letter-spacing:1px;color:var(--muted)}.topic-copy b{font-size:16px;font-weight:600;line-height:1.55;letter-spacing:-.6px}.topic-copy>span{font-size:9px;color:var(--muted);line-height:1.7}.topic-arrow{position:absolute;right:14px;top:14px;font-size:20px}.attendee-footnote{font-size:10px;text-align:center;color:#989b8e;margin:34px 0 11px}.surface-footer{padding:23px 29px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:7px;letter-spacing:.6px;color:#939588}.surface-footer>span:last-child{font-size:9px;letter-spacing:0}.surface-footer b{color:var(--purple);font-size:12px;margin-left:3px}.back-button{font-size:10px;color:var(--muted);padding:0 0 25px}.back-button:hover{color:var(--purple)}#writeStep{padding-top:24px}#writeStep h1{font-size:24px;line-height:1.5;margin-bottom:25px}.identity-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.identity-fields label{font-size:11px;font-weight:500}.identity-fields label>span{color:var(--purple)}.identity-fields input{display:block;width:100%;margin-top:8px;background:#fffefa;border:1px solid #dfded5;border-radius:7px;padding:12px 10px;font-size:11px;min-height:44px}.identity-fields input::placeholder{color:#a6a79f}.color-picker{margin:23px 0 20px;padding:0;border:0}.color-picker legend{font-size:11px;font-weight:500;margin-bottom:12px;width:100%}.color-picker legend span{float:right;font-size:9px;font-weight:400;color:#95978b}#colorOptions{display:flex;gap:12px;align-items:center}.color-choice{width:35px;height:35px;background:var(--swatch);border-radius:50%;border:2px solid transparent;position:relative;font-size:16px;display:grid;place-items:center}.color-choice[aria-checked="true"]{outline:1px solid var(--ink);outline-offset:3px}.color-choice[aria-checked="true"]:after{content:'✓';font-size:16px;color:var(--ink)}.writing-paper{background:var(--note-color);padding:23px 21px 17px;box-shadow:1px 5px 9px #28292510;transition:background .25s;position:relative;border-radius:1px}.writing-paper.ticket{padding:28px 24px 25px}.writing-paper>label{font-size:10px;font-weight:500;opacity:.75}.writing-paper textarea{display:block;width:100%;font-size:14px;line-height:1.9;padding:12px 0 0;resize:vertical;min-height:148px;border:0;background:transparent;color:var(--ink);overflow-wrap:anywhere}.writing-paper textarea::placeholder{color:#615e5770}.writing-paper textarea:focus-visible{outline:0}.writing-paper:focus-within{box-shadow:0 0 0 2px var(--purple),1px 5px 9px #28292510}.paper-writing-footer{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:12px;padding-top:10px;border-top:1px solid #28292515;font-size:9px;color:#2829259c}.paper-writing-footer>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:75%}.paper-writing-footer b{font-weight:400}.form-error{font-size:11px;color:#ac4c3a;padding-top:12px}.submit-button{width:100%;justify-content:space-between;margin-top:23px;font-size:12px;min-height:50px}.form-caption{font-size:9px;line-height:1.7;color:#8d9083;text-align:center;margin-top:13px}.success-step{text-align:center;padding-top:27px}.success-star{display:inline-block;font-size:59px;color:var(--purple);margin-bottom:16px}.success-step .step-label{display:block;font-size:8px}.success-step h1{font-size:27px}.success-step .step-description{font-size:10px;margin-bottom:24px}.success-paper{background:var(--note-color);text-align:left;width:83%;min-height:230px;margin:0 auto 34px;padding:27px;box-shadow:2px 8px 13px #2829251b;transform:rotate(-4deg);overflow-wrap:anywhere;white-space:pre-wrap}.success-paper.ticket{padding:30px}.success-paper>span{font-size:8px;opacity:.65}.success-paper>p{font-size:14px;line-height:1.9;padding:20px 0}.success-paper>b{font-size:9px;font-weight:500;opacity:.8}.success-step .button{width:100%;justify-content:space-between}.success-step .text-button{margin-top:9px}
.note-reader{border:0;padding:0;background:transparent;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;inset:0;margin:0;overflow:auto;color:var(--ink)}.note-reader::backdrop{background:#28292580;backdrop-filter:blur(5px)}.reader-wrap{width:100%;min-height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:55px 24px;position:relative}.reader-paper{position:relative;width:min(420px,calc(100vw - 48px));min-height:420px;background:var(--note-color);padding:38px;box-shadow:0 24px 60px #00000025;transform-origin:top left;overflow-wrap:anywhere;display:flex;flex-direction:column}.reader-paper.ticket{padding:42px;clip-path:polygon(10% 0,90% 0,100% 10%,100% 90%,90% 100%,10% 100%,0 90%,0 10%)}.reader-topic{font-size:11px;opacity:.65}.reader-message{font-size:23px;line-height:1.9;letter-spacing:-.7px;white-space:pre-wrap;padding:28px 0 30px;flex:1}.reader-author{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;font-size:13px}.reader-author b{font-weight:600}.reader-author span{font-size:11px;opacity:.65}.reader-date{font-size:8px;opacity:.45;margin-top:13px}.reader-close{align-self:center;display:flex;align-items:center;gap:14px;color:#fff;font-size:12px;margin-bottom:13px;margin-left:min(335px,60vw);min-height:35px}.reader-close span{font-size:26px;font-weight:400}.reader-hint{font-size:10px;color:#ffffffa1;margin-top:22px}.toast{position:fixed;bottom:27px;left:50%;transform:translateX(-50%);max-width:calc(100vw - 40px);background:var(--ink);color:#fff;padding:14px 22px;border-radius:10px;font-size:12px;line-height:1.7;z-index:30;box-shadow:0 8px 25px #28292520;white-space:normal;text-align:center}
@media(min-width:1600px){.board-stage{aspect-ratio:1.7}.board-heading h1{font-size:42px}.admin-layout{grid-template-columns:minmax(0,1fr) 260px;gap:38px}.board-sidebar{padding:15px 5px}.latest-item :is(p,.latest-message){font-size:12px}.shape-legend>div{font-size:12px}}
@media(max-width:1100px){.site-header{margin:0 25px;height:80px}.admin-view{padding:27px 25px 0}.admin-layout{gap:20px;grid-template-columns:minmax(0,1fr) 200px}.board-heading h1{font-size:29px}.board-heading .subtitle{font-size:11px}.heading-actions{gap:12px}.live-status{font-size:10px}.attendee-view{gap:60px;padding:0 35px;grid-template-columns:1fr 430px}.attendee-intro h1{font-size:40px}.art-purple{left:117px}.art-spark{left:247px}.art-paper{width:155px;font-size:14px}.board-stage{min-height:390px;aspect-ratio:1.25}.total-number{font-size:58px}}
@media(max-width:800px){.site-header{margin:0 20px;height:72px}.brand-type{display:none}.brand-symbol{font-size:40px;width:33px}.brand-symbol>span{font-size:22px;left:19px}.prototype-tag{display:none}.view-switch{padding:4px}.view-switch button{font-size:10px;padding:8px 13px}.view-switch button span{margin-left:4px}.attendee-view{display:block;margin:0;padding:0;max-width:none}.attendee-intro{display:none}.attendee-surface{border:0;border-radius:0;box-shadow:none;min-height:calc(100dvh - 72px);max-width:470px;margin:auto;background:var(--paper)}.mobile-event-label{padding:27px 26px 0}.attendee-step{padding:32px 26px 25px}.attendee-step h1{font-size:31px}.topic-card{padding:25px 17px;gap:20px;min-height:152px}.topic-copy b{font-size:17px}.topic-copy>span{font-size:10px}.topic-copy small{font-size:7px}.attendee-footnote{margin-top:30px}.surface-footer{padding:22px 26px;background:var(--paper)}.topic-art{width:66px;height:73px}.identity-fields input{font-size:16px;padding:12px 10px}.writing-paper textarea{font-size:16px;min-height:160px}.color-choice{height:37px;width:37px}#colorOptions{gap:13px}.color-picker legend span{font-size:9px}.submit-button{font-size:14px;min-height:54px}.form-caption{font-size:9px}.board-heading{display:block}.board-heading h1{font-size:28px}.heading-actions{margin-top:19px;justify-content:space-between}.admin-view{padding:25px 20px 0}.admin-layout{display:block}.board-stage{min-height:340px;aspect-ratio:1.1}.board-topline{padding:15px 15px 0}.board-topline>span{font-size:7px;letter-spacing:.4px}.icon-button span{font-size:9px}.board-bottomline{padding:10px 14px 15px;font-size:8px;align-items:flex-start}.board-bottomline>span{font-size:7px}.board-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:25px}.total-section{border:0}.total-number{font-size:55px}.total-section .eyebrow{font-size:10px}.count-caption{font-size:8px}.shape-legend{margin-top:17px}.shape-legend>div{font-size:10px}.latest-section{padding:13px 0 0}.latest-section h2{font-size:10px}.latest-item{padding:11px 0}.latest-item:nth-child(3){display:none}.latest-item :is(p,.latest-message){font-size:10px}.latest-item .latest-author{font-size:8px}.prototype-controls{grid-column:1/-1;margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:10px}.demo-caption{width:100%;font-size:8px}.prototype-controls .button{width:auto;font-size:9px}.prototype-controls .text-button{font-size:9px;padding:9px}.admin-footer{margin-top:12px;height:76px}.admin-footer span:last-child{display:none}.admin-footer>span{font-size:6px;max-width:130px;line-height:1.8}.admin-footer p{font-size:10px}.reader-paper{min-height:350px;padding:28px}.reader-paper.ticket{padding:33px}.reader-message{font-size:20px;line-height:1.8}.reader-close{margin-left:min(260px,60vw)}.admin-layout:fullscreen{display:block;padding:16px}.admin-layout:fullscreen .board-sidebar{display:none}.admin-layout:fullscreen .board-shell{height:calc(100dvh - 32px)}.admin-layout:fullscreen .board-stage{min-height:0}.success-step .step-label{font-size:7px}}
@media(max-width:365px){.attendee-step{padding-left:21px;padding-right:21px}.topic-card{gap:14px;padding:22px 13px}.topic-art{width:55px;height:64px}.topic-copy b{font-size:15px}.topic-copy>span{font-size:9px}.topic-copy small{font-size:6px}.topic-arrow{right:10px}.color-picker legend span{font-size:8px}#colorOptions{gap:10px}.color-choice{height:32px;width:32px}.attendee-step h1{font-size:29px}.form-caption{font-size:8px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(min-width:801px) and (max-height:1050px){.site-header{height:76px}.admin-view{padding-top:25px}.board-heading{margin-bottom:21px}.board-heading h1{font-size:30px}.board-stage{height:calc(100dvh - 385px);min-height:380px;max-height:650px;aspect-ratio:auto}.total-number{font-size:60px}.shape-legend{margin-top:20px}.latest-section{padding-top:20px}.latest-item:nth-child(3){display:none}.prototype-controls{margin-top:12px}.admin-footer{height:60px}.admin-layout:fullscreen .board-stage{height:auto;min-height:0;max-height:none}.attendee-view{margin-top:35px}}

/* Attendee opening screen — Figma node 766:174, excluding device system bars. */
body[data-view="attendee"][data-attendee-step="topicStep"]{background:#fff}
body[data-view="attendee"][data-attendee-step="topicStep"] .site-header,
body[data-attendee-step="topicStep"] .attendee-intro,
body[data-attendee-step="topicStep"] .mobile-event-label,
body[data-attendee-step="topicStep"] .surface-footer{display:none}
body[data-attendee-step="topicStep"] .attendee-view{display:grid;place-items:center;grid-template-columns:1fr;gap:0;max-width:none;margin:0;padding:0;min-height:100dvh;background:#fff}
body[data-attendee-step="topicStep"] .attendee-surface{width:100%;max-width:375px;margin:0 auto;min-height:0;border:0;border-radius:0;box-shadow:none;background:#fff}
#topicStep.topic-landing{position:relative;width:100%;aspect-ratio:375/734;padding:0;overflow:hidden;isolation:isolate}
.landing-wordmarks{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;user-select:none}
.landing-topic{position:absolute;display:block;margin:0;padding:0;border:0;background:transparent;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:filter .18s,translate .18s}
.landing-topic img{display:block;width:100%;height:100%;pointer-events:none;user-select:none}
.landing-topic{transform-origin:50% 50%;animation-duration:.5s;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-direction:alternate;animation-fill-mode:both}
.landing-highfive{animation-name:landing-rock-blue}
.landing-thanks{animation-name:landing-rock-beige;animation-delay:.2s}
@keyframes landing-rock-blue{from{transform:rotate(-1deg)}to{transform:rotate(1deg)}}
@keyframes landing-rock-beige{from{transform:rotate(1deg)}to{transform:rotate(-1deg)}}
.landing-highfive{left:-26.666667%;top:11.716621%;width:106.666667%;height:44.277929%;clip-path:polygon(0 0,100% 0,100% 70%,60% 100%,0 100%)}
.landing-thanks{left:29.333333%;top:34.877384%;width:89.333333%;height:43.188011%;z-index:1;clip-path:polygon(12% 0,100% 0,100% 100%,0 100%)}
.landing-topic:hover{filter:brightness(.985)}
.landing-topic:active{filter:brightness(.96);translate:0 2px}
.landing-topic:focus-visible{outline:0;filter:drop-shadow(0 0 3px #005bea) drop-shadow(0 0 3px #005bea)}
@media(max-width:800px){body[data-attendee-step="topicStep"] .attendee-surface{max-width:430px}}
@media(prefers-reduced-motion:reduce){.landing-topic{transition:none}}

/* High-five message screen — Figma node 764:394. */
body[data-view="attendee"][data-attendee-step="guideStep"]{background:#fff}
body[data-attendee-step="guideStep"] .site-header,body[data-attendee-step="guideStep"] .attendee-intro,body[data-attendee-step="guideStep"] .mobile-event-label,body[data-attendee-step="guideStep"] .surface-footer{display:none}
body[data-attendee-step="guideStep"] .attendee-view{display:grid;place-items:center;grid-template-columns:1fr;gap:0;max-width:none;margin:0;padding:0;min-height:100dvh;background:#fff}
body[data-attendee-step="guideStep"] .attendee-surface{width:100%;max-width:375px;margin:0 auto;min-height:0;border:0;border-radius:0;box-shadow:none;background:#fff}
#guideStep{position:relative;width:100%;aspect-ratio:375/734;padding:0;overflow:hidden;container-type:inline-size;--note-color:#AAD6FF}
.guide-back{position:absolute;left:1.6%;top:0;width:44px;height:44px;padding:10px;color:#191f28;z-index:2}
.guide-back svg{width:20px;height:20px}
#guideStep .guide-heading{position:absolute;inset:0;margin:0;pointer-events:none}
.guide-heading img{width:100%;height:100%;display:block}
.guide-heading:focus{outline:0}
.guide-note-art{position:absolute;left:6.666667%;top:21.389646%;width:86.666667%;height:44.277929%;color:var(--note-color);transition:color .2s;pointer-events:none}
.guide-text-box{position:absolute;left:20%;top:37.60218%;width:60%;height:13.079019%;overflow:hidden}
#guideMessage,#guideTextMeasure{font-family:'Pretendard','Noto Sans KR',sans-serif;font-size:3.733333cqw;font-weight:500;line-height:1.75;letter-spacing:-.02em;text-align:center;overflow-wrap:anywhere;white-space:pre-wrap;word-break:normal}
#guideMessage{display:block;width:100%;height:100%;margin:0;padding:0;border:0;resize:none;background:transparent;color:#000;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#0003 transparent}
#guideTextMeasure{position:absolute;left:0;top:0;width:100%;height:auto;margin:0;padding:0;border:0;visibility:hidden;pointer-events:none}
#guideMessage::placeholder{color:rgb(0 0 0 / .35);-webkit-text-fill-color:rgb(0 0 0 / .35);opacity:1;font-size:3.2cqw}
#guideTextMeasure.is-placeholder{font-size:3.2cqw}
#guideMessage:focus-visible{outline:1px dashed #0005;outline-offset:4px;border-radius:8px}
.guide-colors{position:absolute;left:25.066667%;top:67.847411%;display:flex;gap:5.333333cqw}
.guide-color{width:8.533333cqw;height:8.533333cqw;border-radius:50%;background:var(--swatch);padding:0}
.guide-color[aria-checked="true"]{box-shadow:0 0 0 3px #0000000c}
.guide-next{position:absolute;left:3.733333%;top:80.653951%;width:92.8%;height:7.629428%;background:#000;color:#fff;border-radius:4.266667cqw;font-size:3.733333cqw;font-weight:500}
.guide-next:active{background:#252525}
body[data-attendee-step="writeStep"] .color-picker,body[data-attendee-step="writeStep"] .writing-paper{display:none}
@media(max-width:800px){body[data-attendee-step="guideStep"] .attendee-surface{max-width:430px}}

/* Stamp message screen — Figma node 767:215. */
body[data-topic="thanks"] .guide-text-box{top:37.057221%}
body[data-topic="thanks"] .guide-colors{top:68.392371%}

/* Shared identity screen — Figma node 764:470. */
@font-face{font-family:Anniversary Pretendard;src:url('assets/fonts/Pretendard-Regular.otf') format('opentype');font-weight:400;font-display:swap}
@font-face{font-family:Anniversary Pretendard;src:url('assets/fonts/Pretendard-Medium.otf') format('opentype');font-weight:500;font-display:swap}
body[data-view="attendee"][data-attendee-step="writeStep"]{background:#fff}
body[data-attendee-step="writeStep"] .site-header,body[data-attendee-step="writeStep"] .attendee-intro,body[data-attendee-step="writeStep"] .mobile-event-label,body[data-attendee-step="writeStep"] .surface-footer,body[data-attendee-step="writeStep"] .form-caption{display:none}
body[data-attendee-step="writeStep"] .attendee-view{display:grid;place-items:center;grid-template-columns:1fr;gap:0;max-width:none;margin:0;padding:0;min-height:100dvh;background:#fff}
body[data-attendee-step="writeStep"] .attendee-surface{width:100%;max-width:375px;margin:0 auto;min-height:0;border:0;border-radius:0;box-shadow:none;background:#fff}
#writeStep{position:relative;width:100%;aspect-ratio:375/734;padding:0;container-type:inline-size;font-family:'Anniversary Pretendard',sans-serif;color:#000}
#writeStep .identity-heading{position:absolute;left:6.666667%;top:9.809264%;margin:0;font-size:5.866667cqw;font-weight:400;line-height:1.5;letter-spacing:-.02em;white-space:nowrap}
#writeStep .identity-fields{position:absolute;left:6.666667%;top:24.386921%;width:86.666667%;display:flex;flex-direction:column;gap:6.133333cqw}
#writeStep .identity-fields label{display:block;margin:0;font-size:3.2cqw;font-weight:400;line-height:1.5;letter-spacing:-.02em;color:#999}
#writeStep .identity-fields input{display:block;width:100%;height:9.333333cqw;min-height:0;margin:1.066667cqw 0 0;padding:0;border:0;border-bottom:1px solid #000;border-radius:0;background:#fff;font-size:5.866667cqw;font-weight:500;line-height:1.5;letter-spacing:-.02em;color:#000;box-shadow:none;appearance:none}
#writeStep .identity-fields input::placeholder{color:#999;opacity:1}
#writeStep .identity-fields input:focus{outline:0;border-bottom-width:1px}
#writeStep #submitButton{position:absolute;left:3.733333%;top:80.653951%;width:92.8%;height:7.629428%;padding:0;margin:0;display:block;border:0;border-radius:4.266667cqw;background:#000;color:#fff;font-size:4.266667cqw;font-weight:500;line-height:1.5;letter-spacing:-.02em}
#writeStep #formError{position:absolute;left:6.666667%;top:48%;width:86.666667%;font-size:3.2cqw}
@media(max-width:800px){body[data-attendee-step="writeStep"] .attendee-surface{max-width:430px}}

/* Registration receipt — Figma node 767:269. */
@font-face{font-family:Anniversary Pretendard;src:url('assets/fonts/Pretendard-SemiBold.otf') format('opentype');font-weight:600;font-display:swap}
body[data-view="attendee"][data-attendee-step="successStep"]{background:#fff}
body[data-attendee-step="successStep"] .site-header,body[data-attendee-step="successStep"] .attendee-intro,body[data-attendee-step="successStep"] .mobile-event-label,body[data-attendee-step="successStep"] .surface-footer{display:none}
body[data-attendee-step="successStep"] .attendee-view{display:grid;place-items:center;grid-template-columns:1fr;gap:0;max-width:none;margin:0;padding:0;min-height:100dvh;background:#fff}
body[data-attendee-step="successStep"] .attendee-surface{width:100%;max-width:375px;margin:0 auto;min-height:0;border:0;border-radius:0;box-shadow:none;background:#fff}
#successStep{position:relative;width:100%;aspect-ratio:375/734;padding:0;container-type:inline-size;font-family:'Anniversary Pretendard',sans-serif;color:#000}
#successStep .completion-heading{position:absolute;left:6.666667%;top:9.809264%;margin:0;font-size:5.866667cqw;font-weight:400;line-height:1.5;letter-spacing:-.02em}
.completion-heading:focus{outline:0}
.completion-number{position:absolute;left:6.666667%;top:41.416894%;width:86.666667%;margin:0;text-align:center;font-size:17.066667cqw;font-weight:600;line-height:1.5;letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;overflow-wrap:anywhere}
.completion-wordmark{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
@media(max-width:800px){body[data-attendee-step="successStep"] .attendee-surface{max-width:430px}}

/* Number reels keep the final number's original glyph widths and baseline. */
#raffleNumber,#raffleNumber span{font:inherit;letter-spacing:inherit;font-variant-numeric:inherit;font-feature-settings:inherit}
.raffle-reel{position:relative;display:inline-block;height:1.5em;padding:0 .06em;margin:0 -.06em;vertical-align:top;overflow:hidden;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 82%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 82%,transparent)}
.raffle-reel-anchor{visibility:hidden}
.raffle-reel-strip{position:absolute;inset:0 0 auto;will-change:transform}
.raffle-reel-strip>span{display:block;height:1.5em;line-height:1.5;text-align:center}

/* A balanced applause burst spans the full receipt width. */
.completion-celebration{position:absolute;inset:0;overflow:hidden;pointer-events:none;user-select:none;z-index:3}
.completion-clap{position:absolute;bottom:-56px;margin-left:-.5em;display:block;line-height:1;font-family:'Apple Color Emoji','Segoe UI Emoji','Noto Color Emoji',sans-serif;will-change:transform,opacity}

.completion-home{position:absolute;left:50%;top:55.275204%;transform:translateX(-50%);min-width:128px;min-height:44px;padding:10px 16px;font-family:inherit;font-size:3.733333cqw;font-weight:400;color:#777;text-decoration:underline;text-underline-offset:4px;z-index:4}
.completion-home:hover{color:#000}

/* Desktop board shares the attendee type, palette and paper silhouettes. */
:root{--bubble-mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%2225%20201%20325%20325%22%3E%3Cpath%20d%3D%22M210.286%20223.226C216.995%20221.676%20222.104%20227.832%20220.981%20233.786L220.97%20233.847L220.957%20233.907L210.273%20283.779C237.698%20280.425%20263.319%20282.356%20284.419%20289.383C307.01%20296.907%20324.754%20310.417%20333.435%20329.825L333.841%20330.754L333.847%20330.766C345.207%20357.493%20337.091%20388.49%20316.57%20416.538C295.983%20444.678%20262.412%20470.669%20220.842%20488.173C202.418%20496.025%20183.78%20501.583%20165.771%20504.774C159.064%20506.322%20153.957%20500.167%20155.079%20494.214L155.09%20494.153L155.104%20494.093L165.787%20444.214C138.395%20447.576%20112.782%20445.647%2091.6689%20438.602C68.7165%20430.942%2050.7465%20417.091%2042.1621%20397.134L42.1582%20397.126L42.1553%20397.118C30.7905%20370.446%2038.9114%20339.476%2059.4385%20311.445C80.0303%20283.326%20113.607%20257.339%20155.197%20239.836C173.627%20231.979%20192.271%20226.418%20210.286%20223.226Z%22%20fill%3D%22black%22%2F%3E%3C%2Fsvg%3E")}
:root{--stamp-mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%2225%20201%20325%20325%22%3E%3Cpath%20d%3D%22M301.338%20234.046C303.946%20234.088%20306.562%20234.022%20309.193%20234.055C312.069%20233.967%20317.276%20233.614%20317.73%20237.672C318.153%20241.444%20317.941%20246.195%20317.965%20250.075C312.303%20250.153%20307.69%20253.717%20307.525%20259.615C307.426%20262.229%20308.405%20264.769%20310.234%20266.638C312.449%20268.927%20314.864%20269.578%20317.939%20269.628C317.919%20273.074%20317.924%20276.519%20317.952%20279.964C312.396%20279.991%20307.899%20283.315%20307.534%20289.089C307.345%20291.696%20308.228%20294.267%20309.974%20296.211C312.144%20298.623%20314.811%20299.34%20317.928%20299.526C317.952%20302.93%20317.946%20306.333%20317.913%20309.737L317.744%20309.733C312.078%20309.647%20307.55%20313.755%20307.525%20319.505C307.501%20322.106%20308.533%20324.604%20310.385%20326.429C312.559%20328.586%20314.955%20329.243%20317.925%20329.243C317.908%20332.64%20317.919%20336.036%20317.955%20339.432C314.947%20339.719%20312.664%20340.181%20310.41%20342.369C308.564%20344.159%20307.517%20346.617%20307.504%20349.189C307.462%20351.798%20308.47%20354.316%20310.301%20356.175C312.495%20358.39%20314.96%20359.019%20317.969%20359.03C317.891%20362.242%20317.927%20365.655%20317.911%20368.883L317.726%20368.879C314.977%20368.836%20312.414%20369.708%20310.427%20371.649C308.575%20373.472%20307.529%20375.962%20307.525%20378.563C307.482%20381.157%20308.485%20383.659%20310.309%20385.504C312.496%20387.699%20314.966%20388.363%20317.961%20388.385C317.93%20391.795%20317.925%20395.207%20317.949%20398.619C315.056%20398.747%20312.614%20399.368%20310.474%20401.429C308.608%20403.227%20307.544%20405.701%20307.52%20408.295C307.462%20414.389%20312.056%20418.147%20317.928%20418.143L317.943%20428.5C312.333%20428.47%20307.712%20432.146%20307.533%20437.933C307.429%20440.518%20308.358%20443.04%20310.116%20444.937C312.298%20447.251%20314.894%20447.984%20317.966%20448.045C317.889%20451.404%20317.925%20454.935%20317.908%20458.306H317.707C311.968%20458.331%20307.445%20462.363%20307.522%20468.24C307.545%20470.821%20308.611%20473.283%20310.479%20475.064C312.682%20477.205%20314.982%20477.804%20317.947%20477.784C317.864%20481.281%20318.167%20486.936%20317.856%20490.217C316.612%20493.894%20313.98%20494.04%20310.643%20493.994C307.542%20493.953%20304.394%20493.957%20301.292%20493.972C301.111%20491.405%20300.531%20489.396%20298.802%20487.395C297.124%20485.446%20294.731%20484.254%20292.165%20484.09C289.557%20483.92%20286.989%20484.803%20285.035%20486.54C282.694%20488.591%20281.92%20490.968%20281.74%20493.968L271.49%20493.972C271.264%20489.072%20268.083%20484.869%20263.092%20484.161C260.492%20483.784%20257.849%20484.479%20255.77%20486.087C252.995%20488.248%20252.315%20490.656%20251.912%20493.96L241.651%20493.947C241.527%20491.452%20241.019%20489.524%20239.361%20487.548C237.634%20485.519%20235.164%20484.27%20232.507%20484.081C226.58%20483.642%20222.492%20488.298%20222.089%20493.957L211.89%20493.95C211.423%20482.185%20195.803%20480.39%20192.682%20491.495C192.483%20492.203%20192.391%20493.213%20192.294%20493.958L182.578%20493.957C182.371%20491.348%20181.945%20489.453%20180.143%20487.406C178.405%20485.421%20175.938%20484.221%20173.303%20484.081C170.706%20483.953%20168.165%20484.869%20166.248%20486.626C164.1%20488.57%20163.172%20491.122%20163.035%20493.963C159.621%20493.95%20156.206%20493.955%20152.792%20493.977C152.791%20491.886%20152.044%20489.697%20150.815%20488.007C149.289%20485.934%20147.002%20484.553%20144.457%20484.167C141.898%20483.788%20139.292%20484.444%20137.216%20485.989C134.324%20488.152%20133.644%20490.587%20133.186%20493.944C129.824%20493.99%20126.371%20493.95%20123.002%20493.946C122.746%20491.6%20122.495%20490.007%20121.036%20488.039C119.494%20485.94%20117.175%20484.547%20114.598%20484.169C112.031%20483.791%20109.42%20484.469%20107.36%20486.049C104.559%20488.201%20103.795%20490.628%20103.385%20493.947C100.034%20494.004%2096.5361%20493.955%2093.174%20493.955C93.073%20491.372%2092.387%20489.236%2090.6241%20487.271C88.8809%20485.344%2086.4401%20484.193%2083.8444%20484.073C81.2332%20483.977%2078.6886%20484.911%2076.759%20486.673C74.699%20488.578%2073.7409%20491.196%2073.6535%20493.958C56.684%20493.976%2057.8303%20495.272%2058.1364%20477.858C60.3623%20477.523%2062.0171%20477.071%2063.8051%20475.605C65.8306%20473.972%2067.1122%20471.591%2067.359%20469C67.8823%20463.32%2063.7718%20458.742%2058.1444%20458.327C58.172%20454.926%2058.1492%20451.526%2058.0765%20448.127C60.0359%20447.778%2061.8218%20447.254%2063.4507%20446.076C65.519%20444.554%2066.9037%20442.278%2067.304%20439.742C68.2241%20433.587%2064.0112%20429.349%2058.1672%20428.471C57.9852%20425.563%2058.1022%20421.204%2058.099%20418.188C60.1228%20418.004%2061.8643%20417.471%2063.5001%20416.23C65.5767%20414.674%2066.9487%20412.355%2067.3127%20409.785C67.6853%20407.192%2066.9861%20404.559%2065.3761%20402.494C63.4416%20399.986%2061.1662%20399.074%2058.1478%20398.707C57.9923%20395.602%2058.11%20391.584%2058.141%20388.419C60.3518%20388.083%2062.0207%20387.639%2063.803%20386.187C65.8225%20384.545%2067.1015%20382.163%2067.355%20379.571C67.62%20376.927%2066.7894%20374.29%2065.0571%20372.275C63.2531%20370.162%2060.8631%20369.097%2058.1298%20368.868C58.1026%20365.602%2058.0937%20362.335%2058.1029%20359.069C60.2983%20358.803%2061.8901%20358.368%2063.6774%20356.957C65.7155%20355.371%2067.0323%20353.033%2067.3326%20350.468C67.6477%20347.834%2066.8798%20345.184%2065.2052%20343.127C63.3347%20340.816%2060.9583%20339.882%2058.0979%20339.561C58.1312%20336.142%2058.1306%20332.723%2058.096%20329.305C62.7286%20328.617%2066.543%20325.952%2067.2899%20321.063C67.7155%20318.45%2067.0564%20315.776%2065.4651%20313.66C63.6119%20311.198%2061.144%20310.094%2058.1698%20309.679C58.1789%20306.265%2058.1526%20302.851%2058.091%20299.437C60.2194%20299.238%2061.9846%20298.677%2063.6842%20297.341C65.7393%20295.736%2067.0598%20293.369%2067.3458%20290.777C67.6446%20288.172%2066.8759%20285.556%2065.2148%20283.527C63.3593%20281.288%2061.0123%20280.228%2058.166%20279.966C57.9984%20277.066%2058.082%20272.621%2058.1314%20269.653C70.8597%20267.756%2070.1904%20251.641%2058.1578%20250.053C58.1756%20247%2057.5369%20238.617%2058.9331%20236.288C59.673%20235.054%2060.6947%20234.43%2062.0688%20234.099C65.2921%20233.907%2070.2943%20234.053%2073.6217%20234.053C73.8171%20236.599%2074.3965%20238.64%2076.1475%20240.591C77.8541%20242.522%2080.2644%20243.685%2082.8366%20243.819C88.7241%20244.135%2092.8807%20239.808%2093.1763%20234.062L103.367%20234.064C103.613%20236.578%20104.261%20238.75%20105.988%20240.672C107.701%20242.553%20110.085%20243.685%20112.625%20243.823C118.616%20244.118%20122.596%20239.919%20122.898%20234.09C126.339%20234.044%20129.844%20234.071%20133.29%20234.065C133.382%20236.577%20133.976%20238.58%20135.657%20240.52C137.334%20242.459%20139.717%20243.645%20142.274%20243.815C144.852%20244.021%20147.406%20243.185%20149.362%20241.492C151.621%20239.514%20152.6%20236.996%20152.795%20234.059H163.024C163.18%20239.147%20166.695%20243.291%20171.835%20243.802C174.451%20244.072%20177.063%20243.26%20179.065%20241.556C181.551%20239.451%20182.291%20237.175%20182.576%20234.071L192.327%20234.067C192.536%20236.465%20192.986%20238.285%20194.515%20240.235C196.086%20242.213%20198.376%20243.487%20200.886%20243.777C203.505%20244.109%20206.148%20243.363%20208.209%20241.71C210.739%20239.67%20211.574%20237.152%20211.929%20234.045C215.203%20234.124%20218.758%20234.058%20222.052%20234.053C222.292%20236.542%20222.886%20238.596%20224.564%20240.522C226.281%20242.494%20228.724%20243.688%20231.334%20243.829C237.196%20244.149%20241.39%20239.818%20241.603%20234.075L251.909%20234.074C252.093%20236.38%20252.546%20238.177%20253.959%20240.051C255.505%20242.091%20257.803%20243.428%20260.339%20243.763C262.967%20244.131%20265.628%20243.413%20267.715%20241.773C270.419%20239.64%20271.064%20237.298%20271.469%20234.077L281.724%20234.046C281.955%20238.961%20285.121%20243.095%20290.137%20243.762C292.72%20244.113%20295.336%20243.42%20297.407%20241.837C300.17%20239.713%20300.904%20237.324%20301.338%20234.046Z%22%20fill%3D%22black%22%2F%3E%3C%2Fsvg%3E")}body[data-view="admin"]{background:#fff;color:#000;font-family:'Anniversary Pretendard',sans-serif;--line:#ededed;--muted:#8a8a8a;--paper:#fff;--ink:#000}
body[data-view="admin"] .site-header{height:96px;margin:0 48px;border-color:#eee}
body[data-view="admin"] .brand{gap:20px}
body[data-view="admin"] .brand img{width:88px;height:67px;object-fit:contain}
body[data-view="admin"] .brand>span{font-size:9px;line-height:1.6;letter-spacing:.6px;font-weight:500;padding-left:20px;border-left:1px solid #ddd}
body[data-view="admin"] .view-switch{border:0;padding:4px;background:#f5f5f5;gap:4px;border-radius:12px}
body[data-view="admin"] .view-switch button{font-weight:500;font-size:12px;border-radius:9px;padding:11px 20px}
body[data-view="admin"] .view-switch button.active{background:#000;color:white}
.attendee-link{font-size:12px;color:#777;padding:12px 0}
body[data-view="admin"] .admin-view{padding:34px 48px 0;max-width:1800px}
body[data-view="admin"] .board-heading{margin-bottom:26px;align-items:flex-end}
body[data-view="admin"] .eyebrow{font-size:10px;letter-spacing:1.2px;font-weight:500;color:#8b8b8b}
body[data-view="admin"] .board-heading h1{font-size:34px;font-weight:500;line-height:1.3;letter-spacing:-1.3px;margin:12px 0 0}
body[data-view="admin"] .heading-actions{gap:20px}
body[data-view="admin"] .live-status{font-size:11px;color:#888}
body[data-view="admin"] .live-status>span{background:#96b76b;box-shadow:none}
body[data-view="admin"] .button.secondary{border:1px solid #e9e9e9;background:#fff;border-radius:12px;font-size:11px;font-weight:400}
body[data-view="admin"] .button.secondary:hover{background:#fafafa}
body[data-view="admin"] .admin-layout{grid-template-columns:minmax(0,1fr) 248px;gap:32px}
body[data-view="admin"] .board-shell{border:1px solid #eee;background:#fcfcfc;border-radius:24px;box-shadow:none}
body[data-view="admin"] .board-topline{padding:19px 24px 0}
body[data-view="admin"] .board-topline>span{font-size:9px;letter-spacing:.8px;color:#a1a1a1;font-weight:400}
body[data-view="admin"] .icon-button{color:#aaa;gap:6px;font-size:20px}
body[data-view="admin"] .icon-button span{font-size:10px}
body[data-view="admin"] .board-stage{background:none;height:clamp(400px,calc(100dvh - 348px),720px);min-height:400px;max-height:720px;aspect-ratio:auto}
body[data-view="admin"] .board-stage canvas{opacity:.018}
body[data-view="admin"] .board-bottomline{padding:0 24px 20px;font-size:11px;color:#888}
body[data-view="admin"] .board-bottomline>span{font-size:9px;color:#aaa}
body[data-view="admin"] .board-note{padding:0;background:transparent;box-shadow:none;cursor:pointer;touch-action:manipulation;overflow:visible;filter:drop-shadow(0 1px 0 #0000000a);transition:filter .18s,scale .18s;outline-offset:0}
.board-note:before{content:'';position:absolute;inset:0;background:var(--note-color);-webkit-mask:var(--bubble-mask) center/contain no-repeat;mask:var(--bubble-mask) center/contain no-repeat;pointer-events:none}
.board-note.stamp:before{-webkit-mask-image:var(--stamp-mask);mask-image:var(--stamp-mask)}
body[data-view="admin"] .board-note:after{display:none}
body[data-view="admin"] .board-note.stamp{clip-path:none;border-radius:0}
body[data-view="admin"] .board-note:hover{box-shadow:none;filter:drop-shadow(0 4px 4px #0002);scale:1.13;z-index:5}
body[data-view="admin"] .board-note .tiny-message{position:absolute;left:22%;top:40%;width:56%;height:24%;max-height:24%;font-size:calc(var(--note-size)*.094);line-height:1.35;font-weight:400;text-align:center;-webkit-line-clamp:2;pointer-events:none}
body[data-view="admin"] .board-note.stamp .tiny-message{left:19%;top:25%;width:62%;height:42%;max-height:42%;-webkit-line-clamp:4}
body[data-view="admin"] .board-note .tiny-author{display:none}
body[data-view="admin"] .board-sidebar{padding:0}
body[data-view="admin"] .total-section{padding:8px 0 24px;border-bottom:1px solid #eee}
body[data-view="admin"] .total-section .eyebrow{letter-spacing:0;font-size:12px;color:#777}
body[data-view="admin"] .total-number{font-size:62px;line-height:1.1;letter-spacing:-2.5px;font-weight:500;margin:12px 0 0;font-variant-numeric:tabular-nums}
body[data-view="admin"] .total-number small{font-size:12px;color:#aaa;margin-left:8px}
body[data-view="admin"] .shape-legend{margin-top:22px;gap:12px}
body[data-view="admin"] .shape-legend>div{font-size:12px;color:#777;gap:10px}
body[data-view="admin"] .shape-legend b{font-size:12px;font-weight:500;color:#000}
.legend-shape.bubble,.legend-shape.stamp{width:24px;height:24px;border:0;transform:none;background:var(--note-color,#AAD6FF);-webkit-mask:var(--bubble-mask) center/contain no-repeat;mask:var(--bubble-mask) center/contain no-repeat;clip-path:none}
.legend-shape.stamp{background:var(--note-color,#F6E7DC);-webkit-mask-image:var(--stamp-mask);mask-image:var(--stamp-mask)}
body[data-view="admin"] .latest-section{padding-top:23px}
body[data-view="admin"] .latest-section h2{display:flex;justify-content:space-between;font-weight:500;font-size:13px;margin-bottom:8px}
body[data-view="admin"] .latest-section h2 span{color:#aaa;font-size:16px}
body[data-view="admin"] .latest-item{padding:12px 0;border-bottom:1px solid #eee;width:100%;text-align:left;display:block}
body[data-view="admin"] .latest-item:nth-child(3){display:block}
body[data-view="admin"] .latest-meta{display:flex;align-items:center;gap:6px;font-size:9px;color:#999}
body[data-view="admin"] .latest-meta .legend-shape{width:19px;height:19px}
body[data-view="admin"] .latest-item :is(p,.latest-message){font-size:12px;line-height:1.6;font-weight:400;margin:5px 0 7px;color:#333;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
body[data-view="admin"] .latest-author{font-size:10px;color:#aaa}
body[data-view="admin"] .prototype-controls{margin:20px 0 0}
.prototype-controls summary{font-size:10px;cursor:pointer;color:#aaa;padding:7px 0}
body[data-view="admin"] .demo-caption{font-size:9px;color:#999;display:block;margin:10px 0}
body[data-view="admin"] .prototype-controls .text-button{font-size:10px;color:#777;margin-top:8px}
body[data-view="admin"] .admin-footer{height:64px;margin-top:8px;border:0;display:flex;align-items:center;justify-content:space-between;color:#aaa}
body[data-view="admin"] .admin-footer>span{font-size:9px;letter-spacing:.3px}
body[data-view="admin"] .admin-footer p{font-size:11px;color:#999}
body[data-view="admin"] .admin-layout:fullscreen,body[data-view="admin"] .admin-layout.expanded{padding:24px;background:#fff;display:block}
body[data-view="admin"] .admin-layout:fullscreen .board-shell,body[data-view="admin"] .admin-layout.expanded .board-shell{height:calc(100dvh - 48px);display:flex;flex-direction:column}
body[data-view="admin"] .admin-layout:fullscreen .board-stage,body[data-view="admin"] .admin-layout.expanded .board-stage{height:auto;flex:1;min-height:0;max-height:none}
body[data-view="admin"] .admin-layout:fullscreen .board-sidebar,body[data-view="admin"] .admin-layout.expanded .board-sidebar{display:none}
.note-reader{font-family:'Anniversary Pretendard',sans-serif;color:#000}
.note-reader::backdrop{background:#ffffffb8;backdrop-filter:blur(12px)}
.reader-wrap{padding:26px;gap:0}
.reader-close{position:absolute;right:40px;top:26px;margin:0;color:#777;font-size:12px}
.reader-topic{font-size:14px;font-weight:500;opacity:1;margin-bottom:-10px;z-index:1}
.reader-paper{width:min(540px,calc(100vw - 60px));height:min(540px,calc(100vw - 60px));min-height:0;padding:0;background:none;box-shadow:none;display:block;isolation:isolate}
.reader-paper:before{content:'';position:absolute;inset:0;background:var(--note-color);-webkit-mask:var(--bubble-mask) center/contain no-repeat;mask:var(--bubble-mask) center/contain no-repeat;z-index:-1}
.reader-paper.stamp:before{-webkit-mask-image:var(--stamp-mask);mask-image:var(--stamp-mask)}
.reader-message{position:absolute;left:20%;top:39%;width:60%;height:25%;padding:0;font-size:18px;line-height:1.7;font-weight:400;letter-spacing:-.4px;overflow:auto;text-align:center;align-content:center;scrollbar-width:thin;scrollbar-color:#0002 transparent;overscroll-behavior:contain}
.reader-paper.stamp .reader-message{top:25%;height:50%;left:20%;width:60%}
.reader-author{margin-top:-4px;justify-content:center;gap:10px;font-size:14px}
.reader-author b{font-weight:500}.reader-author span{font-size:12px;color:#888;opacity:1}.reader-date{font-size:10px;color:#aaa;opacity:1;margin-top:10px}.reader-hint{color:#aaa;font-size:11px;margin-top:24px}
/* Draw results use the same lifted note as a regular board selection. */
.board-draw-button{height:44px;padding:0 24px;border-radius:12px;background:#000;color:#fff;font-size:12px;font-weight:500;white-space:nowrap}
.board-draw-button:hover{background:#222}.board-draw-button:disabled{opacity:.3;cursor:default}
.board-draw-info{padding:16px 0;border-bottom:1px solid #eee;color:#999;font-size:10px}
.draw-history{margin-top:12px;max-height:95px;overflow:auto}.draw-history:empty{display:none}.draw-history p{font-size:10px;color:#aaa;margin-bottom:6px}.draw-history span{display:inline-block;background:#E9EFD5;border-radius:6px;font-size:10px;padding:5px 9px;margin:2px}
.reader-raffle{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:18px}.reader-raffle>span{font-size:12px;color:#777}.reader-raffle>strong{font-size:46px;font-weight:600;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-1px}
.drawn-note .reader-paper{width:min(440px,calc(100vw - 60px),calc(100dvh - 260px));height:min(440px,calc(100vw - 60px),calc(100dvh - 260px))}
.drawn-note .reader-message{font-size:16px}.drawn-note .reader-hint{margin-top:18px}
@media(max-width:1100px){body[data-view="admin"] .site-header{margin:0 28px}body[data-view="admin"] .admin-view{padding:28px 28px 0}body[data-view="admin"] .admin-layout{grid-template-columns:minmax(0,1fr) 220px;gap:24px}body[data-view="admin"] .board-heading h1{font-size:30px}body[data-view="admin"] .live-status{display:none}}
@media(max-width:800px){body[data-view="admin"] .site-header{margin:0 20px;height:80px}body[data-view="admin"] .brand img{width:65px;height:50px}body[data-view="admin"] .brand>span,body[data-view="admin"] .attendee-link{display:none}body[data-view="admin"] .view-switch button{padding:10px 13px;font-size:11px}body[data-view="admin"] .admin-view{padding:26px 20px 0}body[data-view="admin"] .board-heading{display:flex;align-items:center}body[data-view="admin"] .board-heading h1{font-size:26px}body[data-view="admin"] .heading-actions{margin:0}body[data-view="admin"] .eyebrow{font-size:8px}body[data-view="admin"] .admin-layout{display:block}body[data-view="admin"] .board-stage{height:410px;min-height:0}body[data-view="admin"] .board-topline{padding:15px 16px 0}body[data-view="admin"] .board-topline>span{font-size:7px}body[data-view="admin"] .board-bottomline{padding:0 16px 16px;font-size:9px}body[data-view="admin"] .board-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}body[data-view="admin"] .total-number{font-size:56px}body[data-view="admin"] .total-section{border:0}body[data-view="admin"] .latest-section{padding:8px 0 0}body[data-view="admin"] .latest-item:nth-child(3){display:none}body[data-view="admin"] .prototype-controls{grid-column:1/-1;display:block;margin:0}body[data-view="admin"] .admin-footer p{display:none}body[data-view="admin"] .admin-footer span:last-child{display:block}.reader-message{font-size:14px}.reader-close{top:12px;right:20px}.reader-author{margin-top:8px}}

body[data-view="admin"] .site-header{display:flex!important}

@media(max-width:800px){body[data-view="admin"] .heading-actions{gap:8px}.board-draw-button{padding:0 13px}.board-draw-info{grid-column:1/-1;grid-row:2}.drawn-note .reader-message{font-size:14px}}

/* Figma 770:286 — an uncluttered, full-screen message board. */
body[data-view="admin"]{background:#f5faff;overflow:hidden}
body[data-view="admin"] .site-header{display:none!important}
body[data-view="admin"] .figma-board{position:relative;width:100vw;height:100dvh;max-width:none;margin:0;padding:0;overflow:hidden;background:radial-gradient(ellipse 54% 64% at 51% 56%,#c1ddfc 0%,#d6eaff 47%,#e9f4ff 76%,#fff 112%);container-type:size}
body[data-view="admin"] .figma-board .admin-layout{position:absolute;inset:0;display:block;padding:0}
.board-branding{position:absolute;inset:0;z-index:3;pointer-events:none}
.anniversary-logo{position:absolute;left:3.333333%;top:4.6875%;width:8.2%;display:flex;flex-direction:column;align-items:center;pointer-events:auto}
.anniversary-logo img{width:100%;height:auto;display:block}
.anniversary-logo>span{font-size:clamp(6px,.66cqw,11px);line-height:1.1;font-weight:600;text-align:center;letter-spacing:-.1px;margin-top:-3%}
.bank-wordmark{position:absolute;left:50%;top:4.6875%;transform:translateX(-50%);display:flex;align-items:center;gap:.2cqw;font-size:1.39cqw;font-weight:600;letter-spacing:-.04em;white-space:nowrap}
.bank-wordmark svg{width:1.65cqw;height:1.65cqw}
.board-invitation{position:absolute;right:3.333333%;top:4.6875%;font-size:1.11cqw;line-height:1.5;letter-spacing:-.035em;font-weight:400}
body[data-view="admin"] .figma-board .board-shell{position:absolute;left:18%;top:14%;width:64%;height:69%;border:0;border-radius:0;background:none;box-shadow:none;overflow:visible}
body[data-view="admin"] .figma-board .board-stage{width:100%;height:100%;min-height:0;max-height:none;overflow:visible;background:none}
body[data-view="admin"] .figma-board .board-stage canvas{opacity:.04;filter:blur(.3px)}
body[data-view="admin"] .figma-board .board-note{filter:none}
body[data-view="admin"] .figma-board .board-note:before{filter:drop-shadow(0 0 1.2px white) drop-shadow(0 0 1.2px white)}
body[data-view="admin"] .figma-board .board-note:hover{filter:drop-shadow(0 5px 6px #46638420)}
body[data-view="admin"] .figma-board .board-note .tiny-message{font-size:calc(var(--note-size)*.105);line-height:1.5;height:26%;max-height:26%}
body[data-view="admin"] .figma-board .board-note.stamp .tiny-message{height:43%;max-height:43%;top:24%}
.board-bottom-controls{position:absolute;left:3.333333%;bottom:4.6875%;display:flex;gap:1.11111cqw;align-items:center;z-index:5}
.message-count{height:6.11cqw;min-height:44px;padding:0 2.1cqw;display:flex;align-items:center;gap:.9cqw;background:#ffffffed;border-radius:100px;font-size:2.22cqw;font-weight:400;font-variant-numeric:tabular-nums}
.message-count>span:first-child{font-size:2.22cqw}
.draw-icon{width:6.11cqw;height:6.11cqw;min-width:44px;min-height:44px;border-radius:50%;background:#ffffffed;display:grid;place-items:center;padding:0;font-size:2.22cqw;transition:background .2s,transform .2s}
.draw-icon:hover{background:#fff;transform:translateY(-2px)}.draw-icon:disabled{opacity:.45;cursor:default;transform:none}
.recent-messages{position:absolute;right:3.333333%;bottom:4.6875%;width:21.527778%;padding:1.4cqw 1.35cqw;border-radius:1.4cqw;background:#ffffffed;z-index:4;max-height:31%;overflow:hidden}
body[data-view="admin"] .figma-board .latest-item{border:0;padding:0;margin:0 0 1.2cqw;display:block!important;width:100%;background:transparent;text-align:left}
body[data-view="admin"] .figma-board .latest-item:last-child{margin-bottom:0}
body[data-view="admin"] .figma-board .latest-meta{font-size:.66cqw;line-height:1.4;color:#a4a8ac;gap:0;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body[data-view="admin"] .figma-board .latest-item :is(p,.latest-message){font-size:.84cqw;font-weight:400;line-height:1.5;color:#000;margin:.25cqw 0 0;letter-spacing:-.035em;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
body[data-view="admin"] .figma-board .latest-author{display:none}
body[data-view="admin"] .figma-board .admin-layout:fullscreen,body[data-view="admin"] .figma-board .admin-layout.expanded{background:transparent;padding:0}
body[data-view="admin"] .figma-board .admin-layout:fullscreen .board-shell{height:69%;display:block}
body[data-view="admin"] .figma-board .admin-layout:fullscreen .board-stage{height:100%}
.note-reader::backdrop{background:#f0f8ffb0}
@media(max-aspect-ratio:1/1){body[data-view="admin"] .figma-board .board-shell{left:10%;width:80%;top:19%;height:57%}.anniversary-logo{width:12%}.bank-wordmark{font-size:2cqw}.bank-wordmark svg{width:2.4cqw;height:2.4cqw}.board-invitation{font-size:1.6cqw}.message-count,.draw-icon{height:8cqw;font-size:3cqw}.draw-icon{width:8cqw}.message-count>span:first-child{font-size:3cqw}.recent-messages{width:30%;border-radius:16px;padding:2cqw}.recent-messages .latest-meta{font-size:1cqw!important}.recent-messages .latest-item :is(p,.latest-message){font-size:1.2cqw!important}}

body[data-view="admin"] .figma-board .board-note{filter:drop-shadow(0 0 1px #fff) drop-shadow(0 0 1px #fff)}
body[data-view="admin"] .figma-board .board-note:before{filter:none}
body[data-view="admin"] .figma-board .board-note:hover{filter:drop-shadow(0 0 1px #fff) drop-shadow(0 0 1px #fff) drop-shadow(0 5px 6px #46638420)}
.recent-messages{min-height:27.5cqh}

/* Figma 770:286 revised: exact 1920 x 1080 composition, uniformly contained. */
body[data-view="admin"]{overflow:auto}
body[data-view="admin"] .figma-board{width:100%;min-width:1024px;height:100dvh;min-height:576px;--design-scale:1;container-type:size}
body[data-view="admin"] .figma-board .admin-layout{width:calc(1920px * var(--design-scale));height:calc(1080px * var(--design-scale));inset:auto;left:50%;top:50%;transform:translate(-50%,-50%);display:block}
body[data-view="admin"] .figma-board .board-shell{left:18.4776%;top:16.02037%;width:63.47785%;height:72.22778%;display:block;overflow:visible}
body[data-view="admin"] .figma-board .board-stage{width:100%;height:100%;min-width:0;min-height:0;max-height:none;max-width:none;aspect-ratio:auto}
body[data-view="admin"] .figma-board .board-stage canvas{opacity:.35;filter:none}
.anniversary-logo{left:2.95156%;top:4.07407%;width:calc(160px * var(--design-scale))}
.bank-wordmark{left:46.04167%;right:auto;top:4.07407%;transform:none;display:block;width:calc(152.12px * var(--design-scale));height:calc(32px * var(--design-scale));font-size:0}
.bank-wordmark img{display:block;width:100%;height:100%;object-fit:contain}
.board-invitation{left:85.9375%;right:auto;top:3.33333%;width:10.72917%;font-size:calc(21px * var(--design-scale));line-height:1.5;letter-spacing:-.02em}
.board-bottom-controls{left:3.33333%;bottom:5.40741%;gap:calc(19.6px * var(--design-scale))}
.message-count{width:calc(196.8px * var(--design-scale));height:calc(105.6px * var(--design-scale));min-height:0;padding:0;justify-content:center;gap:calc(16px * var(--design-scale));font-size:calc(43.2px * var(--design-scale));border-radius:999px;background:white}
.message-count>span:first-child{font-size:calc(43.2px * var(--design-scale))}
.draw-icon{width:calc(105.6px * var(--design-scale));height:calc(105.6px * var(--design-scale));min-width:0;min-height:0;font-size:calc(43.2px * var(--design-scale));background:white}
.recent-messages{left:78.95833%;right:auto;top:65.18519%;bottom:auto;width:17.70833%;height:28.88889%;min-height:0;max-height:none;padding:calc(20px * var(--design-scale));border-radius:calc(20px * var(--design-scale));overflow:hidden;display:flex;flex-direction:column;background:white}
#latestList{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#0002 transparent;overflow-anchor:none;scroll-behavior:smooth;padding:0 3px 0 0}
body[data-view="admin"] .figma-board .latest-item{margin:0 0 calc(16px * var(--design-scale));padding:0;display:block!important;white-space:normal}
body[data-view="admin"] .figma-board .latest-meta{font-size:calc(10px * var(--design-scale))!important;line-height:1.4;white-space:normal;color:#969ba0}
body[data-view="admin"] .figma-board .latest-item :is(p,.latest-message){font-size:calc(12px * var(--design-scale))!important;line-height:1.55;margin:calc(4px * var(--design-scale)) 0;display:block;overflow:visible;-webkit-line-clamp:unset;word-break:normal;overflow-wrap:anywhere;white-space:pre-wrap}
body[data-view="admin"] .figma-board .latest-author{display:block;font-size:calc(9px * var(--design-scale));color:#b0b4b8}
.feed-jump{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);padding:8px 14px;border-radius:20px;background:#000;color:white;font-size:11px;box-shadow:0 2px 10px #0002;white-space:nowrap}
body[data-view="admin"] .figma-board .board-note .tiny-message{display:flex;align-items:center;justify-content:center;left:25%;width:50%;top:36%;height:30%;max-height:none;-webkit-line-clamp:unset;overflow:visible;font-size:inherit;line-height:1.18}
body[data-view="admin"] .figma-board .board-note.stamp .tiny-message{left:19%;width:62%;top:20%;height:60%;max-height:none;-webkit-line-clamp:unset}
.message-copy{display:block;width:100%;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;line-height:1.18;letter-spacing:0;font-weight:400}
body[data-view="admin"] .board-note:hover{scale:1;z-index:5}
.draw-round-dialog{border:0;border-radius:24px;padding:32px;max-width:440px;background:#f5faff;color:#111;box-shadow:0 12px 80px #16335a20}
.draw-round-dialog::backdrop{background:#edf6ffb0;backdrop-filter:blur(8px)}
.draw-round-dialog h2{font-size:20px;margin-bottom:14px;font-weight:500}
.draw-round-dialog p{font-size:14px;line-height:1.8;color:#686f76}
.draw-round-dialog>div{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}
.draw-round-dialog button{font-size:14px;padding:12px 18px;border-radius:24px;background:#e4eef8}
.draw-round-dialog #startDrawRound{background:#111;color:white}
.note-reader::backdrop{transition:background 520ms ease-in-out,backdrop-filter 520ms ease-in-out}
.note-reader.closing::backdrop{background:transparent;backdrop-filter:blur(0)}
.reader-close{width:44px;height:44px;justify-content:center;color:#555;right:32px;top:24px}
.reader-close span{font-size:30px;line-height:1}
.reader-author{margin-top:4px}
.reader-raffle{margin-bottom:8px}
@media(prefers-reduced-motion:reduce){.note-reader::backdrop{transition:none}}

/* A single pastel burst behind the selected raffle note. */
.reader-wrap{isolation:isolate}
.winner-celebration{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:-1}
.winner-glow{position:absolute;border-radius:50%;background:radial-gradient(circle,#fff9 0%,color-mix(in srgb,var(--celebration-color) 90%,white) 32%,color-mix(in srgb,var(--celebration-color) 65%,transparent) 48%,transparent 72%);filter:blur(14px);will-change:transform,opacity}
.winner-spark{position:absolute;border-radius:3px;background:color-mix(in srgb,var(--celebration-color) 85%,#485676);box-shadow:0 0 8px color-mix(in srgb,var(--celebration-color) 70%,transparent);will-change:transform,opacity}
.reader-close{z-index:3}
@media(prefers-reduced-motion:reduce){.winner-celebration{display:none}}

.note-reader.drawn-note::backdrop{background:rgb(0 0 0 / .80);backdrop-filter:blur(8px)}
.note-reader.drawn-note.closing::backdrop{background:transparent;backdrop-filter:blur(0)}
.drawn-note .reader-raffle,.drawn-note .reader-author{color:#fff}
.drawn-note .reader-author span{color:#ffffffb3}
.drawn-note .reader-close{color:#ffffffe0}
.winner-glow{background:radial-gradient(circle,color-mix(in srgb,var(--celebration-color) 70%,white) 0%,color-mix(in srgb,var(--celebration-color) 72%,transparent) 25%,color-mix(in srgb,var(--celebration-accent) 48%,transparent) 46%,transparent 70%)}
.winner-spark{background:var(--spark-color);box-shadow:0 0 10px color-mix(in srgb,var(--spark-color) 65%,transparent)}
.winner-spark.star{clip-path:polygon(50% 0,62% 35%,100% 50%,62% 65%,50% 100%,38% 65%,0 50%,38% 35%);border-radius:0}
.winner-spark.dot{border-radius:50%}

/* Checked notes stay in place while the rest of the board fades into black. */
.checked-board-dim{position:absolute;inset:auto;left:50%;top:50%;width:max(100vw,1024px);height:max(100dvh,576px);transform:translate(-50%,-50%);z-index:2;background:rgb(0 0 0 / .8);opacity:0;visibility:hidden;pointer-events:none;transition:opacity 350ms ease,visibility 350ms}
.checked-mode .checked-board-dim{opacity:1;visibility:visible}
body[data-view="admin"] .figma-board.checked-mode .board-shell{z-index:3}
.checked-mode .board-branding,.checked-mode .recent-messages{z-index:1}
body[data-view="admin"] .figma-board.checked-mode .board-stage canvas{opacity:.07}
body[data-view="admin"] .figma-board .board-note{transition:opacity 350ms ease,filter 350ms ease}
body[data-view="admin"] .figma-board.checked-mode .board-note:not(.checked-note){opacity:1;filter:brightness(.3)}
body[data-view="admin"] .figma-board.checked-mode .board-note.checked-note{filter:drop-shadow(0 2px 8px #0003)}
body[data-view="admin"] .figma-board .board-note.lifted{opacity:0!important}
.checked-view-button[aria-pressed="true"]{background:#d9edff;box-shadow:0 0 0 2px #fff8}
.reader-check{position:absolute;right:84px;top:24px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;padding:10px;background:transparent;border:1px solid #5555;color:#555;z-index:3;transition:background .2s,color .2s}
.reader-check svg{width:24px;height:24px}
.reader-check[aria-pressed="true"]{color:white;background:#222;border-color:#222}
.drawn-note .reader-check{color:#ffffffe0;border-color:#ffffff70}
.drawn-note .reader-check[aria-pressed="true"]{color:#222;background:white;border-color:white}
@media(prefers-reduced-motion:reduce){.checked-board-dim,body[data-view="admin"] .figma-board .board-note,.reader-check{transition:none}}

.checked-mode .message-count,.checked-mode #drawButton{opacity:.18;filter:brightness(.45);pointer-events:none}
.checked-mode #drawButton:disabled{opacity:.18;transform:none}
.checked-mode .board-note:disabled{pointer-events:none}
.note-reader.checked-reader::backdrop{background:transparent;backdrop-filter:none}
.checked-reader .reader-author,.checked-reader .reader-close{color:#ffffffe0}
.checked-reader .reader-author span{color:#ffffffb3}
.checked-reader .reader-check{color:#ffffffe0;border-color:#ffffff70}
.checked-reader .reader-check[aria-pressed="true"]{color:#222;background:white;border-color:white}

body[data-view="admin"] .figma-board .latest-item,body[data-view="admin"] .figma-board .latest-item:hover{cursor:default;background:transparent;transform:none;box-shadow:none}

/* The draw unfolds on the board before the winner is lifted. */
body[data-view="admin"] .figma-board .board-shell{transform-origin:50% 50%;transition:transform 850ms cubic-bezier(.22,.75,.2,1)}
.raffle-board-active .checked-board-dim{opacity:1;visibility:visible}
body[data-view="admin"] .figma-board.raffle-board-active .board-shell{z-index:3;transform:scale(var(--board-user-scale,1));transition:none}
.raffle-board-active .board-branding,.raffle-board-active .recent-messages{z-index:1;pointer-events:none}
.raffle-board-active .board-bottom-controls{pointer-events:none}
body[data-view="admin"] .figma-board.raffle-board-active .board-stage canvas{opacity:.10}
body[data-view="admin"] .figma-board.raffle-board-active .board-note{opacity:1;filter:brightness(.3);transition:none;pointer-events:none}
body[data-view="admin"] .figma-board.raffle-board-active .board-note.raffle-highlight{opacity:1;filter:drop-shadow(0 0 4px #fff9) drop-shadow(0 0 12px var(--note-color));z-index:6}
.note-reader.drawn-note::backdrop{background:rgb(0 0 0 / .80);backdrop-filter:blur(8px)}
body:has(.raffle-board-active) .note-reader.drawn-note::backdrop{background:transparent;backdrop-filter:blur(5px)}
@media(prefers-reduced-motion:reduce){body[data-view="admin"] .figma-board .board-shell{transition:none}}

.raffle-board-active .board-branding a{pointer-events:none}

/* Anchor the surrounding UI to the window, independently of board proportions. */
body[data-view="admin"] .figma-board{--edge-x:clamp(24px,3.33333vw,64px);--header-edge:clamp(20px,4.07407vh,44px);--footer-edge:clamp(20px,5.40741vh,58.4px)}
body[data-view="admin"] .figma-board .admin-layout{width:100%;height:100%;left:0;top:0;inset:0;transform:none}
body[data-view="admin"] .figma-board .board-shell{left:50%;top:50%;width:calc(1218.77px * var(--design-scale));height:calc(780.054px * var(--design-scale));margin-left:calc(-609.385px * var(--design-scale));margin-top:calc(-366.985px * var(--design-scale));transform:scale(var(--board-user-scale,1));transition:transform 220ms ease}
body[data-view="admin"] .figma-board.raffle-board-active .board-shell{z-index:3;transform:scale(var(--board-user-scale,1));transition:none}
.anniversary-logo{left:var(--edge-x);top:var(--header-edge)}
.bank-wordmark{left:50%;top:var(--header-edge);transform:translateX(-50%)}
.board-invitation{left:auto;right:var(--edge-x);top:var(--header-edge);width:auto}
.board-bottom-controls{left:var(--edge-x);bottom:var(--footer-edge)}
.recent-messages{left:auto;right:var(--edge-x);top:auto;bottom:var(--footer-edge);width:calc(340px * var(--design-scale));height:calc(312px * var(--design-scale))}
.board-zoom-controls{position:absolute;left:50%;bottom:var(--footer-edge);transform:translateX(-50%);display:flex;align-items:center;gap:12px;padding:12px 18px;border-radius:999px;background:#ffffffed;z-index:5;color:#333;font-size:12px;white-space:nowrap}
.board-zoom-controls label{font-size:11px;color:#737b84}
.board-zoom-controls output{font-variant-numeric:tabular-nums;min-width:34px;text-align:right;font-size:11px}
.board-zoom-controls input{width:clamp(90px,10vw,192px);padding:0;accent-color:#343b43;cursor:pointer;height:20px;margin:0;box-shadow:none;background:transparent}
.board-zoom-controls input:disabled{cursor:default}
.raffle-board-active .board-zoom-controls{opacity:.15;pointer-events:none}
@media(prefers-reduced-motion:reduce){body[data-view="admin"] .figma-board .board-shell,body[data-view="admin"] .figma-board.raffle-board-active .board-shell{transition:none}}
body[data-view="admin"] .figma-board{min-width:0;min-height:0}
@media(max-width:1000px){.board-zoom-controls{gap:8px;padding:10px 12px}.board-zoom-controls input{width:100px}.board-zoom-controls label{font-size:10px}}
@media(max-width:700px){.board-zoom-controls{bottom:calc(var(--footer-edge) + 64px)}.board-zoom-controls input{width:100px}.board-zoom-controls{font-size:10px}}
.board-zoom-controls input:focus-visible{outline:2px solid #74849380;outline-offset:3px;border-radius:999px}

/* Figma Rectangle 2862406 + Ellipse 22008: subtle 158 × 8 track and white 20px handle. */
.board-zoom-controls{width:max(104px,calc(158px * var(--design-scale)));height:44px;padding:0;gap:0;background:transparent;border-radius:0;box-shadow:none}
.board-zoom-controls label,.board-zoom-controls output{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.board-zoom-controls input{appearance:none;-webkit-appearance:none;display:block;width:100%;height:44px;border:0;border-radius:0;background:transparent;outline:none;accent-color:auto}
.board-zoom-controls input::-webkit-slider-runnable-track{height:max(4px,calc(8px * var(--design-scale)));background:rgb(190 224 255 / .5);border-radius:999px}
.board-zoom-controls input::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:max(12px,calc(20px * var(--design-scale)));height:max(12px,calc(20px * var(--design-scale)));margin-top:calc((max(4px,8px * var(--design-scale)) - max(12px,20px * var(--design-scale))) / 2);border:0;border-radius:50%;background:white;box-shadow:none}
.board-zoom-controls input::-moz-range-track{height:max(4px,calc(8px * var(--design-scale)));background:rgb(190 224 255 / .5);border-radius:999px;border:0}
.board-zoom-controls input::-moz-range-thumb{width:max(12px,calc(20px * var(--design-scale)));height:max(12px,calc(20px * var(--design-scale)));border:0;border-radius:50%;background:white;box-shadow:none}
.board-zoom-controls input:focus-visible{outline:1px solid #8bb9dd90;outline-offset:3px;border-radius:999px}
.raffle-board-active .message-count,.raffle-board-active #drawButton,.raffle-board-active #checkedViewButton,.raffle-board-active .board-zoom-controls{opacity:.18;filter:brightness(.45);pointer-events:none}

.raffle-board-active #drawButton,.raffle-board-active #drawButton:disabled{opacity:1;filter:none;pointer-events:none}

body[data-view="admin"] .figma-board .board-note:not(:hover):not(.raffle-highlight):not(:focus-visible){z-index:var(--paper-depth,1)}
body[data-view="admin"] .figma-board .board-note:focus-visible{z-index:7}

/* A centered message box leaves paper edges free to overlap without hiding text. */
body[data-view="admin"] .figma-board .board-note.stamp .tiny-message{left:25%;width:50%;top:30%;height:40%;max-height:none}

body[data-view="admin"] .figma-board .board-note .tiny-message{left:28%;width:44%;top:38%;height:26%}
body[data-view="admin"] .figma-board .board-note.stamp .tiny-message{left:28%;width:44%;top:33%;height:34%}

/* Figma: opaque white outside stroke, 2.98px on the approximately 99px reference paper. */
body[data-view="admin"] .figma-board .board-note{filter:none;transition:opacity 350ms ease,filter 200ms ease,scale 200ms ease}
body[data-view="admin"] .figma-board .board-note:before{display:none}
.note-paper{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.note-paper path{fill:var(--note-color);stroke:#fff;stroke-width:19.5;stroke-linejoin:round;paint-order:stroke fill}
.board-note.stamp .note-paper path{stroke-width:15.72}
body[data-view="admin"] .figma-board .board-note:hover{scale:1;filter:none}
@media(hover:hover){
 body[data-view="admin"] .figma-board:not(.raffle-board-active) .board-note:not(:disabled):hover{scale:1.05;filter:drop-shadow(0 0 5px #ffffff80) drop-shadow(0 3px 5px #46638426);z-index:5}
 body[data-view="admin"] .figma-board.checked-mode .board-note:not(.checked-note):hover{scale:1;filter:brightness(.3)}
}
body[data-view="admin"] .figma-board.checked-mode .board-note:not(.checked-note){filter:brightness(.3)}
body[data-view="admin"] .figma-board.raffle-board-active .board-note.raffle-highlight{filter:drop-shadow(0 0 4px #fff9) drop-shadow(0 0 12px var(--note-color))}
@media(prefers-reduced-motion:reduce){body[data-view="admin"] .figma-board .board-note{transition:opacity 200ms ease,filter 200ms ease}}
/* Access to the shared board requires an administrator login. */
.admin-login{min-height:100dvh;display:grid;place-items:center;background:#fff;padding:24px}
.admin-login[hidden],.cloud-status[hidden]{display:none!important}
.admin-login-card{width:min(100%,340px);display:flex;flex-direction:column;gap:12px}
.admin-login-card>img{width:180px;align-self:center;margin-bottom:24px}
.admin-login-card h1{font-size:20px;font-weight:500;text-align:center;margin:0 0 16px}
.admin-login-card label{font-size:13px;color:#65788b}
.admin-login-card input{width:100%;border:1px solid #dae3ec;border-radius:10px;padding:12px;font-size:16px;background:#fff;color:#273b51}
.admin-login-card button{margin-top:12px;padding:14px;background:#aad6ff;border-radius:10px;color:#273b51;font-size:15px}
.admin-login-card button:disabled{opacity:.5}
#loginError{font-size:13px;color:#b54444}
.cloud-status{position:fixed;top:12px;left:50%;transform:translateX(-50%);z-index:9;font-size:12px;color:#62768b;background:#ffffffdd;border-radius:12px;padding:8px 12px}

/* Team anniversary topic: editable text, preserving the original stamp artwork. */
.landing-thanks-title{position:absolute;left:51.3%;top:49.5%;transform:translate(-50%,-50%) rotate(10deg);font-family:"Anniversary Pretendard",sans-serif;font-size:5.866667cqw;font-weight:500;line-height:1.5;letter-spacing:-.02em;white-space:nowrap;color:#000;pointer-events:none;text-align:center}
.guide-team-heading{position:absolute;left:6.666667%;top:9.809264%;font-family:"Anniversary Pretendard",sans-serif;font-size:5.866667cqw;font-weight:400;line-height:1.5;letter-spacing:-.02em;color:#000;text-align:left}

#topicStep{container-type:inline-size}

/* Fit the original mobile composition to both screen dimensions. */
body[data-view="attendee"]{text-size-adjust:100%;-webkit-text-size-adjust:100%}
#guideMessage,#guideTextMeasure{font-family:"Anniversary Pretendard",sans-serif}
@media(max-width:800px){
 body[data-view="attendee"] .attendee-view{padding:max(8px,env(safe-area-inset-top)) max(0px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(0px,env(safe-area-inset-left));min-height:100svh;align-content:center}
 body[data-view="attendee"] .attendee-surface{width:100%;max-width:430px;flex-shrink:0}
 #guideMessage,#guideTextMeasure{font-size:max(16px,3.733333cqw)}
 .guide-team-heading{font-size:min(22px,5.866667cqw);white-space:nowrap}
}

@media(max-width:800px){
 .guide-text-box{top:33.60218%;height:20%}
 body[data-topic="thanks"] .guide-text-box{top:33.057221%}
 #guideMessage::placeholder,#guideTextMeasure.is-placeholder{font-size:max(12px,3.733333cqw)}
}

/* Latest attendee coordinates from the revised Figma frames. */
.landing-highfive{top:8.991826%}
.landing-thanks{top:32.152589%}
.guide-team-heading,#writeStep .identity-heading,#successStep .completion-heading{top:7.629428%}
.guide-note-art{top:20.027248%}
.guide-text-box{top:36.239782%}
body[data-topic="thanks"] .guide-text-box{top:35.694823%}
.guide-colors{top:66.485014%}
body[data-topic="thanks"] .guide-colors{top:67.029973%}
.guide-next,#writeStep #submitButton{top:79.291553%}
.completion-number{top:38.692098%}
@media(max-width:800px){
 .guide-text-box{top:32.239782%}
 body[data-topic="thanks"] .guide-text-box{top:31.694823%}
}

/* Keep navigation stable while the mobile keyboard opens and closes. */
.guide-back{z-index:10;touch-action:manipulation}
.guide-back svg{pointer-events:none}
.identity-heading:focus{outline:0}
@media(max-width:800px){
 body[data-view="attendee"] .attendee-view{align-items:start;align-content:start}
 #writeStep .identity-fields input{font-size:max(16px,5.866667cqw);scroll-margin-block:24px}
}

/* Event preparation controls stay separate from the presentation controls. */
.reset-dialog{width:min(440px,calc(100% - 32px));padding:28px;border:0;border-radius:22px;background:#fff;color:#191f28;font-family:"Anniversary Pretendard",sans-serif;box-shadow:0 16px 80px #0002}
.reset-dialog::backdrop{background:rgb(0 0 0 / .65)}
.reset-dialog h2{font-size:20px;font-weight:500;margin-bottom:18px}
.reset-dialog p{font-size:14px;line-height:1.7;margin:0 0 16px}
.reset-dialog .reset-help{font-size:12px;color:#7b8490}
.reset-dialog label{display:block;font-size:13px;margin-bottom:8px}
.reset-dialog input{width:100%;border:1px solid #d8dce1;border-radius:10px;padding:12px;font-size:16px;background:#fff}
.reset-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}
.reset-actions button{padding:12px 18px;border-radius:12px;background:#f2f4f6;font-size:14px}
.reset-actions #confirmReset{background:#191f28;color:white}
.reset-actions button:disabled{opacity:.35;cursor:default}
#resetError{font-size:13px;color:#bd3b35;margin-top:12px}
.restore-reset{font-size:12px;color:#637c97;text-decoration:underline;text-underline-offset:3px;margin-top:18px;padding:6px 0}

.checked-mode #adminReset,.raffle-board-active #adminReset{opacity:.18;filter:brightness(.45);pointer-events:none}

/* All attendee top instructions use the same Regular face. */
#guideStep .guide-heading,#guideStep .guide-team-heading,#writeStep .identity-heading,#successStep .completion-heading{font-family:"Anniversary Pretendard",sans-serif;font-weight:400}

body[data-view="admin"] .figma-board .latest-item{font-family:inherit;cursor:pointer;appearance:none}
body[data-view="admin"] .figma-board .latest-item:hover{cursor:pointer}
body[data-view="admin"] .figma-board .latest-item:disabled{cursor:default}
body[data-view="admin"] .figma-board .latest-item:focus-visible{outline:1px solid #9aa4b2;outline-offset:3px;border-radius:3px}

/* Keep dimmed papers opaque; active papers sit above the dimmed pile. */
body[data-view="admin"] .figma-board.checked-mode #noteLayer .board-note,body[data-view="admin"] .figma-board.raffle-board-active #noteLayer .board-note{z-index:1}
body[data-view="admin"] .figma-board.checked-mode #noteLayer .board-note.checked-note{z-index:8}
body[data-view="admin"] .figma-board.checked-mode #noteLayer .board-note.checked-note:is(:hover,:focus-visible){z-index:9}
body[data-view="admin"] .figma-board.raffle-board-active #noteLayer .board-note.raffle-highlight{z-index:10}

/* The enlarged paper keeps a crisp white edge and a shape-following shadow. */
.reader-paper::before{display:none}
.reader-note-art{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:-1;filter:drop-shadow(0 8px 14px rgb(0 0 0 / .28))}
.reader-note-art path{fill:var(--note-color);stroke:#fff;stroke-width:19.5;stroke-linejoin:round;paint-order:stroke fill}

.reader-paper.stamp .reader-note-art path{stroke-width:15.72}
