:root{--brand: #FF7F5E;--brand-dark: #D95F3B;--brand-ink: #B44A26;--brand-soft: #FFF0E6;--brand-line: #FFD9C2;--accent: #6FBF73;--accent-dark: #4C9A50;--accent-soft: #E9F6EA;--accent-line: #BEE3C0;--ink: #333333;--muted: #8d7f70;--line: #f3e7d9;--bg: #FFF8F0;--card: #ffffff;--warn-bg: #FFF6E3;--warn-ink: #8a5a00;--err: #d64545;--radius: 16px}*{box-sizing:border-box}body{margin:0;font-family:Noto Sans TC Rounded,Nunito,-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans TC,PingFang HK,Microsoft JhengHei,sans-serif;color:var(--ink);background:var(--bg)}a{color:var(--brand-dark);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;cursor:pointer}input,select,textarea{font:inherit}.topbar{background:var(--brand);color:#fff;padding:10px 16px;display:flex;align-items:center;gap:16px;position:sticky;top:0;z-index:20;box-shadow:0 2px 12px #d95f3b40}.logo{display:flex;align-items:center;gap:10px;color:#fff;white-space:nowrap}.logo:hover{text-decoration:none}.logo-mark{display:inline-flex}.logo-mark svg{display:block}.logo-mark-img{background:#fff;border-radius:12px;padding:5px 10px;line-height:0}.logo-mark-img img{height:40px;width:auto;display:block}.logo-text{font-weight:800;font-size:20px;letter-spacing:2px;line-height:1.15}.logo-text small{display:block;font-size:10px;font-weight:600;opacity:.9;letter-spacing:3px;font-family:Nunito,sans-serif}.topnav{display:flex;gap:4px;flex:1;flex-wrap:wrap}.topnav a{color:#ffffffe0;padding:8px 12px;border-radius:999px;font-size:15px;font-weight:600}.topnav a:hover,.topnav a.active{background:#ffffff38;color:#fff;text-decoration:none}.cartbtn{background:#fff;color:var(--brand-ink);border:0;border-radius:999px;padding:8px 16px;font-weight:800;white-space:nowrap;box-shadow:0 2px 8px #0000001f}.cartbtn:hover{text-decoration:none;color:var(--brand-dark)}.rolechip{display:flex;gap:6px;align-items:center;font-size:12px;color:#ffffffe6}.rolechip select{border-radius:999px;border:1px solid var(--brand-line);padding:4px 8px;font-size:12px;background:#fff;color:var(--brand-ink)}.container{max-width:1080px;margin:0 auto;padding:16px}.page-title{margin:8px 0 16px;font-size:24px}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px;margin-bottom:16px}.grid{display:grid;gap:12px}.grid.cols2{grid-template-columns:repeat(2,1fr)}.grid.cols3{grid-template-columns:repeat(3,1fr)}.grid.cols4{grid-template-columns:repeat(4,1fr)}@media(max-width:720px){.grid.cols2,.grid.cols3,.grid.cols4{grid-template-columns:repeat(2,1fr)}.topbar{flex-wrap:wrap}}@media(max-width:420px){.grid.cols2,.grid.cols3,.grid.cols4{grid-template-columns:1fr}}.product-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}.product-card .thumb{aspect-ratio:4/3;background:var(--brand-soft);display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:13px}.product-card .thumb img{width:100%;height:100%;object-fit:cover}.product-card .body{padding:10px 12px;display:flex;flex-direction:column;gap:6px;flex:1}.product-card .name{font-weight:600;font-size:15px}.price{color:var(--brand-ink);font-weight:800}.price small{font-weight:400;color:var(--muted)}.badge-demo{display:inline-block;background:#7c3aed;color:#fff;font-size:11px;font-weight:700;border-radius:6px;padding:2px 8px;letter-spacing:1px}.badge-tag{display:inline-block;background:var(--brand-soft);color:var(--brand-ink);border:1px solid var(--brand-line);font-size:12px;border-radius:999px;padding:2px 10px}.badge-kind-official{background:var(--accent-soft);color:var(--accent-dark);border:1px solid var(--accent-line)}.badge-kind-member{background:#e0e7ff;color:#3730a3;border:1px solid #a5b4fc}.btn{display:inline-block;border:1px solid var(--brand);background:var(--brand);color:#fff;border-radius:999px;padding:10px 22px;font-weight:800;text-align:center}.btn:hover{background:var(--brand-dark);border-color:var(--brand-dark);text-decoration:none;color:#fff}.btn.ghost{background:#fff;color:var(--brand-ink)}.btn.ghost:hover{background:var(--brand-soft);color:var(--brand-dark)}.btn.danger{background:#fff;color:var(--err);border-color:var(--err)}.btn.small{padding:6px 14px;font-size:13px;border-radius:999px}.btn:disabled{opacity:.5;cursor:not-allowed}.field{margin-bottom:12px}.field label{display:block;font-size:13px;color:var(--muted);margin-bottom:4px}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:10px;background:#fff}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--brand-line);border-color:var(--brand)}.field .hint{font-size:12px;color:var(--muted);margin-top:4px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.space-between{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.reminder{background:var(--warn-bg);color:var(--warn-ink);border:1px solid #f5d78e;border-radius:var(--radius);padding:10px 14px;display:flex;justify-content:space-between;align-items:center;gap:8px}.reminder button{background:transparent;border:0;font-size:18px;color:var(--warn-ink)}.notice{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af;border-radius:var(--radius);padding:10px 14px;font-size:14px}.error{background:#fef2f2;border:1px solid #fecaca;color:var(--err);border-radius:var(--radius);padding:10px 14px}.ok{background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent-dark);border-radius:var(--radius);padding:10px 14px}.table{width:100%;border-collapse:collapse;font-size:14px}.table th,.table td{border-bottom:1px solid var(--line);padding:8px 6px;text-align:left;vertical-align:top}.table th{color:var(--muted);font-weight:600;font-size:12px}.searchbar{display:flex;gap:8px}.searchbar input{flex:1;border:1px solid var(--line);border-radius:999px;padding:12px 18px;background:#fff}.searchbar input:focus{outline:2px solid var(--brand-line);border-color:var(--brand)}.catnav{display:flex;gap:8px;overflow-x:auto;padding:4px 0 8px}.catnav a{white-space:nowrap;border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 16px;color:var(--ink);font-size:14px;font-weight:600}.catnav a.active,.catnav a:hover{background:var(--brand);border-color:var(--brand);color:#fff;text-decoration:none}.svc-option{border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;margin-bottom:8px;display:flex;gap:10px;align-items:flex-start;background:#fff}.svc-option.selected{border-color:var(--brand);background:var(--brand-soft)}.svc-option .fee{font-weight:700;color:var(--brand-ink);margin-left:auto;white-space:nowrap}.allergen{font-size:12px;color:var(--warn-ink);background:var(--warn-bg);border-radius:6px;padding:2px 8px;display:inline-block;margin-top:4px}.step{border-left:3px solid var(--brand);padding:6px 0 6px 14px;margin-bottom:14px}.step h4{margin:0 0 6px}.video-wrap video{width:100%;border-radius:var(--radius);background:#000;max-height:60vh}.footer{text-align:center;color:var(--muted);font-size:12px;padding:32px 16px}.sr{display:none}
