:root{--bg: #ffffff;--fg: #1f1d1b;--muted: #6b6560;--accent: #0f5257;--accent-2: #b4436c;--card: #ffffff;--line: #e4e0dc;--soft: #f6f3f1;color-scheme:light}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font:17px/1.6 system-ui,-apple-system,Apple SD Gothic Neo,Noto Sans KR,Hiragino Sans,Microsoft YaHei,sans-serif}body.no-scroll{overflow:hidden}.container{max-width:720px;margin:0 auto;padding:24px 16px}h1{font-size:1.5rem;margin:0 0 4px;line-height:1.3}h2{font-size:1.15rem;margin:28px 0 8px}.lead{color:var(--muted);margin:0 0 4px}.small{font-size:.85rem;color:var(--muted)}[hidden]{display:none!important}.tabs{display:flex;gap:8px;margin:16px 0 8px;border-bottom:2px solid var(--line)}.tabs [role=tab]{flex:1;min-height:48px;padding:10px 8px;border:none;border-bottom:3px solid transparent;background:none;color:var(--muted);font:inherit;font-weight:700;cursor:pointer;margin-bottom:-2px}.tabs [role=tab][aria-selected=true]{color:var(--accent);border-bottom-color:var(--accent)}fieldset{border:1px solid var(--line);border-radius:12px;padding:12px 14px 16px;margin:16px 0 0}legend{font-weight:700;padding:0 6px;color:var(--accent)}label{display:block;font-weight:600;margin:12px 0 4px}.group-label{font-weight:600;margin:14px 0 4px}input[type=text],input[type=number],textarea{font:inherit;width:100%;min-height:48px;padding:10px 12px;border:1px solid #c9c3be;border-radius:8px;background:var(--card);color:var(--fg)}textarea{min-height:8rem}.choices{display:grid;gap:6px}.choices.row{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}label.choice{display:flex;align-items:flex-start;gap:10px;margin:0;padding:10px 12px;min-height:48px;border:1px solid var(--line);border-radius:10px;font-weight:500;cursor:pointer;background:var(--card)}label.choice:has(input:checked){border-color:var(--accent);background:#eef6f6}label.choice input{width:22px;height:22px;margin:2px 0 0;flex:none;accent-color:var(--accent)}.choice-text{display:flex;flex-direction:column}.choice-text .sub{font-size:.8rem;color:var(--muted);font-weight:400}.param{margin:4px 0 8px 32px}.sub-group{margin-top:8px}input:focus-visible,textarea:focus-visible,button:focus-visible,label.choice:focus-within{outline:3px solid var(--accent-2);outline-offset:2px}button{font:inherit;min-height:48px;padding:10px 16px;border-radius:10px;border:none;cursor:pointer;font-weight:700;background:var(--accent);color:#fff}button.secondary{background:var(--card);color:var(--accent);border:2px solid var(--accent)}button.ghost{background:none;color:var(--muted);border:1px solid var(--line);margin-top:24px;width:100%}.actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.actions>:first-child{grid-column:1 / -1}.status{min-height:1.5em;color:var(--accent);font-weight:600;margin:8px 0}.brief{background:#fff;color:#000;border:2px solid #000;border-radius:12px;padding:18px 16px}.brief p{margin:0}.brief .ko{font-weight:700;font-size:1.15rem;line-height:1.45}.brief .fl{color:#444;font-size:.9rem;line-height:1.45}.brief .b-title .ko{font-size:1.4rem}.brief .b-intro{margin:8px 0 4px}.brief .b-intro .ko{font-weight:400}.brief .b-sec{border-top:1px solid #bbb;margin-top:12px;padding-top:10px}.brief .b-head .ko{font-size:.95rem;color:#0f5257}.brief ul{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:8px}.brief li{padding-left:14px;position:relative}.brief li:before{content:"•";position:absolute;left:0;top:.1em;font-weight:700}.brief .b-thanks{border-top:1px solid #bbb;margin-top:12px;padding-top:10px}.brief .b-disc{margin-top:12px;font-size:.75rem;color:#555;display:grid;gap:4px}.staff-view{position:fixed;inset:0;z-index:1000;background:#fff;color:#000;overflow-y:auto;padding:16px}.staff-view .close{position:sticky;top:0;float:right;z-index:1;background:#000;color:#fff}.brief--big{border:none;max-width:900px;margin:0 auto;padding:8px 4px 32px}.brief--big .ko{font-size:1.75rem}.brief--big .fl{font-size:1.1rem}.brief--big .b-title .ko{font-size:2.1rem}.brief--big .b-head .ko{font-size:1.3rem}.brief--big .b-disc{font-size:.9rem}.sheet{background:#fff;color:#000;border:1px solid #999;padding:20px 18px;font-size:15px;line-height:1.4}.sheet p{margin:0}.sheet .ko{font-weight:700}.sheet .fl{font-size:.85em;color:#333}.sheet .s-title{text-align:center;border-bottom:2px solid #000;padding-bottom:8px;margin-bottom:8px}.sheet .s-name{font-size:1.4em;font-weight:800}.sheet .s-title-lines .ko{font-size:1.2em}.sheet .s-sec{margin-top:10px}.sheet .s-head{background:#eee;padding:4px 8px;border-left:4px solid #000;display:flex;flex-wrap:wrap;align-items:baseline;column-gap:.8em}.sheet ul{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:6px}.sheet li{display:flex;gap:8px;padding-left:4px}.sheet .box{font-size:1.3em;line-height:1;flex:none}.sheet .s-sign{display:flex;gap:12px;align-items:flex-end;margin-top:18px;font-weight:700}.sheet .s-sign .blank{flex:1;border-bottom:1px solid #000;min-height:2em}.sheet .s-disc{margin-top:12px;font-size:.75em;color:#444;display:grid;gap:2px}.sheet--compact{font-size:13px}.sheet--compact ul{gap:3px}.sheet--tiny{font-size:11.5px}.sheet--paper{border:none;padding:0;line-height:1.3}.sheet--paper ul{display:block;columns:2;column-gap:6mm}.sheet--paper li{break-inside:avoid;margin-bottom:.35em}.sheet--paper .s-sign{margin-top:12px}footer.container p{margin:4px 0}.offers{margin-top:1.5rem;padding:1rem;border:1px solid #ddd;border-radius:8px}.offers h2{font-size:1rem;margin:0 0 .5rem}.offers ul{margin:0;padding-left:1.2rem}@media(min-width:560px){h1{font-size:1.75rem}.actions{grid-template-columns:repeat(4,1fr)}.actions>:first-child{grid-column:auto}}@page{size:A4;margin:10mm}@media print{body{background:#fff}.no-print,.tabs,header.no-print,#panel-guest,.staff-view,.vf-contact,.offers,body>footer,button{display:none!important}.container{max-width:none;padding:0;margin:0}#panel-shop{display:block!important}.sheet{border:none;padding:0;line-height:1.3;font-size:var(--sheet-print-size, 10px)}.sheet ul{display:block;columns:2;column-gap:6mm}.sheet li{break-inside:avoid;margin-bottom:.35em}.sheet .s-sign{margin-top:12px}.sheet .s-head{-webkit-print-color-adjust:exact;print-color-adjust:exact}.sheet li,.sheet .s-head{break-inside:avoid}}
