*{box-sizing:border-box;margin:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#12141a;color:#e8e9ec;-webkit-font-smoothing:antialiased}.app{max-width:520px;margin:0 auto;padding:12px 12px 32px}header{padding:10px 0 4px}header h1{font-size:1.5rem;letter-spacing:.2px}.tagline{color:#9aa0ab;font-size:.85rem;margin-top:2px}.tabs{display:flex;gap:8px;margin:14px 0}.tabs button{flex:1;padding:10px 0;border-radius:10px;border:1px solid #2a2e39;background:#1a1d26;color:#b9bec8;font-size:.95rem;cursor:pointer}.tabs button.active{background:#273042;color:#fff;border-color:#3b4a66}.tab-body{display:flex;flex-direction:column;gap:12px}.board-wrap{border-radius:8px;overflow:hidden}.controls{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.controls button,.fen-row button{padding:10px 14px;border-radius:10px;border:1px solid #2a2e39;background:#1a1d26;color:#d5d9e0;font-size:.9rem;cursor:pointer}.controls button.primary{background:#2f6b4f;border-color:#3a8362;color:#fff}.controls button:disabled{opacity:.5}.controls.nav{justify-content:center}.nav-label{min-width:90px;text-align:center;font-weight:600}.fen-row{display:flex;gap:8px}.fen-row input{flex:1;padding:10px;border-radius:10px;border:1px solid #2a2e39;background:#1a1d26;color:#d5d9e0;font-size:.8rem;font-family:monospace}textarea{width:100%;padding:10px;border-radius:10px;border:1px solid #2a2e39;background:#1a1d26;color:#d5d9e0;font-size:.85rem;font-family:monospace;resize:vertical}.error{color:#ff8080;font-size:.85rem}.analysis .lines{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.line{display:flex;gap:10px;align-items:baseline;padding:8px 10px;background:#1a1d26;border-radius:8px;font-size:.9rem}.line.main{border:1px solid #2f6b4f}.line .mv{font-weight:700;min-width:52px}.line .ev{color:#4caf7d;min-width:48px;font-variant-numeric:tabular-nums}.line .pv{color:#8a8f98;font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.coach{background:#1d2433;border:1px solid #2c3a55;border-radius:10px;padding:12px 14px}.coach-label{font-size:.75rem;color:#7ea6dd;margin-bottom:6px;font-weight:700;letter-spacing:.5px}.coach p{font-size:.92rem;line-height:1.55;white-space:pre-wrap}.move-detail{display:flex;gap:10px;align-items:center}.verdict{padding:3px 10px;border-radius:999px;font-size:.75rem;font-weight:700;color:#14161c;text-transform:uppercase;letter-spacing:.5px}.move-detail .ev{font-variant-numeric:tabular-nums;color:#b9bec8}.best-hint{color:#9aa0ab;font-size:.85rem}.graph{background:#1a1d26;border-radius:10px;padding:6px 4px 0}.move-list{display:flex;flex-wrap:wrap;gap:6px}.mv-chip{padding:5px 9px;border-radius:8px;border:1px solid;background:#1a1d26;color:#d5d9e0;font-size:.82rem;cursor:pointer}.mv-chip.active{background:#273042}footer{margin-top:24px;text-align:center;color:#565c68;font-size:.75rem}.setup-banner{background:#2a2416;border:1px solid #5c4d1e;border-radius:10px;padding:10px 12px;font-size:.88rem;line-height:1.45;color:#e6d9a8}.photo-notes{margin-top:6px;color:#c9b96f;font-size:.8rem}.photo-btn{padding:10px 14px;border-radius:10px;border:1px solid #2a2e39;background:#1a1d26;color:#d5d9e0;font-size:.9rem;cursor:pointer;display:inline-flex;align-items:center}.auth-card{display:flex;flex-direction:column;gap:10px;margin-top:20px;background:#1a1d26;border:1px solid #2a2e39;border-radius:12px;padding:20px}.auth-card h2{font-size:1.1rem}.auth-sub{color:#9aa0ab;font-size:.85rem}.auth-card input{padding:11px;border-radius:10px;border:1px solid #2a2e39;background:#12141a;color:#e8e9ec;font-size:.95rem}.auth-card button.primary{padding:11px;border-radius:10px;border:1px solid #3a8362;background:#2f6b4f;color:#fff;font-size:.95rem;cursor:pointer}.linkish{background:none;border:none;color:#7ea6dd;cursor:pointer;font-size:.85rem;padding:4px}.account-row{display:flex;gap:10px;align-items:center;margin-top:8px;font-size:.8rem;color:#9aa0ab}.play-setup{display:flex;flex-direction:column;gap:14px;background:#1a1d26;border:1px solid #2a2e39;border-radius:12px;padding:18px}.play-setup h3{font-size:1.05rem}.setup-row{display:flex;flex-direction:column;gap:6px;font-size:.88rem;color:#b9bec8}.seg{display:flex;gap:6px}.seg button{flex:1;padding:9px 6px;border-radius:9px;border:1px solid #2a2e39;background:#12141a;color:#b9bec8;font-size:.85rem;cursor:pointer}.seg button.active{background:#273042;color:#fff;border-color:#3b4a66}.play-setup select{padding:9px;border-radius:9px;border:1px solid #2a2e39;background:#12141a;color:#e8e9ec;font-size:.9rem}.hint{color:#8a8f98;font-size:.8rem;line-height:1.45}.primary.big{padding:13px;font-size:1rem}.play-summary{display:flex;flex-direction:column;gap:6px;background:#1d2433;border:1px solid #2c3a55;border-radius:10px;padding:12px 14px;font-size:.88rem;line-height:1.5}.notice{background:#1d3326;border:1px solid #2c5540;border-radius:10px;padding:10px 12px;color:#a8e6c0;font-size:.88rem}.landing{display:flex;flex-direction:column;gap:22px;margin-top:16px}.hero h2{font-size:1.45rem;line-height:1.3}.hero h2 em{color:#7ea6dd;font-style:italic}.hero p{color:#b9bec8;margin:10px 0 16px;line-height:1.55;font-size:.95rem}.features{display:flex;flex-direction:column;gap:12px}.feature{background:#1a1d26;border:1px solid #2a2e39;border-radius:12px;padding:14px 16px}.feature h3{font-size:.98rem;margin-bottom:6px}.feature p{color:#9aa0ab;font-size:.88rem;line-height:1.5}.pricing{display:flex;gap:12px}.plan{flex:1;background:#1a1d26;border:1px solid #2a2e39;border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:10px}.plan .price{font-size:1.5rem;font-weight:700}.plan .price span{font-size:.85rem;color:#9aa0ab;font-weight:400}.plan ul{list-style:none;display:flex;flex-direction:column;gap:5px;color:#b9bec8;font-size:.84rem}.plan button{padding:10px;border-radius:10px;border:1px solid #2a2e39;background:#12141a;color:#d5d9e0;cursor:pointer}.plan button.primary{background:#2f6b4f;border-color:#3a8362;color:#fff}.plan button:disabled{opacity:.55;cursor:default}
