@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+KR:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,700;0,800;1,700;1,800&display=swap');
:root{--ink:#25202a;--paper:#f6f1e8;--orange:#ff864e;--dark:#19151d;--purple:#b9a0dc;--muted:#5d5362;--line:#ded7cf;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans','Noto Sans KR',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.7}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}button,a{transition:background .18s,color .18s,transform .18s,box-shadow .18s}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #8960bd;outline-offset:4px}[hidden]{display:none!important}h1,h2,h3,p{margin:0}button{color:inherit}h2{font-size:34px;letter-spacing:-1.4px;line-height:1.4}h3{font-size:18px;letter-spacing:-.5px}.topbar{height:94px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 5.5%;border-bottom:1px solid #38313d;background:var(--dark);color:var(--paper)}.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:24px;line-height:1;letter-spacing:-1px}.brand-icon{color:var(--orange);font-size:42px}.brand-sub{display:block;font-size:14px;letter-spacing:4px;margin:8px 0 0 2px}.topbar nav{display:flex;gap:30px}.nav-link{background:none;border:0;color:#e5dfeb;font-size:14px;padding:8px 0}.nav-link:hover{color:var(--orange)}.edition{font-size:14px;font-weight:500;letter-spacing:2px;color:#aaa0b2}.hero{min-height:655px;background:var(--dark);color:var(--paper);display:grid;grid-template-columns:1fr 1fr;gap:25px;padding:76px 8% 66px;overflow:hidden}.eyebrow{font-size:14px;letter-spacing:2px;font-weight:700;display:block}.hero .eyebrow{color:#d6cbdc;display:flex;align-items:center;gap:9px}.live-dot{height:6px;width:6px;background:var(--orange);border-radius:50%}.hero h1{font-family:var(--serif);font-size:clamp(54px,5.8vw,86px);line-height:1.08;letter-spacing:-3px;font-weight:700;margin:25px 0 24px}.hero em{color:var(--orange);font-weight:700}.you{position:relative;font-style:italic}.you svg{position:absolute;bottom:-13px;left:-3%;width:112%;height:22px;fill:none;stroke:var(--purple);stroke-width:3;stroke-linecap:round}.hero-korean{font-size:15px;line-height:1.95;color:#bcb4c4}.btn{display:inline-flex;justify-content:center;align-items:center;gap:26px;padding:16px 24px;border-radius:5px;border:1px solid transparent;font-size:14px;font-weight:700;line-height:1.4;min-height:54px}.primary{background:var(--orange);color:#21191d}.primary:hover{background:#ff9c6e;transform:translateY(-2px)}.secondary{background:transparent;border-color:#cbc1b8;color:var(--ink)}.secondary:hover{background:#eee6db}.light{background:var(--paper);color:var(--ink)}.hero-cta{margin-top:27px;min-width:238px;justify-content:space-between}.hero-cta span{font-size:22px}.hero-note{font-size:14px;color:#aaa0b2;margin:13px 0 34px}.hero-note span{color:var(--purple);font-size:16px;margin-right:4px}.event-line{display:flex;align-items:center;gap:14px;font-size:14px;letter-spacing:1px;color:#a69aaa}.event-line i{width:24px;height:1px;background:#756477}.hero-art{position:relative;min-height:490px;display:flex;align-items:center;justify-content:center}.hero-strip{position:absolute;width:168px;padding:0;box-shadow:0 18px 50px #0008}.hero-strip canvas{display:block;width:100%;height:auto}.strip-back{transform:rotate(-14deg);left:14%;top:1%}.strip-front{transform:rotate(12deg);left:47%;top:7%;width:170px}.orbit{position:absolute;width:460px;height:460px;max-width:110%;border:1px solid #7a57832c;border-radius:50%;left:5%;top:1%}.orbit-two{transform:scale(.8)}.round-sticker{position:absolute;right:-4%;top:2%;background:#d1e1a4;border-radius:50%;width:108px;height:108px;display:flex;align-items:center;justify-content:center;flex-direction:column;line-height:1.1;text-align:center;font-size:16px;font-weight:800;transform:rotate(12deg);box-shadow:0 0 0 5px var(--dark),0 0 0 6px #81856c;color:#252c22}.round-sticker small{font-size:14px;font-style:italic;font-family:var(--serif)}.spark{position:absolute;color:var(--purple)}.s1{font-size:64px;left:-2%;bottom:10%;transform:rotate(12deg)}.s2{font-size:38px;right:0;bottom:4%;color:var(--orange)}.s3{left:12%;top:-5%;font-size:30px}.hand-note{position:absolute;bottom:-23px;left:32%;color:#c0accb;font-style:italic;font-family:var(--serif);font-size:17px;line-height:1.3;transform:rotate(-6deg)}.ticker{height:49px;display:flex;align-items:center;gap:40px;justify-content:center;white-space:nowrap;overflow:hidden;background:var(--purple);font-size:14px;letter-spacing:2px;font-weight:700}.ticker b{font-size:22px;font-weight:400}.collection,.how-section{padding:76px 5.5%}.section-top{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:36px;gap:20px}.section-top h2{margin-top:10px}.section-top p{font-size:14px;color:var(--muted)}.muted{color:var(--muted)}.frame-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:19px}.frame-card{padding:0;background:none;border:0;text-align:left;position:relative;min-width:0}.frame-art{height:310px;border:1px solid #e0d8d0;border-radius:9px;background:#eae1d6;display:flex;align-items:center;justify-content:center;position:relative;transition:.2s;overflow:hidden}.frame-card:nth-child(2) .frame-art{background:#efe1ca}.frame-card:nth-child(3) .frame-art{background:#e2dbea}.frame-card:nth-child(4) .frame-art{background:#e8e5dc}.frame-card:nth-child(5) .frame-art{background:#e8dced}.frame-card canvas{max-height:256px;max-width:82%;height:auto;width:auto;box-shadow:0 8px 15px #3d254327;transition:transform .25s}.frame-card:hover canvas{transform:rotate(-3deg) scale(1.04)}.frame-card:hover .frame-art{border-color:#a995af}.frame-card.selected .frame-art{outline:2px solid #5a426b;outline-offset:3px}.frame-card.selected .check{display:flex}.check{position:absolute;top:11px;right:11px;border-radius:50%;background:#31203e;color:white;width:24px;height:24px;display:none;justify-content:center;align-items:center;font-size:14px}.frame-tag{position:absolute;top:13px;left:13px;font-size:14px;letter-spacing:1px;background:#fff9;padding:3px 7px;border-radius:3px}.frame-name{font-family:var(--serif);font-size:19px;margin-top:15px;display:block}.frame-desc{color:var(--muted);font-size:14px;display:flex;justify-content:space-between;margin-top:4px}.frame-desc b{font-weight:400;color:#6d596f}.how-section{border-top:1px solid var(--line);padding-top:53px}.how-section h2{margin-top:9px;font-size:28px}.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;margin-top:31px}.how-grid>div{border-top:1px solid var(--line);padding-top:20px}.how-grid span{font-size:14px;letter-spacing:2px;color:#8a648f}.how-grid h3{font-size:16px;margin:13px 0 6px}.how-grid p{font-size:14px;color:var(--muted)}footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:25px;padding:30px 5.5%;font-size:14px;color:var(--muted)}footer span:last-child{font-size:14px;letter-spacing:1.4px}.footer-brand{font-size:15px;color:var(--ink);letter-spacing:-.5px}.booth{max-width:1440px;margin:auto;padding:0 5.5% 80px;min-height:calc(100vh - 180px)}.booth-top{display:flex;align-items:center;justify-content:space-between;padding:25px 0;border-bottom:1px solid var(--line);gap:20px}.text-btn{background:none;border:0;padding:5px 0;font-size:14px}.text-btn:hover{color:#a45b2b}.steps{display:flex;gap:26px;list-style:none;margin:0;padding:0;color:#a79da6;font-size:14px}.steps li{display:flex;align-items:center;gap:8px}.steps b{font-size:14px;border:1px solid #d0c6ca;border-radius:50%;height:25px;width:25px;display:flex;align-items:center;justify-content:center}.steps li.active{color:#3e264b;font-weight:700}.steps .active b{background:#3e264b;color:#fff;border-color:#3e264b}.steps li.done{color:#7a687e}.center-heading{text-align:center;margin:39px 0 34px}.center-heading h2{margin:8px 0 9px;font-size:31px}.center-heading p{font-size:14px;color:var(--muted)}.step-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:32px;padding-top:24px;border-top:1px solid var(--line);gap:15px}.step-bottom>span{font-size:14px;color:#7d6b7e}.capture-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(240px,1fr);gap:35px;max-width:1120px;margin:auto}.camera-stage{aspect-ratio:4/3;background:#26202e;border-radius:9px;position:relative;overflow:hidden;color:var(--paper)}.camera-stage video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1);display:block}.camera-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;background:radial-gradient(ellipse at 50% 25%,#46334e,#241e2b);text-align:center;padding:20px}.camera-symbol{font-size:64px;line-height:1;margin-bottom:20px;color:#b8a0ca}.camera-empty h3{font-size:19px}.camera-empty p{font-size:14px;color:#baacc4;margin:8px 0 21px}.camera-corners{position:absolute;inset:20px;border:1px solid #f5e8ff26;border-radius:3px;pointer-events:none}.live-label{position:absolute;left:31px;top:28px;font-size:14px;letter-spacing:1px;color:var(--orange)}.shot-count{position:absolute;right:31px;top:28px;font-size:14px;color:#e8dfec}.countdown{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:100px;font-family:var(--serif);text-shadow:0 3px 15px #0006;pointer-events:none}.flash{position:absolute;inset:0;background:#fff;opacity:0;pointer-events:none}.flash.fire{animation:flash .4s ease-out}@keyframes flash{0%{opacity:1}100%{opacity:0}}.camera-controls{display:flex;justify-content:space-between;align-items:center;margin:14px 0 23px;gap:12px;font-size:14px}.camera-controls select{background:transparent;border:0;color:var(--ink);padding:4px}.check-label{display:flex;align-items:center;gap:5px}.check-label input{accent-color:#795788}.capture-actions{display:flex;gap:12px}.capture-actions .btn{flex:1}.small-note{font-size:14px;color:var(--muted);line-height:1.7;margin-top:12px}.status{font-size:14px;color:#9b443a;line-height:1.8;margin-top:12px;min-height:20px}.shot-sidebar{border:1px solid var(--line);border-radius:9px;padding:24px;align-self:start}.sidebar-heading{display:flex;justify-content:space-between;align-items:center}.sidebar-heading span{font-size:14px;color:#8c758e}.shot-sidebar>p{font-size:14px;color:var(--muted);margin:6px 0 20px}.shot-slots{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:24px}.shot-slot{position:relative;aspect-ratio:4/3;border:1px dashed #c8b9cb;background:#eee6ee;border-radius:5px;overflow:hidden;color:#97879e;font-size:24px;padding:0}.shot-slot img{width:100%;height:100%;object-fit:cover;display:block}.shot-slot small{position:absolute;bottom:4px;left:5px;font-size:14px;background:#231829bb;color:#fff;padding:2px 6px;border-radius:3px}.full{width:100%;justify-content:space-between}.edit-layout,.save-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;max-width:920px;margin:auto}.preview-mat{background:radial-gradient(ellipse at center,#ece3f0,#e4dbe6);border-radius:10px;min-height:600px;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:32px 24px 22px;gap:24px;position:relative}.preview-mat canvas,.preview-mat img{max-width:90%;max-height:600px;width:auto;height:auto;box-shadow:0 12px 25px #4c2d4d24;display:block}.preview-caption{font-size:14px;letter-spacing:1.5px;color:#927f98}.edit-controls{padding:2px 0}.control-block{border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:23px}.control-kicker{font-size:14px;letter-spacing:1.5px;color:#997ca2}.control-block h3{margin:5px 0 16px}.filter-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.filter-grid button{padding:12px 5px;border:1px solid var(--line);border-radius:5px;background:transparent;font-family:var(--serif);font-size:14px}.filter-grid button span{display:block;font-family:var(--sans);font-size:14px;color:var(--muted);margin-top:3px}.filter-grid button.active{border-color:#5c426b;background:#e9dfec}.edit-thumbs{display:flex;gap:8px}.edit-thumbs button{padding:2px;background:none;border:1px solid transparent;border-radius:5px;flex:1;max-width:80px;aspect-ratio:1}.edit-thumbs button.active{border-color:#725084}.edit-thumbs img{height:100%;width:100%;object-fit:cover;border-radius:3px}.mini-actions{display:flex;gap:7px;margin:12px 0 17px}.small-btn{border:1px solid var(--line);border-radius:4px;background:transparent;font-size:14px;padding:7px 10px}.range-label{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:14px;margin:12px 0}.range-label input[type=range]{width:70%;accent-color:#795788}.range-label .muted{font-size:14px}.save-controls{align-self:center}.save-spark{font-size:50px;color:#9471a8;line-height:1}.save-controls h3{font-family:var(--serif);font-size:43px;line-height:1.15;letter-spacing:-1.2px;margin:12px 0 20px}.save-controls>p{color:var(--muted);font-size:14px;margin-bottom:25px}.save-controls>.btn{margin-bottom:10px}.save-controls>.small-note{font-size:14px;line-height:1.8;margin-bottom:4px}.save-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:20px;padding-top:16px}.qr-panel{margin:18px 0;padding:24px 15px;background:#fff;border:1px solid var(--line);border-radius:8px;text-align:center}.qr-panel svg{display:block;margin:auto;width:200px;max-width:100%;height:auto}.qr-panel strong{font-size:14px;display:block;margin:12px 0 4px}.qr-panel p{font-size:14px;color:var(--muted);line-height:1.8}.qr-panel a{display:block;font-size:14px;color:#725084;text-decoration:underline;margin:8px 0}.qr-panel button{margin:5px 8px;font-size:14px}dialog{border:1px solid var(--line);border-radius:12px;background:var(--paper);padding:38px;width:min(530px,90vw);color:var(--ink);box-shadow:0 20px 100px #0005}dialog::backdrop{background:#160e20bb;backdrop-filter:blur(4px)}dialog h2{font-size:25px;margin:15px 0 25px}dialog ol{padding-left:20px}dialog li{padding:0 0 16px 8px;font-size:14px}dialog li p{font-size:14px;color:var(--muted);margin-top:5px}.close-btn{position:absolute;top:12px;right:18px;border:0;background:none;font-size:28px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#33213e;color:white;box-shadow:0 4px 20px #0003;border-radius:7px;padding:13px 24px;z-index:20;font-size:14px;max-width:90vw;text-align:center}.receive{min-height:85vh;max-width:560px;margin:0 auto;padding:50px 24px;text-align:center}.receive h1{font-family:var(--serif);font-size:40px;line-height:1.2;margin:15px 0}.receive p{font-size:14px;color:var(--muted);margin:12px 0 25px}.receive-photo{max-width:100%;max-height:65vh;margin:15px auto 30px;display:block;box-shadow:0 10px 30px #412f4822}.receive .btn{margin:5px 0}
@media(min-width:1500px){.hero{padding-left:max(8%,calc((100vw - 1250px)/2));padding-right:max(8%,calc((100vw - 1250px)/2))}.collection,.how-section{max-width:1450px;margin:auto}}
@media(max-width:1050px){.edition{display:none}.hero{padding:65px 5.5%;gap:10px}.hero h1{font-size:65px}.hero-strip{width:140px}.strip-front{width:145px;left:49%}.hero-art{min-height:460px}.round-sticker{width:85px;height:85px;font-size:14px;right:-3%}.frame-art{height:260px}.frame-card canvas{max-height:210px;max-width:82%}.frame-name{font-size:16px}.frame-desc{font-size:14px}.edit-layout,.save-layout{gap:32px}.preview-mat{min-height:500px}.preview-mat canvas,.preview-mat img{max-height:540px}.topbar{height:82px}.steps{gap:16px}}
@media(max-width:760px){h2{font-size:26px}.topbar{padding:0 6%;height:77px}.brand{font-size:20px}.brand-icon{font-size:34px}.brand-sub{font-size:14px;letter-spacing:3px}.topbar nav{gap:18px}.nav-link{font-size:14px}.topbar nav [data-home]{display:none}.hero{grid-template-columns:1fr;padding:43px 7% 45px;text-align:center;gap:24px}.hero-copy .eyebrow{justify-content:center;font-size:14px}.hero h1{font-size:61px;letter-spacing:-2.5px;margin-top:22px}.hero-korean{font-size:14px}.hero-cta{margin-top:24px}.hero-note{margin-bottom:22px}.event-line{justify-content:center;font-size:14px}.hero-art{width:320px;max-width:90vw;margin:auto;min-height:385px;margin-top:20px}.hero-strip{width:115px;left:14%;top:1%}.strip-front{width:120px;left:48%;top:9%}.orbit{width:330px;height:330px;max-width:100%;left:0}.round-sticker{right:-2%;top:3%;width:75px;height:75px;font-size:14px}.s1{font-size:44px;bottom:10%;left:0}.s2{bottom:4%;font-size:28px}.hand-note{font-size:14px;bottom:-9px}.ticker{height:41px;font-size:14px;gap:25px}.collection,.how-section{padding:43px 6%}.section-top{align-items:flex-start;gap:12px;margin-bottom:23px;flex-direction:column}.section-top p{font-size:14px}.section-top p br{display:none}.frame-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 17px}.frame-card:last-child{grid-column:auto}.frame-art{height:275px}.frame-card canvas{max-height:235px;max-width:83%}.frame-name{font-size:17px}.frame-desc{font-size:14px}.how-grid{grid-template-columns:1fr;gap:22px}.how-grid>div{padding-top:16px}.how-grid h3{margin-top:8px}.how-section h2{font-size:26px}footer{flex-direction:column;align-items:flex-start;gap:13px;padding:27px 6%}.booth{padding:0 6% 40px}.booth-top{flex-direction:column;align-items:flex-start;gap:15px;padding:16px 0}.steps{width:100%;justify-content:space-between;gap:9px;font-size:14px}.steps li{gap:5px}.steps b{font-size:14px;width:22px;height:22px}.center-heading{margin:28px 0 25px}.center-heading h2{font-size:25px}.center-heading p{font-size:14px}.step-bottom{align-items:stretch;flex-direction:column}.step-bottom .btn{justify-content:space-between}.capture-layout,.edit-layout,.save-layout{grid-template-columns:1fr;gap:25px}.camera-empty h3{font-size:16px}.camera-empty p{font-size:14px}.camera-symbol{font-size:44px;margin-bottom:12px}.camera-controls{font-size:14px;gap:8px}.camera-controls .text-btn{font-size:14px}.camera-empty .btn{padding:12px 20px;min-height:44px}.shot-sidebar{padding:20px}.shot-slots{grid-template-columns:repeat(4,1fr)}.shot-slot{font-size:19px}.shot-slot small{font-size:7px}.preview-mat{min-height:0;padding:25px 20px 18px}.preview-mat canvas,.preview-mat img{max-height:540px;max-width:85%}.edit-controls{padding-top:4px}.save-controls h3{font-size:37px}.save-controls{text-align:center}.save-controls .full{justify-content:center}.save-spark{display:none}.capture-actions .btn{font-size:14px;padding:14px 12px;gap:10px}.hero .eyebrow{letter-spacing:1.5px}dialog{padding:30px 23px}dialog h2{font-size:22px}}
.mask-picker{max-width:1120px;margin:0 auto 26px;padding:20px 23px 14px;background:#eee6f0;border:1px solid #dfd2e5;border-radius:10px}.mask-picker-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:13px}.mask-picker-top h3{font-size:17px;margin-top:2px}.mask-optional{font-size:14px;color:#8a7594}.mask-options{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:9px}.mask-option{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:1px solid #d9cddf;border-radius:8px;background:#faf7f7;padding:7px 4px 10px;font-size:14px;line-height:1.4;min-height:93px}.mask-option canvas{display:block;width:62px;height:62px;max-width:100%}.mask-option:hover{background:#fff;transform:translateY(-2px);border-color:#b098c2}.mask-option.selected{border:2px solid #694880;background:#f9f3ff;padding:6px 3px 9px;box-shadow:0 2px 7px #51335f13}.mask-option.selected::after{content:'✓';position:absolute;right:6px;top:5px;font-size:14px;border-radius:50%;width:16px;height:16px;text-align:center;line-height:16px;color:white;background:#694880}.mask-option:disabled{opacity:.65;transform:none}.mask-info{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:13px;font-size:14px;min-height:25px}.mask-info p{color:#70567d}.mask-info>span{font-size:14px;color:#7e6d86;background:#ffffff70;padding:4px 9px;border-radius:20px;text-align:right}.mask-info>span[data-state=tracking]{color:#3e6c50;background:#e2eddf}.mask-info>span[data-state=error]{color:#a34f3f;background:#f8e5de}.mask-info>span[data-state=loading]{color:#7b5e96;background:#e5daef}.mask-tip{font-size:14px;color:#8d7b94;line-height:1.7;margin-top:7px}.mask-overlay{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;pointer-events:none;transform:scaleX(-1)}.camera-stage .countdown{z-index:2}.camera-stage .flash{z-index:3}
@media(max-width:760px){.mask-picker{padding:15px 12px 12px;margin-bottom:20px}.mask-picker-top{gap:10px;align-items:flex-end}.mask-picker-top h3{font-size:16px}.mask-picker .control-kicker{font-size:14px}.mask-optional{font-size:14px;max-width:120px;text-align:right}.mask-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.mask-option{min-height:84px;font-size:14px}.mask-option canvas{width:54px;height:54px}.mask-info{align-items:flex-start;flex-direction:column;gap:7px;font-size:14px}.mask-info>span{font-size:14px;text-align:left}.mask-tip{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Readable controls and clear next-session action. */
.hero-korean{font-size:17px;color:#e1d9e7;line-height:1.9}
.hero-note,.edition{color:#cfc4d7}
.eyebrow,.control-kicker,.preview-caption{letter-spacing:1px}
.control-kicker,.preview-caption,.mask-optional,.mask-tip{color:#62506e}
.preview-caption{text-align:center;line-height:1.6}
.frame-desc,.section-top p,.how-grid p,.center-heading p,.shot-sidebar>p,.save-controls>p,.receive p,dialog li p{font-size:16px;line-height:1.75}
.frame-name{font-family:var(--sans);font-size:19px;font-weight:700;line-height:1.5}
.frame-desc{display:block}.frame-desc b{margin-left:8px}
.frame-tag{background:#fff4e4;color:#34283c;font-weight:700}
.steps{color:#65596b;font-weight:600;flex-wrap:wrap}.steps li.done{color:#594363}
.btn{font-size:17px;min-height:56px}.nav-link{font-size:16px;font-weight:600;min-height:44px}
.text-btn,.small-btn{font-size:15px;min-height:44px}.small-btn{font-weight:600}
.camera-controls,.range-label,.mask-option,.mask-info{font-size:15px}
.camera-empty p{font-size:15px;color:#ddd0e6}.live-label,.shot-count{font-size:14px;background:#21162bda;padding:4px 8px;border-radius:4px}
.sidebar-heading span,.step-bottom>span{color:#62506e}
.mask-info>span{color:#584463}.mask-info>span[data-state=loading]{color:#594071}
.small-note,.save-controls>.small-note,.qr-panel p{font-size:14px;color:var(--muted);line-height:1.8}
.filter-grid button{font-family:var(--sans);font-size:16px;font-weight:700}.filter-grid button span{font-size:14px;font-weight:500}
.save-bottom{display:flex;flex-direction:column;gap:14px;padding-top:24px;margin-top:24px}
.restart-btn{order:-1;width:100%;min-height:72px;justify-content:center;gap:14px;background:#3e264b;color:#fff;border:2px solid #3e264b;border-radius:9px;font-size:22px;font-weight:800;box-shadow:0 6px 16px #3e264b24}
.restart-btn span{font-size:30px;line-height:1}.restart-btn:hover{background:#59366b;border-color:#59366b;transform:translateY(-2px)}
.save-bottom #back-edit{align-self:center;font-size:16px;text-decoration:underline;text-underline-offset:4px}
@media(max-width:1050px) and (min-width:761px){.frame-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.mask-options{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.topbar nav{gap:14px}.nav-link{font-size:14px}.frame-name{font-size:17px}.frame-desc{font-size:14px}.hero .eyebrow{font-size:12px;letter-spacing:1px}.camera-controls{flex-wrap:wrap;font-size:14px}.camera-controls .text-btn{font-size:14px}.capture-actions{flex-wrap:wrap}.capture-actions .btn{font-size:16px;min-height:54px}.steps{font-size:14px;gap:8px}.steps li{gap:4px}.mask-picker-top{align-items:flex-start;flex-direction:column}.mask-optional{max-width:none;text-align:left}.mask-option{font-size:14px;min-height:96px}.mask-info,.mask-info>span,.mask-tip,.mask-picker .control-kicker{font-size:14px}.mini-actions{flex-wrap:wrap}.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.range-label{font-size:15px}.range-label input[type=range]{width:65%}.restart-btn{min-height:72px;font-size:22px}.shot-slots{grid-template-columns:repeat(2,minmax(0,1fr))}.shot-slot small{font-size:12px}}

@media(max-width:400px){.topbar{height:auto;min-height:86px;flex-wrap:wrap;gap:12px;padding-top:16px;padding-bottom:16px}.topbar nav{margin-left:auto}.steps b{width:20px;height:20px;font-size:12px}}

.new-mark{display:inline-block;font-family:var(--sans);font-size:10px;letter-spacing:.6px;font-weight:700;color:#694880;border:1px solid #baa5c5;border-radius:3px;padding:1px 4px;margin-left:7px;vertical-align:middle}
/* Language controls keep every writing system readable in the existing theme. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.topbar{height:auto;min-height:94px;flex-wrap:wrap;padding-top:20px;padding-bottom:20px;gap:20px}.topbar nav{margin-left:auto}.language-control{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;border:1px solid #b9a0dc66;border-radius:5px;padding:5px 9px;color:inherit;font-size:14px}.language-control>span[aria-hidden]{color:var(--purple);font-size:21px;line-height:1}.language-control select{min-height:34px;max-width:162px;border:0;background:transparent;color:inherit;padding:3px 20px 3px 0;font-size:14px;cursor:pointer;font-family:var(--sans)}.language-control option{background:#f6f1e8;color:#25202a}.topbar .language-control{color:#f6f1e8}.receive-language{display:flex;width:max-content;margin:0 0 30px auto;color:var(--ink);border-color:var(--line)}.receive-language>span[aria-hidden]{color:#725084}
button,.btn,.text-btn{overflow-wrap:break-word}.steps{flex-wrap:wrap}.filter-grid button{overflow-wrap:anywhere}.mask-option{overflow-wrap:anywhere}.camera-controls{flex-wrap:wrap}.mini-actions{flex-wrap:wrap}.range-label{flex-wrap:wrap}.hero-cta,.step-bottom .btn{gap:16px}.brand{flex-shrink:0}
html[lang="ja"] body,html[lang^="zh"] body{line-height:1.85}html[lang="th"] body{line-height:1.9}
@media(max-width:1050px){.topbar{min-height:82px}.topbar nav{gap:20px}.language-control select{max-width:145px}.steps{gap:13px}.frame-desc{overflow-wrap:anywhere}}
@media(max-width:760px){.topbar{min-height:0;gap:15px;padding-top:17px;padding-bottom:14px}.topbar nav{order:3;margin:0;width:100%;justify-content:center;gap:30px;border-top:1px solid #38313d;padding-top:10px}.topbar .language-control{margin-left:auto}.language-control{padding:4px 7px;gap:5px}.language-control select{max-width:136px;font-size:13px}.brand{font-size:20px}.brand-icon{font-size:30px}.steps{font-size:12px;row-gap:12px}.steps li{min-width:40%}.capture-actions{flex-wrap:wrap}.capture-actions .btn{min-width:45%;font-size:15px}.mask-option{font-size:12px;min-height:105px}.camera-controls .text-btn{font-size:14px}.hero-cta{max-width:100%}.range-label input[type=range]{min-width:55%}.step-bottom .btn{font-size:16px}.save-bottom .restart-btn{font-size:21px}}
@media(max-width:360px){.topbar{padding-left:5%;padding-right:5%;gap:9px}.language-control select{max-width:116px}.brand{font-size:18px}.brand-icon{font-size:25px}}
