.ap-shell{max-width:980px;margin:0 auto;padding:54px 24px 72px}.ap-hero{text-align:center;max-width:760px;margin:0 auto 30px}.ap-kicker{display:inline-flex;padding:6px 11px;border:1px solid rgba(0,122,255,.35);border-radius:999px;color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.ap-hero h1{margin:14px 0 12px;color:var(--text);font-size:clamp(2rem,5vw,3.25rem);line-height:1.04;letter-spacing:-.04em}.ap-hero p{margin:0;color:var(--text-dim);font-size:1.04rem;line-height:1.7}.ap-tool,.ap-section{background:var(--bg-2);border:1px solid var(--line);border-radius:20px}.ap-tool{padding:24px;max-width:700px;margin:0 auto 50px}.ap-drop{min-height:250px;border:2px dashed var(--line-strong);border-radius:16px;display:grid;place-items:center;text-align:center;padding:24px;cursor:pointer;background:rgba(255,255,255,.02);transition:.18s}.ap-drop:hover,.ap-drop.drag{border-color:var(--accent);background:var(--accent-dim)}.ap-drop svg{color:var(--accent);margin-bottom:10px}.ap-drop p{margin:4px 0;color:var(--text-dim)}.ap-drop small{color:var(--muted)}.ap-preview{display:none;position:relative;text-align:center}.ap-preview img{max-width:100%;max-height:430px;border-radius:14px;object-fit:contain}.ap-change{margin-top:10px;border:0;background:none;color:var(--accent);font-weight:700;cursor:pointer}.ap-consent{display:flex;gap:10px;align-items:flex-start;margin:17px 2px;color:var(--text-dim);font-size:.88rem;line-height:1.5}.ap-consent input{margin-top:3px}.ap-button{display:flex;width:100%;justify-content:center;align-items:center;gap:8px;border:0;border-radius:12px;padding:14px 18px;background:var(--accent);color:#fff;font-weight:800;font-size:.97rem;cursor:pointer}.ap-button:disabled{opacity:.5;cursor:not-allowed}.ap-status,.ap-error{display:none;margin-top:16px;padding:13px 15px;border-radius:11px;font-size:.9rem;line-height:1.5}.ap-status{color:var(--text-dim);background:var(--accent-dim);border:1px solid rgba(0,122,255,.25)}.ap-error{color:#fca5a5;background:rgba(248,113,113,.1);border:1px solid rgba(248,113,113,.3)}.ap-result{display:none;margin-top:22px}.ap-overall{text-align:center;padding:24px;border-radius:16px;background:linear-gradient(145deg,rgba(0,122,255,.18),rgba(124,58,237,.13));border:1px solid rgba(0,122,255,.28)}.ap-overall strong{display:block;color:var(--text);font-size:3.3rem;line-height:1}.ap-overall span{color:var(--text-dim);font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}.ap-overall p{color:var(--text-dim);margin:12px auto 0;max-width:520px;line-height:1.55}.ap-scores{display:grid;gap:12px;margin:18px 0}.ap-score{padding:15px;border:1px solid var(--line);border-radius:12px}.ap-score-head{display:flex;justify-content:space-between;gap:12px;color:var(--text);font-weight:800}.ap-score-track{height:7px;border-radius:99px;background:rgba(255,255,255,.08);margin:10px 0;overflow:hidden}.ap-score-track i{display:block;height:100%;border-radius:inherit;background:var(--accent)}.ap-score p{margin:0;color:var(--text-dim);font-size:.84rem;line-height:1.5}.ap-tips{padding:17px;border-radius:13px;background:rgba(255,255,255,.025)}.ap-tips h3{color:var(--text);margin:0 0 9px}.ap-tips li{color:var(--text-dim);margin:7px 0;line-height:1.5}.ap-content{display:grid;gap:18px}.ap-section{padding:25px}.ap-section h2{color:var(--text);margin:0 0 12px;font-size:1.35rem}.ap-section h3{color:var(--text);margin:18px 0 6px;font-size:1rem}.ap-section p,.ap-section li{color:var(--text-dim);line-height:1.7}.ap-section a{color:var(--accent)}.ap-links{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:28px 0}.ap-links a{padding:13px;border:1px solid var(--line);border-radius:11px;text-align:center;color:var(--text);text-decoration:none;font-weight:700;font-size:.87rem}.ap-links a:hover,.ap-links a.current{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}
.vct-mic{width:86px;height:86px;margin:2px auto 16px;border-radius:50%;display:grid;place-items:center;background:var(--accent-dim);color:var(--accent)}.vct-mic.active{animation:vct-pulse 1.2s infinite}.vct-mic svg{width:38px}.vct-prompt{text-align:center;padding:12px;background:rgba(255,255,255,.025);border-radius:10px}.vct-meter{height:8px;background:rgba(255,255,255,.08);border-radius:99px;overflow:hidden;margin:16px 0}.vct-meter span{display:block;height:100%;width:0;background:var(--accent)}.vct-result{display:none;text-align:center;padding:22px;margin-top:16px;border-radius:14px;background:var(--accent-dim)}.vct-hz{color:var(--text);font-size:2.7rem;font-weight:900}.vct-hz small{font-size:.9rem;color:var(--text-dim)}.vct-label{color:var(--accent);font-size:1.2rem;font-weight:800;margin:6px}.vct-local{color:var(--muted);font-size:.78rem;line-height:1.5;margin-top:16px}.vct-status{text-align:center;color:var(--text-dim);font-size:.88rem}.vct-bands{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.vct-bands div{border:1px solid var(--line);border-radius:10px;padding:12px}.vct-bands b,.vct-bands span{display:block}.vct-bands b{color:var(--text)}.vct-bands span{color:var(--text-dim);font-size:.82rem;margin-top:4px}@keyframes vct-pulse{50%{box-shadow:0 0 0 14px rgba(0,122,255,.08)}}
.mog-step{display:none}.mog-step.active{display:block}.mog-invite{display:flex;gap:8px}.mog-invite input{flex:1;min-width:0;padding:11px;border-radius:9px;border:1px solid var(--line);background:var(--bg);color:var(--text)}.mog-compare{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mog-person{text-align:center;border:1px solid var(--line);border-radius:14px;padding:12px}.mog-person img{width:100%;height:260px;object-fit:cover;border-radius:10px}.mog-person strong{display:block;color:var(--text);font-size:2.2rem;margin-top:8px}.mog-table{width:100%;border-collapse:collapse;margin-top:16px}.mog-table th,.mog-table td{padding:10px;border-bottom:1px solid var(--line);text-align:left;color:var(--text-dim);font-size:.84rem}.mog-winner{text-align:center;color:var(--text);font-size:1.35rem;font-weight:900;margin:18px 0}
@media(max-width:700px){.ap-shell{padding:36px 16px 56px}.ap-tool,.ap-section{padding:18px}.ap-links,.vct-bands{grid-template-columns:1fr 1fr}.mog-person img{height:190px}.mog-invite{flex-direction:column}}
.ap-links{grid-template-columns:repeat(5,1fr)}
.ap-related{max-width:980px;margin:34px auto 0;padding:26px;background:var(--bg-2);border:1px solid var(--line);border-radius:20px}.ap-related h2{margin:0 0 8px;color:var(--text);font-size:1.35rem}.ap-related-intro,.ap-related-more{color:var(--text-dim);line-height:1.65}.ap-related-intro{margin:0 0 18px}.ap-related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ap-related-grid>a{display:block;padding:16px;border:1px solid var(--line);border-radius:12px;text-decoration:none;background:rgba(255,255,255,.02);transition:.18s}.ap-related-grid>a:hover{border-color:var(--accent);background:var(--accent-dim);transform:translateY(-1px)}.ap-related-grid strong,.ap-related-grid span{display:block}.ap-related-grid strong{color:var(--text);margin-bottom:6px}.ap-related-grid span{color:var(--text-dim);font-size:.86rem;line-height:1.5}.ap-related-more{margin:18px 0 0;font-size:.92rem}.ap-related-more a{color:var(--accent);font-weight:700}
@media(max-width:700px){.ap-related{padding:18px}.ap-links,.ap-related-grid{grid-template-columns:1fr 1fr}}
@media(max-width:460px){.ap-links,.ap-related-grid{grid-template-columns:1fr}}
