:root{font-family:"Noto Serif SC",Georgia,serif;line-height:1.8;font-weight:400;color:#e0ddd5;background-color:#0d0d1a;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}:root{--color-bg: #0d0d1a;--color-surface: #1a1a2e;--color-surface-2: #242440;--color-text: #e0ddd5;--color-text-dim: #8a8780;--color-accent: #c9a84c;--color-shadow: #4a1942;--color-awareness: #6b4c8a;--color-integration: #7ba7c9;--color-transcendence: #f0d48a;--color-north-node: #5bb8a9;--color-south-node: #c97b7b}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--color-bg);color:var(--color-text);font-family:"Noto Serif SC",Georgia,serif;line-height:1.8}.app{min-height:100vh;display:flex;flex-direction:column}.app-header{text-align:center;padding:1.5rem;border-bottom:1px solid var(--color-surface-2)}.app-header h1{font-size:1.5rem;color:var(--color-accent);letter-spacing:.3em}.app-header p{font-size:.8rem;color:var(--color-text-dim);font-style:italic}.app-main{flex:1;max-width:1200px;margin:0 auto;width:100%;padding:2rem}.start-screen{display:flex;justify-content:center;align-items:center}.birth-input{background:var(--color-surface);border:1px solid var(--color-surface-2);border-radius:12px;padding:2.5rem;max-width:500px;width:100%}.birth-input h2{color:var(--color-accent);margin-bottom:.5rem;font-size:1.3rem}.birth-input .subtitle{color:var(--color-text-dim);margin-bottom:2rem;font-size:.9rem}.form-group{margin-bottom:1.2rem}.form-group label{display:block;margin-bottom:.4rem;font-size:.85rem;color:var(--color-text-dim)}.form-group input{width:100%;padding:.6rem .8rem;background:var(--color-bg);border:1px solid var(--color-surface-2);border-radius:6px;color:var(--color-text);font-size:1rem;font-family:inherit}.form-group input:focus{outline:none;border-color:var(--color-accent)}.form-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem}.btn-primary{width:100%;padding:.8rem;margin-top:1rem;background:var(--color-accent);color:var(--color-bg);border:none;border-radius:8px;font-size:1rem;font-family:inherit;font-weight:600;cursor:pointer;transition:opacity .2s}.btn-primary:hover{opacity:.9}.game-screen{display:grid;grid-template-columns:1fr 320px;gap:2rem;align-items:start}.narrative-reader{background:var(--color-surface);border-radius:12px;padding:2rem}.act-indicator{font-size:.8rem;color:var(--color-accent);letter-spacing:.15em;margin-bottom:.5rem}.scene-title{font-size:1.4rem;margin-bottom:1.5rem;color:var(--color-text)}.scene-description p{margin-bottom:.6rem;font-size:1rem;line-height:2}.inner-voices{margin:1.5rem 0;padding:1rem;background:var(--color-bg);border-radius:8px;border-left:3px solid var(--color-awareness)}.inner-voices h4{font-size:.85rem;color:var(--color-text-dim);margin-bottom:.8rem}.voice{margin-bottom:.5rem;font-style:italic}.voice-name{color:var(--color-accent);font-style:normal;font-weight:600}.choices{margin-top:2rem}.choices h4{font-size:.85rem;color:var(--color-text-dim);margin-bottom:1rem}.choice-btn{display:block;width:100%;text-align:left;padding:1rem 1.2rem;margin-bottom:.8rem;background:var(--color-surface-2);border:1px solid transparent;border-radius:8px;color:var(--color-text);font-family:inherit;font-size:.95rem;cursor:pointer;transition:border-color .2s,background .2s;line-height:1.6}.choice-btn:hover{border-color:var(--color-accent);background:#c9a84c14}.choice-insight{margin-top:.5rem}.choice-insight summary{font-size:.8rem;color:var(--color-text-dim);cursor:pointer}.choice-insight p{font-size:.8rem;color:var(--color-text-dim);margin-top:.3rem;padding-left:1rem;border-left:2px solid var(--color-surface)}.archetype-panel{position:sticky;top:1rem}.archetype-panel h3{font-size:1rem;color:var(--color-accent);margin-bottom:1rem}.archetype-grid{display:flex;flex-direction:column;gap:.6rem}.archetype-card{background:var(--color-surface);border:1px solid var(--color-surface-2);border-radius:8px;overflow:hidden;transition:border-color .2s,box-shadow .2s}.archetype-card.active{box-shadow:0 0 12px #c9a84c4d}.card-header{display:flex;align-items:center;gap:.5rem;padding:.4rem .8rem;font-size:.85rem;font-weight:600;color:var(--color-bg)}.sign-symbol{font-size:1rem}.card-body{padding:.5rem .8rem}.card-info{display:flex;justify-content:space-between;font-size:.7rem;color:var(--color-text-dim);margin-bottom:.2rem}.card-position{font-size:.75rem;color:var(--color-text-dim);margin-bottom:.3rem}.card-stage{display:flex;align-items:center;gap:.5rem}.stage-label{font-size:.7rem;white-space:nowrap}.progress-bar{flex:1;height:4px;background:var(--color-bg);border-radius:2px;overflow:hidden}.progress-fill{height:100%;border-radius:2px;transition:width .5s ease}.node-axis{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--color-surface-2)}.node-axis h4{font-size:.85rem;color:var(--color-text-dim);margin-bottom:.8rem}.north-node,.south-node{padding:.6rem;margin-bottom:.5rem;border-radius:6px;background:var(--color-surface)}.north-node{border-left:3px solid var(--color-north-node)}.south-node{border-left:3px solid var(--color-south-node)}.node-symbol{font-size:1.1rem;margin-right:.3rem}.node-label{font-size:.8rem;font-weight:600}.node-sign{font-size:.8rem;color:var(--color-text-dim);margin-left:.5rem}.node-theme{font-size:.75rem;color:var(--color-text-dim);margin-top:.3rem;line-height:1.5}.alignment-bar{margin:.5rem 0}.alignment-label{font-size:.75rem;color:var(--color-text-dim);margin-bottom:.3rem}.alignment-track{height:6px;background:var(--color-bg);border-radius:3px;overflow:hidden}.alignment-fill{height:100%;background:linear-gradient(90deg,var(--color-south-node),var(--color-north-node));border-radius:3px;transition:width .5s ease}@media(max-width:768px){.game-screen{grid-template-columns:1fr}.archetype-panel{position:static}.form-row{grid-template-columns:1fr}}
