:root{--paper:#f6f3ec;--ink:#202621;--muted:#686b61;--line:#dfded4;--red:#ac3028;--forest:#193c32}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,'PingFang SC',sans-serif;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #b9623e;outline-offset:4px}[hidden]{display:none!important}.topbar{height:104px;max-width:1440px;padding:20px 6%;margin:auto;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:13px;align-items:center;text-decoration:none;font-weight:750;font-size:22px;letter-spacing:.025em}.brand img{width:49px;height:49px;object-fit:cover;border-radius:50%}.brand small{display:block;font-size:9px;letter-spacing:.13em;font-weight:400;margin-top:7px;color:var(--muted)}.languages{display:flex;gap:4px}.languages button{background:none;border:0;color:#62675f;padding:10px 12px;border-radius:5px;font-size:12px}.languages button[aria-pressed=true]{background:var(--ink);color:white}.experience{max-width:1280px;margin:8px auto 34px;display:grid;grid-template-columns:1fr 1fr;min-height:700px;border:1px solid var(--line)}.story{position:relative;isolation:isolate;color:#fff9ee;min-height:700px;overflow:hidden;background:#293a30}.restaurant{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3}.story-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,25,19,.24),rgba(12,25,19,.26) 30%,rgba(12,25,19,.90) 100%);z-index:-2}.story-top,.story-bottom{position:absolute;left:8%;right:8%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.15em}.story-top{top:36px}.story-top span:first-child{font-size:13px}.story-bottom{bottom:32px;font-size:10px;letter-spacing:.06em}.story-copy{position:absolute;left:8%;right:8%;bottom:95px}.eyebrow{display:block;font-size:10px;font-weight:600;letter-spacing:.18em;line-height:1.8}.red{color:var(--red)}.story h1{font-family:Georgia,'Songti SC',serif;font-size:58px;font-weight:400;line-height:1.08;letter-spacing:-.04em;margin:20px 0 24px}.story-copy p{font-size:15px;line-height:1.7;color:#ebe7d9}.story-rule{width:42px;height:1px;background:#e2d9bd;margin:25px 0 20px}.signature{font-family:Georgia,serif;font-style:italic;font-size:16px}.content{padding:58px 58px 26px;display:flex;flex-direction:column;justify-content:center;background:#fcfaf5}.content h2{font-family:Georgia,'Songti SC',serif;font-size:46px;font-weight:400;line-height:1.12;letter-spacing:-.035em;margin:18px 0 20px}.intro{font-size:14px;line-height:1.8;color:var(--muted);margin:0 0 28px;max-width:410px}.choices{display:grid;gap:14px}.choice{width:100%;min-height:95px;display:flex;align-items:center;text-align:left;gap:16px;border:1px solid #c9cec4;background:transparent;text-decoration:none;padding:20px;border-radius:8px;color:var(--ink);transition:background .2s,border-color .2s,transform .2s}.choice:hover{border-color:#708673;background:#f1f1e8;transform:translateY(-2px)}.choice strong{font-size:15px;display:block;font-weight:600;line-height:1.4}.choice small{display:block;font-size:11px;margin-top:6px;line-height:1.5;color:var(--muted)}.choice-icon{width:38px;height:38px;flex-shrink:0;display:grid;place-items:center;font-size:27px;color:var(--forest)}.google{font:600 29px Arial;color:#4285f4}.arrow{font-size:20px;margin-left:auto;color:var(--forest)}.reassurance{font-size:11px;line-height:1.7;color:var(--muted);margin:19px 0 25px}.thank-note{border-top:1px solid var(--line);display:flex;gap:15px;align-items:center;padding-top:20px}.thank-note>span{font-size:26px;color:var(--red)}.thank-note p{font-family:Georgia,'Songti SC',serif;font-style:italic;color:var(--muted);font-size:14px;line-height:1.6;margin:0}.content-footer{display:flex;justify-content:space-between;align-items:center;margin-top:40px;font-size:10px;color:var(--muted)}.content-footer a{text-decoration:none}.content-footer button{border:0;background:none;color:inherit;font-size:10px;padding:8px 0}.preview-bar{max-width:1280px;margin:0 auto 24px;padding:0 1px;display:flex;gap:20px;justify-content:space-between;color:var(--muted);font-size:11px;line-height:1.6}.preview-bar a{white-space:nowrap}.back{display:block;background:none;border:0;color:var(--muted);padding:5px 0;margin-bottom:28px;font-size:12px}.content .form-title{font-size:35px;margin:10px 0 12px}fieldset{border:0;margin:0 0 20px;padding:0}legend,.field>span{font-size:12px;font-weight:600;display:block;margin-bottom:10px}.chips{display:flex;flex-wrap:wrap;gap:7px}.chips label{position:relative}.chips input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}.chips span{display:block;border:1px solid var(--line);border-radius:30px;padding:8px 12px;font-size:11px}.chips input:checked+span{background:var(--forest);color:white;border-color:var(--forest)}.chips input:focus-visible+span{outline:3px solid #b9623e;outline-offset:3px}.field{display:block;margin-bottom:17px}.field input,.field textarea{display:block;width:100%;border:1px solid #ccd0c5;padding:11px 12px;background:#fffefa;color:var(--ink);border-radius:5px;font-size:14px;line-height:1.6;min-width:0}.field textarea{resize:vertical}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.privacy-note{font-size:11px;color:var(--muted);line-height:1.7;margin:0 0 18px}.submit{width:100%;background:var(--forest);color:#fff;border:0;border-radius:6px;padding:16px;font-size:14px}.submit:disabled{opacity:.6;cursor:wait}.error{color:#a72b26;font-size:13px;line-height:1.5}.mail-fallback{font-size:11px;color:var(--muted);display:inline-block;margin-top:10px;line-height:1.6}.success-icon{background:#e8eddf;color:var(--forest);width:68px;height:68px;display:grid;place-items:center;border-radius:50%;font-size:30px;margin-bottom:28px}.receipt{font:12px monospace;color:var(--muted);margin-bottom:26px}#again{margin-top:24px}.preview-bar span{max-width:75%}dialog{max-width:480px;border:1px solid var(--line);background:var(--paper);padding:35px;color:var(--ink);line-height:1.8;border-radius:10px}dialog::backdrop{background:#10221988}dialog h2{font:30px Georgia,serif}dialog p,dialog a{font-size:13px}.dialog-close{float:right;border:0;background:none;font-size:25px;padding:4px 10px}.owner-main{max-width:1180px;margin:30px auto;padding:0 28px 50px}.owner-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.owner-heading h1{font-size:32px;font-weight:500}.owner-heading p,.owner-note{font-size:13px;color:var(--muted);line-height:1.8}.owner-nav{display:flex;gap:8px;margin:32px 0 22px;border-bottom:1px solid var(--line);padding-bottom:15px}.owner-nav button,.small-button{padding:11px 16px;border:1px solid #b9c2b3;border-radius:5px;background:transparent;color:var(--ink);font-size:12px;text-decoration:none}.owner-nav button.active{background:var(--forest);color:white}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.stat{padding:25px;background:#fcfaf5;border:1px solid var(--line);border-radius:8px}.stat strong{display:block;font-size:32px;font-weight:400;margin-top:10px}.stat span{font-size:12px;color:var(--muted)}.inbox-tools{display:flex;justify-content:space-between;align-items:center;margin:28px 0 15px}.inbox-tools select{padding:10px;background:#fcfaf5;border:1px solid var(--line);border-radius:4px}.feedback-card{padding:24px;border:1px solid var(--line);background:#fcfaf5;border-radius:8px;margin-bottom:13px}.feedback-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:11px;color:var(--muted)}.badge{padding:5px 9px;background:#e8eddf;border-radius:20px;color:var(--forest)}.feedback-message{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;font-size:14px}.feedback-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px;align-items:center}.feedback-actions select{padding:8px;border:1px solid var(--line);background:white;border-radius:4px;font-size:12px}.feedback-actions a{font-size:12px}.feedback-actions button{font-size:12px;padding:8px 11px;background:none;border:1px solid var(--line);border-radius:4px}.empty{padding:65px 25px;text-align:center;background:#fcfaf5;border:1px dashed #c9cec4;border-radius:8px;color:var(--muted);line-height:1.8}.invite-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.panel{background:#fcfaf5;border:1px solid var(--line);padding:28px;border-radius:8px}.panel h2{font-size:19px;font-weight:500;margin:0 0 22px}.panel p,.panel li{font-size:13px;line-height:1.9}.panel li{margin-bottom:10px}.panel textarea{width:100%;min-height:230px;padding:16px;line-height:1.8;font-size:13px;border:1px solid var(--line);background:#fffefa;border-radius:5px}.panel select{padding:10px;margin-bottom:20px;background:#fffefa;border:1px solid var(--line)}.sample-label{font-size:11px;background:#e8eddf;padding:8px 12px;border-radius:20px;color:var(--forest)}.owner-alert{color:var(--red);font-size:12px;line-height:1.8}.button-row{display:flex;gap:10px;margin-top:15px;flex-wrap:wrap}.feedback-contact{font-size:12px;color:var(--muted);overflow-wrap:anywhere}.toast{font-size:12px;color:var(--forest);min-height:20px;margin-top:12px}.linkbox{overflow-wrap:anywhere;font-size:12px;background:#efece3;padding:15px;line-height:1.7}body:has(#feedbackPanel:not([hidden])) .content{padding-top:30px}body:has(#feedbackPanel:not([hidden])) .content-footer{margin-top:20px}@media(min-width:1500px){.experience{margin-top:36px}}@media(max-width:1350px){.experience,.preview-bar{margin-left:5%;margin-right:5%}.content{padding:45px 36px 25px}.story h1{font-size:52px}}@media(max-width:850px){.experience{grid-template-columns:1fr;max-width:600px;margin:0 auto 22px}.story{min-height:260px}.story-copy{bottom:28px;left:7%}.story h1{font-size:38px;margin:10px 0 8px}.story-copy p,.story-rule,.signature,.story-bottom{display:none}.story-top{top:25px;left:7%;right:7%}.story-shade{background:linear-gradient(180deg,#0c19133d,#0c1913b8)}.restaurant{object-position:50% 45%}.content{padding:35px 30px 20px}.content h2{font-size:36px}.topbar{height:90px;padding:18px 6%}.brand{font-size:19px}.brand small{font-size:7px}.brand img{width:42px;height:42px}.languages button{padding:9px}.preview-bar{max-width:600px;margin:0 auto 20px;padding:0 15px;font-size:10px}.content-footer{margin-top:28px}.invite-grid{grid-template-columns:1fr}.owner-heading{align-items:start}.owner-heading h1{font-size:25px}.stats{gap:8px}.stat{padding:17px}.stat strong{font-size:26px}}@media(max-width:400px){.content{padding:30px 22px 20px}.brand small{display:none}.choice{padding:16px 12px;gap:10px}.choice strong{font-size:14px}.choice small{font-size:10px}.preview-bar{flex-direction:column;gap:5px}.preview-bar span{max-width:100%}.field-row{grid-template-columns:1fr}.owner-main{padding:0 16px 30px}.owner-heading{flex-direction:column}.stat{padding:15px 10px}.stats .stat span{font-size:11px}.panel{padding:20px}.inbox-tools{gap:10px;flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* Standalone public demonstration without externally hosted images. */
.brand img,.restaurant{display:none!important}
.story{background:linear-gradient(135deg,#151817,#3a2923 55%,#171414)}

.brand img{object-fit:contain;border-radius:0;background:transparent;width:64px;height:68px}.setup-note{padding:12px 14px;border-radius:8px;background:#fff3de;color:#73533b;font-size:12px;line-height:1.6;margin:8px 0 16px}.submit:disabled{opacity:.58;cursor:not-allowed}.story h1{font-weight:600}.preview-bar{font-weight:600}@media(max-width:600px){.brand img{width:54px;height:58px}}

/* Local preview uses the supplied CHIYO material. */
.brand img,.restaurant{display:block!important}

/* Softer, slightly heavier typography, matching the CHIYO website. */
@font-face{font-family:Nunito;src:url('./fonts/nunito.woff2') format('woff2');font-style:normal;font-weight:400 900;font-display:swap}
@font-face{font-family:'CHIYO Round CN';src:url('./fonts/chiron-rounded-zh.woff2') format('woff2');font-style:normal;font-weight:400 900;font-display:swap}
body{font-family:Nunito,'CHIYO Round CN',sans-serif;font-weight:550}
.story h1,.content h2{font-family:Nunito,'CHIYO Round CN',sans-serif;font-weight:700;letter-spacing:-.02em}
.choice strong{font-weight:750}
.choice small,.intro{font-weight:600}
.choices a.choice{background:#f2c7c1;border-color:#e4a59c}
.choices button.choice{background:#e8f0e8;border-color:#cddfce}

/* CHIYO's red palette and matching two-line brand. */
:root{--paper:#fff5f2;--ink:#35191b;--muted:#755257;--line:#e5c7c5;--red:#b70e18;--forest:#a20e19}
.story{background:#78101a}.story-shade{background:linear-gradient(180deg,#5a081133,#5a081155 30%,#530711ed 100%)}
.content{background:#fff8f5}.choices a.choice{background:#edc1bd;border-color:#dc8b89}.choices button.choice{background:#fae2df;border-color:#e6bbb9}.choice:hover{background:#f6d4d0;border-color:#bb3139}
.brand img{clip-path:inset(0 0 16% 0)}
.brand>span{display:inline-grid;justify-items:center;line-height:1}
.brand b,.brand small{display:block;color:#c60d1b;text-align:center;paint-order:stroke fill;text-shadow:1px 2px 0 #231718}
.brand b{font-size:19px;font-weight:900;-webkit-text-stroke:1.5px #231718;white-space:nowrap}
.brand small{display:block;font-family:"Hiragino Kaku Gothic StdN","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:32px;font-weight:900;letter-spacing:-.03em;line-height:1.08;margin-top:5px;-webkit-text-stroke:2.2px #231718}
.brand b>span{display:inline-flex;align-items:baseline;white-space:nowrap}
.brand b i{display:inline-block;font-style:normal;letter-spacing:-.01em}
.brand b i:nth-child(1){transform:rotate(-9deg) translateY(1px)}.brand b i:nth-child(2){transform:rotate(5deg) translateY(-1px)}.brand b i:nth-child(3){transform:rotate(-6deg) translateY(1px)}.brand b i:nth-child(4){transform:rotate(8deg) translateY(-2px)}.brand b i:nth-child(5){transform:rotate(-7deg) translateY(1px)}.brand b i.word-gap{width:.34em}.brand b i:nth-child(7){transform:rotate(7deg) translateY(-1px)}.brand b i:nth-child(8){transform:rotate(-8deg) translateY(1px)}.brand b i:nth-child(9){transform:rotate(5deg) translateY(-2px)}.brand b i:nth-child(10){transform:rotate(-6deg) translateY(1px)}.brand b i:nth-child(11){transform:rotate(8deg) translateY(-1px)}
@media(max-width:600px){.brand{gap:5px}.brand b{font-size:14px;-webkit-text-stroke:1px #231718}.brand small{display:block;font-size:23px;-webkit-text-stroke:1.7px #231718}.languages button{padding:7px}}
@media(max-width:360px){.brand img{width:44px;height:50px}.brand b{font-size:12px}.brand small{font-size:20px}.languages button{padding:5px}}

body{background:#a90e1b}
.topbar{background:#fff5ed;border-radius:0 0 18px 18px}
.experience{border-color:#d66265}
.content{background:#a90e1b;color:#fff8f2}
.content h2,.content .eyebrow,.content .intro,.thank-note p,.thank-note>span,.content-footer,.back,.privacy-note,.setup-note,.preview-bar{color:#fff8f2}
.choices a.choice{background:#f3c2bf;border-color:#f3c2bf;color:#35191b}
.choices button.choice{background:#fbe1dc;border-color:#fbe1dc;color:#35191b}
.choice small{color:#614047}
.setup-note{background:#81101a}
.chips span{border-color:#efb1ad}.field input,.field textarea{background:#fff8f5;color:#35191b}
.submit,.chips input:checked+span{background:#fff5ed;color:#94101a;border-color:#fff5ed}

.topbar{background:transparent;border-radius:0}
.topbar .brand{background:#fff5ed;border-radius:16px;padding:5px 10px}
.topbar .languages button{color:#fff8f2}
.topbar .languages button[aria-pressed=true]{background:#fff5ed;color:#8a0c17}
.topbar .brand b i:nth-child(n){transform:none}
@font-face{font-family:'CHIYO Logo Rounded TC';src:url('./fonts/chiyo-logo-rounded-tc.ttf') format('truetype');font-style:normal;font-weight:900;font-display:swap}
.topbar .brand small{font-family:'CHIYO Logo Rounded TC','PingFang TC',sans-serif;font-weight:900}
@media(max-width:600px){
 .topbar{height:auto;display:grid;grid-template-columns:1fr auto;gap:6px;padding-block:8px}
 .topbar .brand{grid-column:1 / -1;justify-self:start;max-width:100%}
 .topbar .brand small{white-space:nowrap}
 .topbar .languages{grid-column:2;justify-self:end}
 .topbar .languages button{white-space:nowrap;min-height:40px}
}
