
#vf-app{--vf-purple:#812deb;--vf-deep:#211034;--vf-soft:#f4effb;--vf-lilac:#dbc3ff;--vf-muted:#756681;--vf-radius:22px;font-family:Arial,Helvetica,sans-serif;color:#291638;line-height:1.4;font-size:14px;max-width:414px;margin:0 auto;color-scheme:light}
#vf-app *{box-sizing:border-box}
#vf-app button,#vf-app input,#vf-app select,#vf-app textarea{font:inherit}
#vf-app button,#vf-app a{touch-action:manipulation}
#vf-app button{cursor:pointer}
#vf-app button:disabled{cursor:default;opacity:.63}
#vf-app .vf-preview{display:flex;align-items:center;justify-content:space-between;padding:10px 10px 12px;font-size:11px;letter-spacing:1.1px;text-transform:uppercase;color:#756681}
#vf-app .vf-preview b{font-weight:600}
#vf-app .vf-phone{background:var(--vf-soft);border:1px solid #e7dcef;border-radius:30px;overflow:hidden;box-shadow:0 16px 55px #27123c18}
#vf-app .vf-shell{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;background:#fff;border-bottom:1px solid #eee5f5;gap:10px}
#vf-app .vf-shell-title{text-align:center;font-size:14px;font-weight:700;line-height:1.2}
#vf-app .vf-shell-title small{display:block;font-size:10px;color:var(--vf-muted);font-weight:400;margin-top:3px;letter-spacing:.2px}
#vf-app .vf-icon-button{border:0;background:#f5effb;border-radius:50%;width:34px;height:34px;display:grid;place-items:center;color:var(--vf-deep);padding:0}
#vf-app .vf-content{padding:20px;min-height:670px}
#vf-app h1,#vf-app h2,#vf-app h3,#vf-app p{margin:0}
#vf-app h1{font-size:49px;line-height:.98;font-weight:900;letter-spacing:-2.5px}
#vf-app h2{font-size:31px;line-height:1.04;letter-spacing:-1.2px;font-weight:800;margin:8px 0 12px}
#vf-app h3{font-size:17px;line-height:1.2;letter-spacing:-.4px;font-weight:700}
#vf-app p{font-size:13px;line-height:1.5}
#vf-app .vf-eyebrow{font-size:10px;font-weight:700;letter-spacing:1.7px;text-transform:uppercase;color:#78509e}
#vf-app .vf-muted{color:var(--vf-muted)}
#vf-app .vf-small{font-size:11px;line-height:1.45}
#vf-app .vf-space{margin-top:18px}
#vf-app .vf-gap{margin-top:10px}
#vf-app .vf-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
#vf-app .vf-start{align-items:flex-start}
#vf-app .vf-button{border:0;background:var(--vf-purple);color:#fff;border-radius:14px;padding:14px 16px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:8px;width:100%;text-decoration:none;min-height:46px;font-size:13px}
#vf-app .vf-button.vf-light{background:#fff;color:#582089}
#vf-app .vf-button.vf-pale{background:#ece0fd;color:#6b2daf}
#vf-app .vf-button.vf-outline{background:transparent;color:#6b2daf;border:1px solid #ddc9ef}
#vf-app .vf-text-button{background:none;border:0;color:#6b2daf;font-size:12px;font-weight:700;padding:8px 0;display:inline-flex;align-items:center;gap:5px}
#vf-app .vf-pill{display:inline-flex;align-items:center;gap:4px;border-radius:50px;padding:5px 9px;background:#eee3fc;color:#714199;font-size:10px;font-weight:700;white-space:nowrap}
#vf-app .vf-pill.vf-done{background:#edf7ec;color:#386b39}
#vf-app .vf-card{background:#fff;border-radius:var(--vf-radius);padding:18px}
#vf-app .vf-hero{position:relative;background:radial-gradient(ellipse at 70% 100%,#6325ce 0,transparent 60%),#190927;color:#fff;border-radius:var(--vf-radius);padding:24px 22px;min-height:327px;isolation:isolate;overflow:hidden;display:flex;flex-direction:column}
#vf-app .vf-hero:before{content:"";position:absolute;inset:0;z-index:-2;background-image:url('assets/hero.webp');background-size:cover;background-position:center}
#vf-app .vf-hero .vf-eyebrow{color:#d5b8f5;letter-spacing:1.2px}
#vf-app .vf-hero h1{margin-top:22px}
#vf-app .vf-hero h1 span{display:block;color:#ddbdff;font-size:45px;letter-spacing:-2.1px;margin-top:3px}
#vf-app .vf-hero .vf-tag{position:absolute;right:21px;top:24px;font-size:10px;border:1px solid #9870b3;border-radius:40px;padding:3px 8px;color:#ead9ff}
#vf-app .vf-hero p{color:#f0e6fc;width:75%;font-size:12px;margin-top:14px}
#vf-app .vf-hero .vf-button{margin-top:auto;position:relative;background:#f8efff;color:#36124f;box-shadow:0 4px 20px #1a052a30}
#vf-app .vf-welcome{margin-top:19px;font-size:22px;line-height:1.12;font-weight:800;letter-spacing:-.6px}
#vf-app .vf-lead{margin-top:8px;color:#736180}
#vf-app .vf-steps{display:flex;justify-content:space-between;margin:18px 0;gap:8px;padding-bottom:16px;border-bottom:1px solid #e4d7ee}
#vf-app .vf-step{display:flex;gap:6px;align-items:center;font-size:10px;font-weight:700;color:#66427e}
#vf-app .vf-step b{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#e5d5f7;color:#7d2fca}
#vf-app .vf-gift{display:flex;align-items:center;gap:12px;background:#e5d4fc;border-radius:18px;padding:16px;margin-top:14px;text-align:left;border:0;width:100%;color:#3f1f5c}
#vf-app .vf-gift-art{width:50px;height:47px;flex:none;position:relative;display:grid;place-items:center;color:#fff;background:linear-gradient(140deg,#bf8cfb,#7730d8);border:3px solid #fff;border-radius:14px;transform:rotate(-10deg);box-shadow:3px 4px 0 #cab2e8;font-size:26px;font-weight:900}
#vf-app .vf-gift h3{font-size:14px;margin-bottom:3px}
#vf-app .vf-gift p{font-size:11px}
#vf-app .vf-socials{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:10px}
#vf-app .vf-social{border:1px solid #e4d6ef;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:11px 5px;background:#fff;text-decoration:none;gap:3px;color:#5a2c7a;min-height:61px}
#vf-app .vf-social strong{font-size:12px;font-weight:700}
#vf-app .vf-social span{font-size:10px;color:#85728f;line-height:1.2;text-align:center}
#vf-app .vf-footlink{display:flex;align-items:center;gap:10px;padding:14px 0 1px;color:#694986;background:none;border:0;width:100%;text-align:left}
#vf-app .vf-footlink b{font-size:12px;display:block}
#vf-app .vf-footlink span{font-size:10px;color:#8a7896}
#vf-app .vf-nav{display:grid;grid-template-columns:repeat(5,1fr);gap:0;border-top:1px solid #eaddf4;background:#fff;padding:10px 7px 16px}
#vf-app .vf-nav button{display:flex;align-items:center;flex-direction:column;gap:6px;border:0;background:none;color:#8b7b98;min-height:43px;font-size:11px;padding:5px 0 0;font-weight:700}
#vf-app .vf-nav button.vf-active{color:var(--vf-purple)}
#vf-app .vf-nav button.vf-active .vf-nav-icon{background:#f0e2ff}
#vf-app .vf-nav-icon{display:grid;place-items:center;width:37px;height:23px;border-radius:10px}
#vf-app .vf-progress-card{background:var(--vf-deep);color:#fff;border-radius:var(--vf-radius);padding:20px;margin:20px 0;position:relative;overflow:hidden}
#vf-app .vf-progress-card:after{content:"✳";position:absolute;font-size:124px;line-height:1;right:-14px;top:4px;color:#a771fa28;pointer-events:none}
#vf-app .vf-progress-card small{color:#c9acd9;font-size:11px}
#vf-app .vf-progress-number{font-size:35px;letter-spacing:-1.3px;font-weight:800;margin-top:5px;line-height:1.15}
#vf-app .vf-progress-number span{font-size:17px;color:#c3a9d8;letter-spacing:0;font-weight:500}
#vf-app .vf-progress-track{display:flex;gap:6px;margin:17px 0 10px}
#vf-app .vf-progress-track span{height:6px;flex:1;background:#4b3063;border-radius:9px}
#vf-app .vf-progress-track span.vf-complete{background:#bf88ff}
#vf-app .vf-task{display:flex;align-items:center;gap:12px;padding:16px 14px;background:#fff;border-radius:18px;margin-top:10px;width:100%;text-align:left;border:1px solid transparent;color:#2e173e}
#vf-app .vf-task.vf-task-done{border-color:#d4dfcc}
#vf-app .vf-task-art{flex:none;width:50px;height:56px;border-radius:14px;display:grid;place-items:center;color:#8a46c4;background:#f0e5fc}
#vf-app .vf-task-art svg{width:25px;height:25px}
#vf-app .vf-task-title{font-size:14px;font-weight:700;line-height:1.25}
#vf-app .vf-task-meta{font-size:10px;color:#816c90;margin-top:5px}
#vf-app .vf-task .vf-grow{flex:1;min-width:0}
#vf-app .vf-task-tick{color:#558653}
#vf-app .vf-dashed{margin-top:12px;padding:15px;border:1px dashed #cbb5df;border-radius:16px;color:#836f91;font-size:11px;text-align:center}
#vf-app .vf-note{font-size:11px;line-height:1.45;padding:12px 14px;background:#ece2f6;color:#73598a;border-radius:12px;margin-top:14px}
#vf-app .vf-form label{display:block;font-size:12px;font-weight:700;margin-top:17px;margin-bottom:7px;color:#503764}
#vf-app .vf-input{width:100%;border:1px solid #dac8e9;border-radius:12px;background:#fff;padding:14px;color:#3d2352;font-size:16px;min-height:47px}
#vf-app .vf-input::placeholder{color:#a18aac}
#vf-app .vf-form textarea{min-height:83px;resize:vertical}
#vf-app .vf-form .vf-check{display:flex;align-items:flex-start;gap:8px;font-size:11px;line-height:1.5;font-weight:400;margin:16px 0}
#vf-app .vf-check input{width:16px;height:16px;accent-color:#812deb;flex:none;margin-top:2px}
#vf-app .vf-profile-badge{display:grid;place-items:center;background:linear-gradient(145deg,#cfabff,#7c2ee7);color:#fff;border-radius:22px;width:78px;height:78px;margin:22px auto 18px;font-size:41px;box-shadow:inset 1px 2px 4px #ffffff60,0 7px 18px #9b5ed72c}
#vf-app .vf-back{border:0;background:none;color:#775286;padding:0;margin-bottom:15px;font-size:11px;display:flex;align-items:center;gap:5px}
#vf-app .vf-divider{height:1px;background:#e6dbee;margin:18px 0}
#vf-app .vf-code{font-size:29px;text-align:center;letter-spacing:8px;font-weight:700}
#vf-app .vf-error{color:#a63862;font-size:12px;margin-top:9px}
#vf-app .vf-code-steps{display:grid;gap:16px;margin:24px 0}
#vf-app .vf-code-step{display:flex;gap:12px;align-items:flex-start;color:#624c70;font-size:12px}
#vf-app .vf-code-step b{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#e8d8fc;flex:none;color:#7c30bf}
#vf-app .vf-timeline{margin:22px 0 8px;padding-left:10px}
#vf-app .vf-event{position:relative;border-left:1px solid #d6c0e5;padding:0 0 25px 24px}
#vf-app .vf-event:before{content:"";position:absolute;left:-5px;top:5px;width:9px;height:9px;background:#a765e6;border:2px solid #f4effb;border-radius:50%}
#vf-app .vf-event:last-child{padding-bottom:0}
#vf-app .vf-event-time{font-size:10px;color:#88609f;margin-bottom:6px;font-weight:700}
#vf-app .vf-event-title{font-size:16px;font-weight:700;line-height:1.2;letter-spacing:-.3px}
#vf-app .vf-event p{font-size:11px;color:#8c7599;margin-top:5px}
#vf-app .vf-person{background:#fff;border-radius:var(--vf-radius);overflow:hidden;margin-top:20px}
#vf-app .vf-portrait{height:169px;position:relative;display:flex;align-items:flex-end;background:radial-gradient(ellipse at 50% 100%,#8347da 0,transparent 60%),#24103e;color:#e8d4ff;overflow:hidden;padding:17px}
#vf-app .vf-portrait:before{content:attr(data-initials);position:absolute;left:50%;top:20px;transform:translateX(-50%);width:124px;height:124px;border-radius:50%;background:linear-gradient(140deg,#e8cdff,#8748d1 63%,#49167d);display:grid;place-items:center;font-size:53px;font-weight:800;letter-spacing:-3px;box-shadow:inset 2px 3px 3px #ffffff60}
#vf-app .vf-portrait:after{content:"";position:absolute;width:275px;height:77px;border:1px solid #a279c2;border-radius:50%;left:15px;top:70px;transform:rotate(-26deg)}
#vf-app .vf-portrait .vf-pill{z-index:1;background:#381853;color:#e8d4ff}
#vf-app .vf-person-body{padding:19px}
#vf-app .vf-person-body h3{font-size:23px;letter-spacing:-.8px;margin-bottom:8px}
#vf-app .vf-person-body p{font-size:12px;color:#80698d}
#vf-app .vf-person-body .vf-button{margin-top:17px}
#vf-app .vf-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#vf-app .vf-score{background:#251038;color:#fff;padding:22px;border-radius:var(--vf-radius);margin-top:18px}
#vf-app .vf-score small{font-size:11px;color:#ceb1e4}
#vf-app .vf-score-big{font-size:56px;font-weight:800;letter-spacing:-3px;line-height:1.15;margin-top:4px}
#vf-app .vf-score-big span{font-size:16px;color:#c9a8e6;font-weight:500;letter-spacing:0;margin-left:6px}
#vf-app .vf-score-stats{display:flex;gap:0;border-top:1px solid #563667;padding-top:13px;margin-top:15px}
#vf-app .vf-score-stats div{flex:1;font-size:11px;color:#c9a8e6}
#vf-app .vf-score-stats div+div{border-left:1px solid #563667;padding-left:20px}
#vf-app .vf-score-stats strong{font-size:19px;color:#fff;display:block;line-height:1.2;margin-bottom:3px}
#vf-app .vf-segment{display:grid;grid-template-columns:1fr 1fr;background:#e9def2;padding:4px;border-radius:13px;margin:18px 0}
#vf-app .vf-segment button{border:0;background:none;padding:10px;border-radius:10px;font-size:12px;font-weight:700;color:#8b6b9c}
#vf-app .vf-segment button.vf-selected{background:#fff;color:#5d258c;box-shadow:0 2px 5px #61308310}
#vf-app .vf-rank-row{display:flex;align-items:center;gap:12px;padding:12px 11px;border-bottom:1px solid #f0e8f7;font-size:13px;background:#fff}
#vf-app .vf-rank-row:last-child{border-bottom:0}
#vf-app .vf-rank-row.vf-you{background:#e9d8fe;border-radius:13px;color:#61229d;border-bottom:none;margin-top:5px}
#vf-app .vf-rank-place{width:17px;font-weight:700;color:#8c70a0;font-size:11px}
#vf-app .vf-rank-avatar{width:31px;height:31px;border-radius:50%;background:#efe3fb;display:grid;place-items:center;color:#9962c5;font-size:12px}
#vf-app .vf-rank-name{flex:1;font-weight:700}
#vf-app .vf-rank-points{font-size:13px;font-weight:700}
#vf-app .vf-rank-points span{font-size:9px;font-weight:400;color:#987aa8}
#vf-app .vf-prize{background:#fff;border-radius:18px;overflow:hidden}
#vf-app .vf-prize-art{height:146px;background:radial-gradient(ellipse at 50% 50%,#e9d7ff,#d8c0f7);display:grid;place-items:center;position:relative;overflow:hidden}
#vf-app .vf-shirt{width:105px;height:108px;background:#7940b5;clip-path:polygon(25% 2%,38% 0,42% 9%,58% 9%,62% 0,75% 2%,100% 25%,82% 44%,75% 35%,75% 100%,25% 100%,25% 35%,18% 44%,0 25%);filter:drop-shadow(3px 8px 9px #64269d);display:grid;place-items:center;transform:rotate(-7deg);box-shadow:inset 0 4px 20px #d8b2ff}
#vf-app .vf-shirt span{font-size:10px;font-weight:900;line-height:1;text-align:center;color:#f7eaff;letter-spacing:-.5px;margin-top:10px;transform:rotate(0)}
#vf-app .vf-pin{border:5px solid #f9efff;display:grid;place-items:center;width:86px;height:86px;border-radius:50%;color:#fff;background:linear-gradient(130deg,#bc84f4,#6930a4);box-shadow:4px 6px 10px #9d72ca70;font-weight:900;font-size:32px;transform:rotate(14deg)}
#vf-app .vf-prize-body{padding:13px}
#vf-app .vf-prize-body h3{font-size:13px}
#vf-app .vf-price{color:#8b36cf;font-size:17px;font-weight:800;margin:8px 0}
#vf-app .vf-price span{font-size:10px;font-weight:400}
#vf-app .vf-prize-body .vf-button{font-size:11px;padding:9px 5px;min-height:36px;border-radius:10px}
#vf-app .vf-sticker-collage{height:225px;background:#261038;border-radius:var(--vf-radius);position:relative;margin:20px 0;overflow:hidden}
#vf-app .vf-sticker{position:absolute;border:4px solid #fff;border-radius:18px;font-weight:900;box-shadow:0 5px 0 #ffffff20;text-align:center;line-height:1.05}
#vf-app .vf-sticker-one{background:#9651f0;color:#fff;padding:20px 15px;left:23px;top:28px;transform:rotate(-10deg);font-size:21px}
#vf-app .vf-sticker-two{background:#e6caff;color:#4f1d70;padding:16px;right:18px;top:38px;transform:rotate(13deg);font-size:41px;border-radius:50%}
#vf-app .vf-sticker-three{background:#faf2ff;color:#7a2cbb;padding:13px 24px;left:89px;bottom:27px;transform:rotate(5deg);font-size:22px}
#vf-app .vf-success{text-align:center;padding-top:10px}
#vf-app .vf-success-icon{width:88px;height:88px;background:linear-gradient(140deg,#ceb0ff,#812deb);color:#fff;border-radius:28px;display:grid;place-items:center;margin:18px auto 24px;box-shadow:0 7px 24px #8a42ce3a}
#vf-app .vf-success-icon svg{width:40px;height:40px}
#vf-app .vf-success h2{font-size:33px}
#vf-app .vf-success p{color:#846c94;margin:12px 0 20px}
#vf-app .vf-success .vf-earned{font-size:48px;font-weight:800;letter-spacing:-2px;color:#8c3edb;margin:24px 0 5px}
#vf-app .vf-success .vf-earned span{font-size:17px;letter-spacing:0}
#vf-app .vf-toast{border:1px solid #d4c0e7;background:#fff;border-radius:14px;padding:14px;margin-top:14px;color:#68467e;font-size:12px}
#vf-app .vf-policy{font-size:11px;line-height:1.55;color:#927b9d;margin-top:16px}
#vf-app .vf-account{display:flex;gap:14px;align-items:center;margin:22px 0}
#vf-app .vf-account .vf-profile-badge{width:59px;height:59px;font-size:28px;margin:0;border-radius:18px}
@media(max-width:370px){#vf-app .vf-content{padding:16px}#vf-app h1{font-size:45px}#vf-app .vf-hero h1 span{font-size:38px}#vf-app .vf-hero{padding:21px 18px}#vf-app .vf-step{font-size:9px}#vf-app .vf-social span{font-size:8px}#vf-app h2{font-size:28px}#vf-app .vf-task{padding:14px 11px;gap:10px}#vf-app .vf-task-title{font-size:13px}}

:root{color-scheme:light;background:#eae1f5}body{margin:0}#vf-app{max-width:540px;min-height:100vh;min-height:100dvh}#vf-app .vf-phone{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;border-radius:0;border:0}#vf-app .vf-shell{position:sticky;top:0;z-index:4;padding-top:max(14px,env(safe-area-inset-top));background:#fff}#vf-app .vf-content{flex:1;min-height:0;padding-bottom:28px}#vf-app .vf-nav{position:sticky;bottom:0;z-index:4;padding-bottom:max(12px,env(safe-area-inset-bottom));box-shadow:0 -4px 20px #21103405}#vf-app .vf-hero{min-height:340px}#vf-app .vf-footlink{text-decoration:none}#vf-app .vf-social[aria-disabled="true"]{background:#f7f2fc;opacity:.8}#vf-app .vf-social[aria-disabled="true"] strong{color:#8c749e}#vf-app button:focus-visible,#vf-app a:focus-visible,#vf-app input:focus-visible,#vf-app textarea:focus-visible{outline:3px solid #b683fa;outline-offset:3px}#vf-app .vf-form label a{color:#6b2daf}#vf-app .vf-demo-banner{padding:8px 18px;background:#ece0fd;color:#643c85;font-size:11px;text-align:center}#vf-app .vf-loading{padding:30px 0;text-align:center;color:#756681}#vf-app .vf-status{margin-bottom:14px;padding:12px 14px;border:1px solid #e0caef;border-radius:12px;font-size:12px;background:#fff;color:#6b3d80}#vf-app .vf-status:empty{display:none}#vf-app .vf-status[data-error="true"]{color:#9b2951;border-color:#e9becf}#vf-app .vf-inline-error{font-size:12px;color:#9b2951;margin-top:12px}#vf-app .vf-task-meta{display:block}#vf-app .vf-portrait-detail{border-radius:20px;margin:18px 0}#vf-app .vf-prize-body p{font-size:11px;margin-top:7px;color:#80698d}#vf-app .vf-prize-body{display:flex;flex-direction:column;flex:1}#vf-app .vf-prize{display:flex;flex-direction:column}#vf-app .vf-prize-body .vf-button{margin-top:auto}#vf-app .vf-prize-body .vf-price{margin-bottom:10px}#vf-app .vf-rank-list{padding:6px}#vf-app .vf-balance{color:#812deb;font-size:22px}#vf-app .vf-balance span{font-size:11px;font-weight:500}#vf-app .vf-empty{padding:25px 18px;text-align:center;background:#fff;border-radius:18px;margin-top:12px;color:#80698d}#vf-app .vf-empty p{font-size:12px;margin:8px 0 14px}#vf-app .vf-prize-description{margin-bottom:12px}#vf-app .vf-meta-list{display:grid;gap:10px;margin-top:12px}#vf-app .vf-meta-list .vf-card{padding:14px}#vf-app .vf-meta-list .vf-card p{font-size:11px;margin-top:5px;color:#80698d}#vf-app .vf-a11y{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}#vf-app .vf-login-link{margin-top:15px}#vf-app .vf-footer{padding:0 20px 20px;color:#927b9d;font-size:10px;text-align:center}#vf-app .vf-footer a{color:inherit}#vf-app .vf-spinner{display:inline-block;width:18px;height:18px;border:2px solid #dcc5f6;border-top-color:#812deb;border-radius:50%;animation:vf-spin .8s linear infinite;vertical-align:middle;margin-right:8px}@keyframes vf-spin{to{transform:rotate(360deg)}}@media(min-width:600px){#vf-app{box-shadow:0 12px 70px #3212491a}#vf-app .vf-content{padding:24px}}@media(prefers-reduced-motion:reduce){#vf-app .vf-spinner{animation:none}}@media(max-width:350px){#vf-app .vf-two{grid-template-columns:1fr}#vf-app .vf-steps{gap:4px}#vf-app .vf-step{font-size:8px}#vf-app .vf-hero .vf-tag{font-size:8px;right:15px}#vf-app .vf-nav button{font-size:10px}}

#vf-app .vf-content h2,#vf-app .vf-content h3,#vf-app .vf-content p,#vf-app .vf-task-title,#vf-app .vf-rank-name{overflow-wrap:anywhere}#vf-app .vf-rank-name,#vf-app .vf-row>b{min-width:0}#vf-app .vf-row>b{overflow-wrap:anywhere}

#vf-app .vf-legal-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 15px;max-width:400px;margin:0 auto;line-height:1.5}#vf-app .vf-legal-links a{padding:4px 0}#vf-app .vf-policy a{color:#6b2daf;text-underline-offset:2px}

#vf-app .vf-ranking-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px}#vf-app .vf-ranking-table th{font-size:10px;color:#8c70a0;font-weight:600;padding:11px 10px;border-bottom:1px solid #f0e8f7}#vf-app .vf-ranking-table td{padding:13px 10px;border-bottom:1px solid #f0e8f7;text-align:center;color:#66427e}#vf-app .vf-ranking-table tr:last-child td{border-bottom:0}#vf-app .vf-ranking-table th:first-child,#vf-app .vf-ranking-table td:first-child{text-align:left;width:25%}#vf-app .vf-ranking-table th:last-child,#vf-app .vf-ranking-table td:last-child{text-align:right}#vf-app .vf-ranking-table strong{color:#61229d}

#vf-app .vf-field-help{font-size:11px;line-height:1.5;color:#927b9d;margin-top:7px}#vf-app .vf-profile-reminder{border:1px solid #dac3f5;background:#f0e5ff;padding:18px;border-radius:18px}#vf-app .vf-profile-reminder p{font-size:12px;line-height:1.5;color:#80698d;margin:8px 0 14px}#vf-app .vf-account>div:last-child{min-width:0}#vf-app .vf-ranking-table th:first-child,#vf-app .vf-ranking-table td:first-child{width:15%}#vf-app .vf-ranking-table th:nth-child(2),#vf-app .vf-ranking-table td:nth-child(2){text-align:left;overflow-wrap:anywhere}#vf-app .vf-ranking-table th:last-child,#vf-app .vf-ranking-table td:last-child{width:23%}#vf-app .vf-rank-avatar,#vf-app .vf-rank-points{flex-shrink:0}

#vf-app .vf-meetings{margin-top:20px;background:#fff;border:1px solid #e4d5ef;border-radius:18px;overflow:hidden}#vf-app .vf-meetings summary{display:flex;align-items:center;gap:12px;padding:18px;cursor:pointer;list-style:none}#vf-app .vf-meetings summary::-webkit-details-marker{display:none}#vf-app .vf-meetings summary>span:nth-child(2){flex:1;min-width:0}#vf-app .vf-meetings summary strong{font-size:15px;line-height:1.25;display:block}#vf-app .vf-meetings summary small{display:block;margin-top:5px;font-size:11px;color:#927b9d}#vf-app .vf-meetings summary>svg{flex:none;transition:transform .18s}#vf-app .vf-meetings[open] summary>svg{transform:rotate(180deg)}#vf-app .vf-meetings summary:focus-visible{outline:3px solid #b683fa;outline-offset:-3px}#vf-app .vf-meetings-icon{display:grid;place-items:center;flex:none;width:36px;height:36px;background:#efe3fb;border-radius:12px;color:#812deb}#vf-app .vf-meeting-slots{padding:0 18px 5px}#vf-app .vf-meeting-slot{padding:17px 0;border-top:1px solid #eee5f4}#vf-app .vf-meeting-slot h3{font-size:16px;margin:5px 0 12px}#vf-app .vf-meeting-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}#vf-app .vf-meeting-actions .vf-button{width:auto;padding:10px 13px;font-size:12px}#vf-app .vf-workshop-list{list-style:none;margin:0;padding:0;counter-reset:vf-workshop}#vf-app .vf-workshop-list li{counter-increment:vf-workshop;border-top:1px solid #eee5f4}#vf-app .vf-workshop-list button{display:flex;gap:12px;align-items:center;text-align:left;width:100%;padding:15px 0;background:none;border:0;font:inherit;color:inherit}#vf-app .vf-workshop-list button::before{content:counter(vf-workshop);color:#812deb;font-weight:700}#vf-app .vf-workshop-list button span{flex:1;font-size:13px;font-weight:600}

/* Festival prize choices and the server-backed fortune wheel. */
#vf-app .vf-prize-grid{display:grid;gap:20px;margin-top:20px}
#vf-app .vf-new-prize{border:1px solid #e4d5ef;box-shadow:0 7px 25px #5b268407}
#vf-app .vf-new-prize .vf-prize-art{height:180px;background:radial-gradient(ellipse at 50% 75%,#c49ced,#ebdafe 70%)}
#vf-app .vf-new-prize .vf-prize-body{padding:19px}
#vf-app .vf-new-prize .vf-prize-body h3{font-size:19px;line-height:1.2}
#vf-app .vf-new-prize .vf-price{flex:none;margin:0 0 0 10px;display:flex;flex-direction:column;text-align:right;line-height:1.1;font-size:25px}
#vf-app .vf-new-prize .vf-price span{margin-top:3px;font-size:10px}
#vf-app .vf-new-prize .vf-prize-description{font-size:12px;line-height:1.5;margin:12px 0 17px}
#vf-app .vf-new-prize .vf-prize-body .vf-button{font-size:13px;padding:13px;min-height:44px;border-radius:13px}
#vf-app .vf-new-prize .vf-prize-preview-note{font-size:10px;text-align:center;margin:9px 0 0;color:#927b9d}
#vf-app .vf-art-spark{position:absolute;color:#9253d0;font-weight:800;font-size:30px}
#vf-app .vf-spark-one{left:19%;top:20%;transform:rotate(-15deg)}
#vf-app .vf-spark-two{right:18%;bottom:14%;font-size:20px;color:#ead7ff}
#vf-app .vf-gift-stickers{position:absolute;left:38%;top:37px;transform:rotate(-10deg);background:#9956ea;border:5px solid #fff;border-radius:15px;width:96px;height:106px;box-shadow:5px 8px 0 #ffffff80,9px 14px 18px #7b3d9f30;color:#fff;padding:12px;font-size:16px;line-height:1.04}
#vf-app .vf-gift-stickers span{position:absolute;right:-21px;bottom:-10px;background:#f3df7f;color:#622e83;border:4px solid #fff;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;font-size:29px}
#vf-app .vf-gift-pen{position:absolute;width:13px;height:130px;left:30%;top:20px;transform:rotate(24deg);border-radius:6px 6px 2px 2px;background:linear-gradient(90deg,#6430a5,#a767f3 45%,#8742d5 80%);box-shadow:4px 4px 10px #5b238a33}
#vf-app .vf-gift-pen:before{content:'';position:absolute;top:5px;right:-4px;width:4px;height:37px;background:#e2ccef;border-radius:3px}
#vf-app .vf-gift-pen:after{content:'';position:absolute;bottom:-13px;border-left:6.5px solid transparent;border-right:6.5px solid transparent;border-top:14px solid #773c9e}
#vf-app .vf-new-prize .vf-wheel-card-art{background:radial-gradient(ellipse at 50% 100%,#714293,#2b143e 75%)}
#vf-app .vf-mini-wheel{width:141px;height:141px;position:relative;border:9px solid #f7eaff;border-radius:50%;background:#dac1fb;box-shadow:0 0 0 4px #ffffff24,0 12px 28px #1c072850;transform:rotate(-12deg);display:grid;place-items:center}
#vf-app .vf-mini-wheel:after{content:'';position:absolute;top:-15px;left:calc(50% - 8px);border-left:8px solid transparent;border-right:8px solid transparent;border-top:22px solid #f4d475;filter:drop-shadow(0 2px 2px #48205b55)}
#vf-app .vf-mini-wheel span{font-size:32px;color:#fff;background:#54247d;border:4px solid #fff5;border-radius:50%;width:53px;height:53px;display:grid;place-items:center}
#vf-app .vf-wheel-card-odds{display:flex;justify-content:space-between;gap:10px;margin:-1px 0 18px;color:#80698d;font-size:10px}
#vf-app .vf-wheel-card-odds b{display:block;font-size:15px;color:#633791;margin-top:4px}
#vf-app .vf-prize-options{border:0;padding:0;margin:0}
#vf-app .vf-prize-options legend{font-size:12px;font-weight:700;color:#503764;margin:0 0 7px}
#vf-app .vf-form .vf-prize-option{position:relative;display:flex;gap:12px;align-items:center;margin:10px 0;padding:16px 13px;border:1px solid #dfcaef;border-radius:15px;background:#fff;cursor:pointer}
#vf-app .vf-prize-option input{accent-color:#812deb;flex:none}
#vf-app .vf-prize-option>span:nth-of-type(2){flex:1;min-width:0}
#vf-app .vf-prize-option b{font-size:15px;display:block}
#vf-app .vf-prize-option small{font-size:10px;font-weight:400;color:#927b9d;display:block;line-height:1.45;margin-top:4px}
#vf-app .vf-option-symbol{font-size:29px;font-weight:700;color:#9150d7;width:33px;text-align:center}
#vf-app .vf-option-check{visibility:hidden;flex:none;color:#812deb}
#vf-app .vf-prize-option:has(input:checked){border-color:#9f58ee;background:#f0e4ff;box-shadow:0 0 0 1px #9f58ee}
#vf-app .vf-prize-option:has(input:checked) .vf-option-check{visibility:visible}
#vf-app .vf-prize-option:has(input:disabled){opacity:.5;cursor:not-allowed}
#vf-app .vf-wheel-stage{position:relative;padding:30px 7px 25px;margin:9px -5px 0}
#vf-app .vf-wheel-rim{width:100%;max-width:330px;aspect-ratio:1;border:11px solid #faf4ff;border-radius:50%;position:relative;margin:auto;box-shadow:0 0 0 2px #ccb0e8,0 0 0 9px #e9d9f9,0 15px 32px #58267e25;background:#e4cafa}
#vf-app .vf-wheel-disc{width:100%;height:100%;border-radius:50%;overflow:hidden;will-change:transform}
#vf-app .vf-wheel-labels{width:100%;height:100%;display:block}
#vf-app .vf-wheel-center{position:absolute;z-index:2;top:50%;left:50%;transform:translate(-50%,-50%);width:64px;height:64px;border:7px solid #fbf5ff;border-radius:50%;display:grid;place-items:center;font-size:36px;color:#fff;background:linear-gradient(135deg,#ad68ee,#6529a0);box-shadow:0 3px 13px #56287355}
#vf-app .vf-wheel-pointer{position:absolute;z-index:3;top:-23px;left:calc(50% - 13px);width:0;height:0;border-left:13px solid transparent;border-right:13px solid transparent;border-top:37px solid #f0c94f;filter:drop-shadow(0 3px 2px #682d9944)}
#vf-app .vf-wheel-spark{position:absolute;color:#ad73df;z-index:2;font-size:23px}
#vf-app .vf-wheel-spark-a{top:9px;right:3%;transform:rotate(13deg)}
#vf-app .vf-wheel-spark-b{bottom:5px;left:0;font-size:19px;transform:rotate(-11deg)}
#vf-app .vf-wheel-legend{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:7px 0 20px;text-align:center}
#vf-app .vf-wheel-legend>span{min-width:0;background:#fff9;border-radius:12px;padding:12px 5px;display:flex;align-items:center;flex-direction:column;gap:5px}
#vf-app .vf-wheel-legend i{width:9px;height:9px;border-radius:50%;border:1px solid #61358220}
#vf-app .vf-wheel-legend b{font-size:11px;overflow-wrap:anywhere}
#vf-app .vf-wheel-legend small{font-size:16px;color:#71429b;font-weight:700}
#vf-app .vf-wheel-action{margin-top:20px}
#vf-app .vf-spin-button{margin-top:15px;box-shadow:0 7px 18px #8b35df25;min-height:49px;font-size:15px}
#vf-app .vf-wheel-live{font-size:15px;text-align:center;font-weight:700;color:#812deb;padding:20px 12px}
#vf-app .vf-wheel-result{padding:22px 18px;border:1px solid #d1b0ed;border-radius:20px;text-align:center;background:linear-gradient(135deg,#eee0ff,#fff9e4);box-shadow:0 8px 24px #75419810}
#vf-app .vf-wheel-result>small{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#8b589f;font-weight:700}
#vf-app .vf-wheel-result h3{font-size:27px;margin:9px 0;color:#562580}
#vf-app .vf-wheel-result p{font-size:12px;line-height:1.55;color:#80698d;margin:9px 0 15px}
#vf-app .vf-prize-history-title{display:flex;align-items:center;gap:8px;justify-content:space-between}
@media(max-width:350px){#vf-app .vf-wheel-stage{padding-left:3px;padding-right:3px}#vf-app .vf-wheel-rim{border-width:8px}#vf-app .vf-wheel-center{width:54px;height:54px;border-width:5px;font-size:29px}#vf-app .vf-prize-option{gap:8px}#vf-app .vf-new-prize .vf-prize-body h3{font-size:17px}}
@media(prefers-reduced-motion:reduce){#vf-app .vf-wheel-disc{will-change:auto}}
#vf-app .vf-gift-stickers{width:110px}#vf-app .vf-gift-stickers b{font-size:11px;line-height:1.08;display:block}

#vf-app .vf-new-prize .vf-prize-once{margin:0 0 14px}

#vf-app .vf-wheel-prizes>p{margin-bottom:8px}#vf-app .vf-wheel-prizes-compact{margin-bottom:17px}#vf-app .vf-wheel-prizes-compact .vf-wheel-legend{margin:0;gap:6px}#vf-app .vf-wheel-prizes-compact .vf-wheel-legend>span{background:#f7f0ff;padding:9px 4px}#vf-app .vf-wheel-prizes-compact .vf-wheel-legend b{font-size:10px}#vf-app .vf-wheel-labels text{font-family:inherit}

/* Seven festival tasks and one mutually exclusive craft group. */
#vf-app .vf-task-blocked{opacity:.62;cursor:default;background:#f8f5fb}
#vf-app .vf-group-info{padding:18px;margin:20px 0;background:#ece0fa;border-radius:18px}
#vf-app .vf-group-info p{font-size:13px;line-height:1.6;margin:12px 0 0}
#vf-app .vf-task-description{white-space:pre-line}
#vf-app .vf-hashtag-card{padding:18px;background:#f1e6ff;border:1px solid #d8bef2;border-radius:18px;margin-top:20px}
#vf-app .vf-hashtag-card h3{font-size:17px;margin:0 0 8px}
#vf-app .vf-hashtags{display:block;width:100%;box-sizing:border-box;resize:none;border:0;background:transparent;color:#7425b6;font-family:inherit;font-size:17px;font-weight:700;line-height:1.65;margin:10px 0;padding:0;overflow-wrap:anywhere;user-select:text;-webkit-user-select:text}
#vf-app .vf-workshop-list>li{counter-increment:vf-workshop}
#vf-app .vf-workshop-list small{display:block;font-size:10px;font-weight:400;color:#816c90;margin-top:5px}
#vf-app .vf-workshop-list .vf-schedule-group>summary{padding:15px 0;gap:12px}
#vf-app .vf-workshop-list .vf-schedule-group>summary::before{content:counter(vf-workshop);color:#812deb;font-weight:700}
#vf-app .vf-workshop-list .vf-schedule-group>summary>span{flex:1;font-size:13px;font-weight:600;min-width:0}
#vf-app .vf-schedule-variants{padding-bottom:15px}
#vf-app .vf-schedule-variants .vf-task{padding:12px 10px;border:1px solid #e7dcf0;gap:10px}
#vf-app .vf-schedule-variants .vf-task::before{content:none}
#vf-app .vf-schedule-variants .vf-task span{font-size:inherit;font-weight:inherit;flex:initial}
#vf-app .vf-schedule-variants .vf-task .vf-grow{flex:1}
#vf-app .vf-schedule-variants .vf-task .vf-task-art{width:36px;height:42px;flex:none}
#vf-app .vf-schedule-variants .vf-task .vf-task-title{font-size:13px;font-weight:700}
#vf-app .vf-schedule-variants .vf-task .vf-task-meta{font-size:10px;font-weight:400}
#vf-app .vf-schedule-group[open]>summary>svg{transform:rotate(180deg)}
#vf-app .vf-schedule-group:not([open])>summary>svg{transform:none}

/* Source-provided portraits and biographies of the festival speakers. */
#vf-app .vf-portrait-photo{height:245px;padding:0}
#vf-app .vf-portrait-photo::before,#vf-app .vf-portrait-photo::after{display:none}
#vf-app .vf-portrait-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 25%}
#vf-app .vf-portrait-photo .vf-pill{position:absolute;left:17px;bottom:17px;background:#381853e8}
#vf-app .vf-portrait-photo.vf-portrait-detail{height:auto;min-height:200px;max-height:none}
#vf-app .vf-portrait-photo.vf-portrait-detail img{height:auto;max-height:520px;object-fit:contain}
#vf-app .vf-portrait img[hidden]{display:none}
#vf-app .vf-biography p{white-space:pre-line;line-height:1.65;margin:0 0 16px}
#vf-app .vf-meeting-description{white-space:pre-line;font-size:13px;color:#80698d;line-height:1.6;margin-bottom:16px}
#vf-app .vf-person-body p{line-height:1.6}
@media(max-width:350px){#vf-app .vf-portrait-photo{height:215px}}

#vf-app a.vf-gift{text-decoration:none}

#vf-app{--vf-nav-height:76px;--vf-safe-bottom:env(safe-area-inset-bottom,0px)}
#vf-app .vf-phone{padding-bottom:calc(var(--vf-nav-height) + var(--vf-safe-bottom))}
#vf-app .vf-nav{position:fixed;inset-inline:0;bottom:0;margin-inline:auto;width:100%;max-width:540px;height:calc(var(--vf-nav-height) + var(--vf-safe-bottom));padding:10px 7px calc(12px + var(--vf-safe-bottom));z-index:20}

#vf-app .vf-wheel-legend-four{grid-template-columns:repeat(2,minmax(0,1fr))}
#vf-app .vf-wheel-legend-four>span{flex-direction:row;justify-content:center;padding:12px 8px;text-align:left}
#vf-app .vf-wheel-legend-four i{flex:none}
#vf-app .vf-certificate-win{margin:15px auto 5px;width:80px;height:68px;display:grid;place-items:center;color:#4d367a;background:#d6f4e9;border:2px solid #fff;border-radius:17px;box-shadow:0 5px 0 #b2dccc;transform:rotate(-5deg)}
#vf-app .vf-certificate-win svg{width:64px;height:56px}
