:root{--maroon:#7e1226;--maroon-deep:#5e0c1d;--gold:#c9a227;--gold-soft:#e8ce96;--ink:#33141b;--muted:#8a6a5c;--bg:#f7efdf;--card:#fffbf2;--line:#e4cfa6;--soft:#f3e3c0;--red:#b23b3b;--green:#7e1226;--serif:"Georgia","Times New Roman",serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{color:var(--ink);background:#e6d8bc;margin:0;font-family:Segoe UI,system-ui,Arial,sans-serif}#root{background:var(--bg);flex-direction:column;max-width:430px;min-height:100vh;margin:0 auto;display:flex;box-shadow:0 0 40px #34141b4d}@media (width>=480px){#root{border-radius:26px;min-height:calc(100vh - 36px);margin:18px auto;overflow:hidden}}.bar{background:linear-gradient(178deg,var(--maroon-deep),var(--maroon));color:var(--gold-soft);box-shadow:inset 0 -6px 0 -3px var(--gold);border-radius:0 0 42% 42%/0 0 28px 28px;align-items:center;padding:16px 46px 21px;display:flex;position:relative}.bar h1{font-family:var(--serif);color:#fbefcf;text-align:center;letter-spacing:.01em;flex:1;margin:0;font-size:17px;font-weight:700}.bar .back{cursor:pointer;color:var(--gold-soft);padding:2px;display:flex;position:absolute;top:16px;left:14px}.body{flex:1;padding:16px 16px 40px;overflow-y:auto}.center{background:radial-gradient(130% 55% at 50% 0,#fbf3df,transparent),var(--bg);flex-direction:column;flex:1;justify-content:center;padding:28px 22px;display:flex}h2{font-family:var(--serif);color:var(--maroon);margin:0 0 4px;font-size:21px}.sub{color:var(--muted);margin:0 0 18px;font-size:13.5px}label{color:var(--muted);margin:12px 0 5px;font-size:12.5px;display:block}input,select{border:1px solid var(--line);width:100%;color:var(--ink);background:#fffdf7;border-radius:11px;padding:12px;font-size:15px}input:focus,select:focus{outline:2px solid var(--gold);outline-offset:1px;border-color:var(--gold)}button.primary{color:#fbefcf;width:100%;font-family:var(--serif);cursor:pointer;box-shadow:inset 0 0 0 1.5px var(--gold);background:linear-gradient(#8c1a2e,#6b0e20);border:0;border-radius:12px;margin-top:18px;padding:13px;font-size:15px;font-weight:700}button.primary:disabled{opacity:.6}button.ghost{border:1.5px solid var(--gold);background:var(--card);width:100%;color:var(--maroon);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:7px;margin-top:10px;padding:12px;font-size:14px;font-weight:700;display:inline-flex}.hint{color:var(--muted);text-align:center;margin-top:14px;font-size:12px}.err{color:var(--red);text-align:center;margin-top:8px;font-size:13px}.logo{border:1.5px solid var(--gold);width:66px;height:66px;color:var(--gold-soft);font-size:30px;font-weight:700;font-family:var(--serif);background:radial-gradient(circle at 40% 32%,#8c1a2e,#5e0c1d);border-radius:20px;justify-content:center;align-items:center;margin:0 auto 16px;display:flex;box-shadow:0 6px 18px #5e0c1d47}.brandttl{text-align:center}.brandttl b{font-family:var(--serif);color:var(--maroon);font-size:23px}.brandttl span{color:var(--muted);margin-top:2px;font-size:12px;display:block}.card{background:var(--card);border:1px solid var(--line);box-shadow:inset 0 2.5px 0 var(--gold);border-radius:14px;margin-bottom:12px;padding:14px}.count-hero{color:var(--gold-soft);border:2px solid var(--gold);text-align:center;background:radial-gradient(70% 100% at 50% 0,#c9a2272e,#0000),linear-gradient(160deg,#6c1022,#4a0a18);border-radius:16px;margin-bottom:14px;padding:16px;box-shadow:0 6px 18px #5e0c1d29}.count-hero b{font-family:var(--serif);color:#fbefcf;letter-spacing:-1px;font-size:40px;line-height:1;display:block}.count-hero span{color:var(--gold-soft);text-transform:uppercase;letter-spacing:.06em;font-size:11px}.row{align-items:center;gap:12px;display:flex}.avatar{background:var(--soft);border:1px solid var(--gold);width:40px;height:40px;color:var(--maroon);border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:700;display:flex}.member{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:11px 0;display:flex}.member:last-child{border:0}.member .nm{font-size:14px;font-weight:700}.member .mt{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px;font-size:12px;display:flex}.pill{background:var(--soft);color:#7e5a18;border-radius:20px;align-items:center;gap:4px;margin-left:6px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.sectttl{text-transform:uppercase;letter-spacing:.16em;color:#a0762e;align-items:center;gap:9px;margin:18px 0 9px;font-size:11px;font-weight:800;display:flex}.sectttl:before,.sectttl:after{content:"";background:linear-gradient(90deg,transparent,var(--gold),transparent);flex:1;height:1px}.tile-grid{grid-template-columns:1fr 1fr;gap:11px;display:grid}.tile{background:var(--card);border:1px solid var(--line);box-shadow:inset 0 2.5px 0 var(--gold);border-radius:14px;align-items:center;gap:11px;padding:12px;display:flex}.tile .badge{width:38px;height:38px;color:var(--maroon);border:1px solid var(--gold);background:radial-gradient(circle at 40% 35%,#fbf1d6,#f0dfaf);border-radius:11px;flex:none;justify-content:center;align-items:center;display:flex}.tile .t{font-family:var(--serif);font-size:13px;font-weight:700;line-height:1.15}.tile .d{color:var(--muted);margin-top:2px;font-size:11px}.spin{text-align:center;color:var(--muted);padding:40px}.langtoggle{z-index:200;background:var(--card);border:1px solid var(--gold);border-radius:20px;gap:2px;padding:3px;display:flex;position:fixed;top:8px;right:10px;box-shadow:0 2px 8px #34141b33}.langtoggle button{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:16px;padding:3px 10px;font-size:12px;font-weight:700;line-height:1.4}.langtoggle button.on{background:var(--maroon);color:#fbefcf}.scan-overlay{z-index:300;background:#1a0f12;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:20px;display:flex;position:fixed;inset:0}.scan-title{color:#fff;text-align:center;margin-bottom:12px;font-size:15px}.scan-overlay #qr-reader video{border-radius:12px}.scan-overlay button.ghost{color:#fff;background:0 0;border-color:#fff6}.rich{font-size:13.5px;line-height:1.55}.rich p{margin:0 0 6px}.rich ul,.rich ol{margin:4px 0 8px;padding-left:20px}.rich a{color:var(--maroon);text-decoration:underline}.rich h3,.rich h4{font-family:var(--serif);margin:8px 0 4px}
