:root{--ink:#282f29;--muted:#667168;--cream:#f7f6ef;--orange:#fa6b35;--line:#dce1d5;--green:#253d30;--soft:#edf0e7;--peach:#f9dfc9;--white:#fffef9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Pretendard,-apple-system,BlinkMacSystemFont,'Segoe UI','Noto Sans KR',sans-serif;line-height:1.6;word-break:keep-all}a{color:inherit}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.4}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.skip{position:absolute;left:10px;top:-60px;background:#fff;padding:10px;z-index:10}.skip:focus{top:10px}.wrap{width:min(1180px,calc(100% - 56px));margin:0 auto}header{height:92px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{text-decoration:none;font-size:24px;font-weight:850;letter-spacing:-1.4px;display:flex;align-items:center;gap:11px}.brand svg{width:36px;height:36px}.nav{display:flex;align-items:center;gap:30px;font-size:13px;font-weight:650}.nav a{text-decoration:none}.nav span{border:1px solid #bfc9b9;border-radius:30px;padding:7px 13px;font-size:11px;color:#526549}.hero{display:grid;grid-template-columns:1.25fr 1fr;align-items:center;gap:35px;padding:58px 0 49px}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:1.8px;display:flex;gap:8px;align-items:center;font-weight:800}.eyebrow i{width:7px;height:7px;border-radius:50%;background:var(--orange)}h1{font-size:clamp(32px,4.4vw,54px);line-height:1.19;letter-spacing:-2.7px;margin:17px 0 18px}h1 span{color:var(--orange)}.hero p{font-size:15px;color:var(--muted);margin:0;line-height:1.8}.hero-art{height:223px;position:relative;display:flex;align-items:center;justify-content:center}.art-circle{position:absolute;width:209px;height:209px;background:#e7eadc;border-radius:50%;right:65px}.plate{position:relative;width:207px;height:207px;border:1px solid #bcbea9;background:#fcfbf5;border-radius:50%;box-shadow:0 4px 0 #e2e3d5;display:grid;place-items:center;transform:rotate(-10deg)}.plate-inner{width:159px;height:159px;background:#edeee1;border-radius:50%;border:1px solid #d6d9c4;display:grid;place-items:center}.rice{width:95px;height:91px;border-radius:48% 45% 43% 49%;background:#faf8eb;border:1px solid #dfdbc7;position:relative;box-shadow:4px 6px 0 #cccdb2}.yolk{position:absolute;top:30px;left:26px;width:43px;height:43px;border-radius:50%;background:#efaa34;border:1px solid #d78c21}.leaf{position:absolute;background:#3a6748;width:45px;height:20px;border-radius:100% 0 100% 0;left:17px;top:19px;transform:rotate(-30deg)}.tomato{position:absolute;background:#ed6c44;width:29px;height:29px;border-radius:50%;right:3px;bottom:1px;border:3px solid #fa9771}.chopsticks{position:absolute;right:58px;top:16px;width:7px;height:185px;background:#a77242;border-radius:8px;transform:rotate(23deg);box-shadow:13px 0 #bf8f5f}.art-tag{position:absolute;background:var(--peach);border:1px solid #e5c8ad;box-shadow:0 3px 0 rgba(74,70,46,.06);border-radius:10px;padding:10px 15px;font-size:12px;font-weight:750;left:0;top:23px;transform:rotate(-6deg)}.art-tag.second{background:#fffef8;left:auto;right:0;top:auto;bottom:22px;transform:rotate(5deg);font-size:13px}.art-tag b{color:var(--orange)}.workspace{display:grid;grid-template-columns:minmax(0,1.48fr) minmax(0,1fr);gap:22px;align-items:start}.panel{background:var(--white);border:1px solid var(--line);border-radius:20px;overflow:hidden}.form-panel{padding:27px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:23px}h2{font-size:19px;letter-spacing:-.7px;margin:0}.step{font-size:11px;font-weight:800;color:var(--orange);padding-right:9px}.tiny-btn{border:0;background:transparent;color:var(--muted);font-size:12px;padding:9px 0;text-decoration:underline;text-underline-offset:4px}.label-row{display:grid;grid-template-columns:1fr 1.1fr 35px;gap:10px;font-size:11px;color:var(--muted);margin:0 0 8px 35px}.person{display:grid;grid-template-columns:25px 1fr 1.1fr 35px;gap:10px;align-items:center;margin-bottom:10px}.avatar{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#edf0df;color:#576740;font-size:11px;font-weight:800}.person:nth-child(2n) .avatar{background:#fae4d4;color:#935d36}.person:nth-child(3n) .avatar{background:#e0e8e7;color:#4c6c6a}input[type=text],input[type=number],select{width:100%;min-width:0;padding:11px 12px;border:1px solid #dce0d5;border-radius:8px;background:#fff;font-size:14px;color:var(--ink)}input[type=number]{text-align:right;padding-right:32px;-moz-appearance:textfield}input::-webkit-inner-spin-button,input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.money-input{position:relative}.unit{position:absolute;right:13px;top:12px;color:#8a9187;font-size:12px;pointer-events:none}.remove{width:35px;height:42px;border:0;background:transparent;color:#899382;font-size:20px;border-radius:8px}.remove:hover{background:#f3eee7}.add{background:transparent;border:1px dashed #bdc8b6;border-radius:8px;width:100%;padding:11px;margin-top:3px;color:#476341;font-size:12px;font-weight:750}.divider{height:1px;background:var(--line);margin:26px 0}.extras{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field label{display:block;font-size:12px;font-weight:650;margin-bottom:7px}.helper{font-size:11px;color:var(--muted);margin:7px 0 0;line-height:1.6}.wide{grid-column:1/-1}.fee-choice{display:grid;grid-template-columns:1fr 1fr;gap:8px}.fee-choice label{display:block;cursor:pointer;margin:0;font-weight:500;position:relative}.fee-choice input{position:absolute;opacity:0;width:1px}.fee-choice span{display:block;text-align:center;border:1px solid var(--line);border-radius:8px;padding:9px;font-size:12px}.fee-choice input:checked+span{background:#eef2e8;border-color:#81977a;color:#385232;font-weight:750}.fee-choice input:focus-visible+span{outline:3px solid var(--orange);outline-offset:3px}.save-row{margin-top:21px;font-size:11px;color:var(--muted);display:flex;align-items:center;gap:8px}.save-row input{width:16px;height:16px;accent-color:var(--green)}.footer-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:6px}.status{font-size:11px;color:var(--muted);margin:8px 0 0;min-height:17px}.result{background:var(--green);color:#fffef3;padding:28px 25px 24px;position:sticky;top:20px;border:0;border-radius:20px}.result .section-head{margin-bottom:24px}.result .step{color:#adc69d}.live-pill{border:1px solid #516653;border-radius:20px;padding:4px 8px;font-size:10px;color:#cee0bc}.total-label{font-size:12px;color:#c2cdbb}.grand-total{font-size:42px;line-height:1.3;font-weight:700;letter-spacing:-1.7px;margin-top:5px;font-variant-numeric:tabular-nums}.grand-total small{font-size:20px;margin-left:4px;font-weight:450}.receipt-summary{display:flex;justify-content:space-between;font-size:11px;margin-top:8px;color:#becbbb;padding-bottom:22px;border-bottom:1px dashed #657761}.pay-row{padding:17px 0;border-bottom:1px solid #45604a}.pay-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.pay-name{font-size:13px;font-weight:650;overflow-wrap:anywhere;word-break:break-word}.payer-badge{font-size:9px;letter-spacing:.1px;font-weight:400;color:#d2deb9;border:1px solid #677e5b;border-radius:4px;padding:2px 4px;margin-left:5px}.pay-amount{font-size:23px;font-weight:650;letter-spacing:-.5px;white-space:nowrap;font-variant-numeric:tabular-nums}.pay-detail{font-size:10px;color:#c3cfb9;margin-top:5px;line-height:1.8}.settlement{background:#344d36;border-radius:9px;padding:12px 13px;font-size:12px;line-height:1.8;margin-top:19px;color:#e3e9ce}.copy-btn{width:100%;border:0;background:#e9f0bd;color:#263d2e;border-radius:9px;padding:13px;margin-top:16px;font-size:13px;font-weight:800}.result-note{font-size:10px;color:#b1c0aa;text-align:center;margin:11px 0 0}.error{color:#ffdccb;background:#6a3d29;border:1px solid #ad7352;border-radius:10px;padding:14px;font-size:13px}.copy-status{min-height:16px;font-size:11px;color:#e9f0bd;text-align:center;margin-top:8px}.copy-fallback{width:100%;min-height:170px;margin-top:12px;padding:10px;background:#fff;color:#253d30;border-radius:8px}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:33px 0 44px}.benefit{display:flex;gap:12px;font-size:12px;align-items:start}.benefit-icon{border:1px solid #d6decc;border-radius:50%;width:31px;height:31px;flex:none;display:grid;place-items:center;font-size:13px;color:#4d6845}.benefit b{display:block;font-size:12px;margin:1px 0 3px}.benefit p{color:var(--muted);font-size:11px;margin:0}.ad-slot{border:1px dashed #cbd1c3;border-radius:12px;min-height:83px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;margin:0 0 45px;color:#87907e;background:#f1f2e9}.ad-slot span{font-size:9px;letter-spacing:1.7px}.ad-slot small{font-size:10px}.guide{display:grid;grid-template-columns:.8fr 1.5fr;gap:70px;border-top:1px solid var(--line);padding:40px 0 35px}.guide h2{font-size:25px;line-height:1.45;letter-spacing:-1px;margin-top:10px}.guide-intro{font-size:12px;color:var(--muted)}.guide ol{padding:0;margin:0;list-style:none;counter-reset:guide}.guide li{position:relative;padding:0 0 20px 33px;font-size:12px;color:var(--muted)}.guide li:before{counter-increment:guide;content:counter(guide,decimal-leading-zero);position:absolute;left:0;font-size:11px;color:var(--orange);font-weight:800}.guide li b{display:block;color:var(--ink);margin-bottom:4px}.faq{border-top:1px solid var(--line);padding:35px 0}.faq h2{margin-bottom:18px}details{border-bottom:1px solid var(--line);padding:15px 0}summary{cursor:pointer;font-size:13px;font-weight:650;list-style-position:outside;margin-left:16px}details p{font-size:12px;color:var(--muted);padding-left:16px;max-width:850px;line-height:1.9}footer{border-top:1px solid var(--line);padding:25px 0 35px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted)}footer .footer-links{display:flex;gap:18px}.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}.article{max-width:750px;padding:55px 0}.article h1{font-size:36px}.article h2{margin-top:32px}.article p,.article li{font-size:14px;color:var(--muted)}[hidden]{display:none!important}@media(max-width:900px){.wrap{width:calc(100% - 36px)}.hero{grid-template-columns:1.2fr .8fr;gap:10px}.hero-art{transform:scale(.85);transform-origin:center}.art-tag{left:-20px}.chopsticks{right:5px}.workspace{grid-template-columns:1.25fr 1fr;gap:15px}.form-panel{padding:21px}.result{padding:24px 20px}.grand-total{font-size:36px}.guide{gap:30px}}@media(max-width:680px){header{height:75px}.brand{font-size:21px}.brand svg{width:31px}.nav{gap:19px;font-size:11px}.nav span{display:none}.hero{padding:37px 0 30px;display:block;position:relative}.hero-art{display:none}h1{font-size:39px;letter-spacing:-2px}.hero p{font-size:13px}.hero .eyebrow{font-size:9px}.workspace{grid-template-columns:1fr}.form-panel{padding:22px 18px}.result{position:static;padding:25px}.label-row{grid-template-columns:1fr 1.1fr 29px;margin-left:31px}.person{grid-template-columns:21px 1fr 1.1fr 29px;gap:8px}.avatar{width:21px;height:21px;font-size:9px}.remove{width:29px}.person input{font-size:13px;padding-left:9px}.extras{gap:13px}.grand-total{font-size:42px}.benefits{grid-template-columns:1fr;gap:17px;margin:27px 0 30px}.benefit p{font-size:11px}.ad-slot{margin-bottom:32px}.guide{grid-template-columns:1fr;gap:20px;padding:30px 0 15px}.guide h2{font-size:23px}.guide-intro{margin-bottom:0}.guide h2 br{display:none}footer{flex-direction:column;gap:10px}.result-note{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Shared-dish participation and mobile interaction polish. */
.people-hint{margin:0 0 15px}.person{margin-bottom:16px}.person-sharing{grid-column:2/5;display:flex;gap:7px;align-items:center;min-height:32px;font-size:11px;color:var(--muted);cursor:pointer;margin-top:-7px}.person-sharing input{width:17px;height:17px;accent-color:var(--green)}input[aria-invalid=true]{border-color:#b43b25;background:#fff4ef}.no-script{padding:20px;text-align:center;background:#fff0ce}.tiny-btn,.remove,.fee-choice span{min-height:44px}.person-sharing:focus-within{outline:2px solid var(--orange);outline-offset:2px;border-radius:4px}.section-head{flex-wrap:wrap}.pay-detail,.receipt-summary,.settlement{overflow-wrap:anywhere}.receipt-summary{gap:10px;flex-wrap:wrap}@media(max-width:380px){.wrap{width:calc(100% - 24px)}.form-panel{padding:18px 12px}.person{grid-template-columns:18px minmax(0,1fr) minmax(0,1.2fr) 24px;gap:6px}.person-sharing{font-size:10px}.remove{width:24px}.result{padding:23px 18px}.pay-amount{font-size:21px}.nav{gap:12px}.grand-total{font-size:38px}}
