@import "https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400;0,500;1,400&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#1a1a1a;--surface:#222221;--surface-light:#2a2a29;--text-primary:#ffffffd9;--text-secondary:#fff9;--text-tertiary:#ffffff4d;--text-hint:#ffffff26;--reflection:#a0889e;--creation:#c4956a;--action:#7ba89c;--connection:#d4878f;--exploration:#6b98b8;--serif:"EB Garamond", Georgia, "Times New Roman", serif;--sans:-apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--border:#ffffff0f;--radius:12px}html,body,#root{background:var(--bg);height:100%;color:var(--text-primary);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{color:inherit;cursor:pointer;background:0 0;border:none;font-family:inherit}input,textarea{color:inherit;background:0 0;border:none;outline:none;font-family:inherit}::selection{background:#ffffff1f}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:2px}.snap-container{scroll-snap-type:y mandatory;height:100%;overflow-y:scroll}.snap-item{scroll-snap-align:start;height:100dvh}.welcome-page{justify-content:center;align-items:center;min-height:100%;display:flex;position:relative;overflow:hidden}.welcome-logo-bg{opacity:.04;pointer-events:none;width:420px;height:420px;animation:20s ease-in-out infinite welcome-float;position:absolute}@keyframes welcome-float{0%,to{transform:translate(0)rotate(0)}25%{transform:translate(12px,-18px)rotate(2deg)}50%{transform:translate(-8px,10px)rotate(-1deg)}75%{transform:translate(6px,14px)rotate(1.5deg)}}.welcome-content{z-index:1;text-align:center;width:100%;max-width:380px;padding:60px 32px 80px;animation:1.8s ease-out welcome-fade-in;position:relative}@keyframes welcome-fade-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.welcome-title{font-family:var(--serif);color:var(--text-primary);letter-spacing:-.5px;margin-bottom:24px;font-size:36px;font-weight:400}.welcome-body{font-family:var(--serif);color:var(--text-secondary);margin-bottom:40px;font-size:16px;line-height:1.7}.welcome-enter{font-family:var(--serif);color:var(--text-primary);letter-spacing:.5px;cursor:pointer;background:0 0;border:1px solid #ffffff26;border-radius:28px;padding:14px 36px;font-size:15px;transition:all .3s;display:inline-block}.welcome-enter:hover{background:#ffffff0a;border-color:#ffffff59}.human-glow{color:#e8b84b;text-shadow:0 0 8px #e8b84b80,0 0 20px #e8b84b40;animation:3s ease-in-out infinite human-pulse;position:relative}.human-glow:before,.human-glow:after{content:"";background:#e8b84b;border-radius:50%;width:3px;height:3px;animation:2.4s ease-in-out infinite sparkle;position:absolute}.human-glow:before{animation-delay:0s;top:-4px;right:-2px}.human-glow:after{animation-delay:1.2s;bottom:0;left:-4px}@keyframes human-pulse{0%,to{text-shadow:0 0 8px #e8b84b80,0 0 20px #e8b84b40}50%{text-shadow:0 0 12px #e8b84bb3,0 0 30px #e8b84b59}}@keyframes sparkle{0%,to{opacity:0;transform:scale(0)}20%{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.6)}80%{opacity:0;transform:scale(0)}}.welcome-links{margin-top:20px}.welcome-link{font-family:var(--serif);color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;border-bottom:1px solid #ffffff1a;padding-bottom:1px;font-size:14px;transition:color .2s}.welcome-link:hover{color:var(--text-secondary);border-bottom-color:#ffffff40}.welcome-how-modal{max-width:400px}.welcome-how-close{width:100%;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #ffffff1a;border-radius:24px;margin-top:20px;padding:12px;font-size:14px;transition:all .15s}.welcome-how-close:hover{color:var(--text-primary);border-color:#fff3}.welcome-divider{background:var(--border);width:40px;height:1px;margin:36px auto}.welcome-details{text-align:left}.welcome-summary{letter-spacing:1.5px;text-transform:uppercase;color:var(--text-tertiary);cursor:pointer;text-align:center;font-size:11px;list-style:none;transition:color .2s}.welcome-summary::-webkit-details-marker{display:none}.welcome-summary:hover{color:var(--text-secondary)}.welcome-detail-text{font-family:var(--serif);color:var(--text-tertiary);text-align:center;margin-top:14px;font-size:14px;line-height:1.7}.welcome-how-title{letter-spacing:1.5px;text-transform:uppercase;color:var(--text-tertiary);text-align:center;margin-bottom:20px;font-size:11px}.welcome-steps{flex-direction:column;gap:14px;display:flex}.welcome-step{align-items:flex-start;gap:14px;display:flex}.welcome-step-num{width:24px;height:24px;color:var(--text-tertiary);border:1px solid #ffffff1a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;display:flex}.welcome-step-text{font-family:var(--serif);color:var(--text-secondary);padding-top:2px;font-size:14px;line-height:1.5}.welcome-traits{text-align:left}.welcome-traits-title{letter-spacing:1.5px;text-transform:uppercase;color:var(--text-tertiary);text-align:center;margin-bottom:20px;font-size:11px}.welcome-trait-row{align-items:center;gap:14px;padding:10px 0;display:flex}.welcome-trait-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.welcome-trait-name{letter-spacing:.5px;margin-bottom:1px;font-size:13px;font-weight:500}.welcome-trait-desc{font-family:var(--serif);color:var(--text-tertiary);font-size:13px;line-height:1.4}.welcome-alpha{border-radius:var(--radius);text-align:center;background:#ffffff0a;border:1px solid #ffffff1a;margin-top:32px;padding:16px 20px}.welcome-alpha-badge{letter-spacing:2.5px;text-transform:uppercase;color:var(--exploration);border:1px solid #6b98b859;border-radius:20px;margin-bottom:10px;padding:3px 12px;font-size:9px;display:inline-block}.welcome-alpha-text{font-family:var(--serif);color:var(--text-secondary);font-size:13px;line-height:1.6}.app{flex-direction:column;height:100%;display:flex}.nav-tabs{border-bottom:1px solid var(--border);background:var(--bg);z-index:100;display:flex;position:sticky;top:0}.nav-tabs a{text-align:center;letter-spacing:2.5px;text-transform:uppercase;color:var(--text-tertiary);flex:1;padding:14px 0;font-size:9px;transition:color .2s;position:relative}.nav-tabs a:hover{color:var(--text-secondary)}.nav-tabs a.active{color:var(--text-primary)}.nav-tabs a.active:after{content:"";background:#ffffff4d;height:1px;position:absolute;bottom:0;left:0;right:0}.main-content{flex:1;position:relative;overflow-y:auto}.browse-scroll{scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch;height:100%;overflow-y:scroll}.browse-snap-item{scroll-snap-align:start;scroll-snap-stop:always;height:100%}.scroll-hint{pointer-events:none;z-index:50;flex-direction:column;align-items:center;gap:4px;animation:4s ease-in-out forwards fade-out;display:flex;position:fixed;bottom:32px;left:50%;transform:translate(-50%)}.scroll-hint-text{letter-spacing:2px;text-transform:uppercase;color:var(--text-tertiary);font-size:10px}.scroll-hint-arrow{color:var(--text-tertiary);font-size:14px;animation:1.5s ease-in-out infinite bob}@keyframes fade-out{0%{opacity:1}70%{opacity:1}to{opacity:0}}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}.quest-card{justify-content:center;align-items:center;height:100%;padding:40px;display:flex}.quest-card-inner{text-align:center;width:100%;max-width:400px}.quest-radar{justify-content:center;margin-bottom:4px;display:flex}.quest-trait-name{letter-spacing:3px;text-transform:uppercase;margin-bottom:20px;font-size:10px}.quest-title{font-family:var(--serif);color:var(--text-primary);margin-bottom:12px;font-size:28px;font-weight:400;line-height:1.3}.quest-description{font-family:var(--serif);color:#fffc;text-align:left;background:#00000059;border-radius:14px;margin-bottom:36px;padding:16px 20px;font-size:16px;line-height:1.6}.segmented-bar{margin-bottom:10px}.segmented-bar .bar-labels{justify-content:space-between;margin-bottom:4px;display:flex}.segmented-bar .bar-label{letter-spacing:1.5px;text-transform:uppercase;color:var(--text-tertiary);font-size:9px}.segmented-bar .bar-segments{gap:3px;display:flex}.segmented-bar .segment{background:#ffffff0f;border-radius:2px;flex:1;height:4px}.segmented-bar .segment.filled{opacity:.7}.add-button{letter-spacing:.5px;color:var(--text-secondary);border:1px solid #ffffff26;border-radius:24px;margin-top:32px;padding:12px 32px;font-size:13px;transition:all .2s}.add-button:hover{color:var(--text-primary);border-color:#ffffff40}.add-button.added{background:#ffffff08}.trait-dots{z-index:50;flex-direction:column;align-items:center;gap:6px;display:flex;position:fixed;top:60px;right:20px}.trait-dot{border-radius:50%;transition:all .3s}.list-page{width:100%;max-width:600px;margin:0 auto;padding:24px}.list-page .page-header{letter-spacing:2.5px;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:20px;padding-top:8px;font-size:10px}.pending-card{background:var(--surface);border-radius:var(--radius);border-left:3px solid var(--trait-color);margin-bottom:12px;padding:20px 20px 16px;transition:background .15s;position:relative}.pending-card:hover{background:var(--surface-light)}.pending-card-header{align-items:center;gap:8px;margin-bottom:12px;display:flex}.pending-trait-label{letter-spacing:2px;text-transform:uppercase;flex:1;font-size:10px}.pending-duration{letter-spacing:1px;text-transform:uppercase;color:var(--text-tertiary);font-size:10px}.pending-card-title{font-family:var(--serif);color:var(--text-primary);margin-bottom:8px;font-size:20px;line-height:1.3}.pending-card-description{font-family:var(--serif);color:var(--text-secondary);margin-bottom:16px;font-size:14px;line-height:1.6}.pending-card-actions{border-top:1px solid var(--border);gap:12px;padding-top:12px;display:flex}.pending-card-actions button{letter-spacing:1px;text-transform:uppercase;cursor:pointer;border-radius:8px;padding:6px 14px;font-size:11px;transition:all .15s}.pending-action-done{color:var(--action);background:#7ba89c1a}.pending-action-done:hover{background:#7ba89c33}.pending-action-remove{color:var(--text-tertiary)}.pending-action-remove:hover{color:var(--text-secondary)}.complete-card-note{font-family:var(--serif);color:var(--text-tertiary);border-top:1px solid var(--border);padding-top:12px;font-size:13px;font-style:italic;line-height:1.5}.quest-row{background:var(--surface);border-radius:var(--radius);align-items:center;gap:14px;margin-bottom:8px;padding:16px;transition:background .15s;display:flex}.quest-row:hover{background:var(--surface-light)}.quest-row .row-icon{text-align:center;flex-shrink:0;width:32px;font-size:22px}.quest-row .row-content{flex:1;min-width:0}.quest-row .row-title{font-family:var(--serif);color:var(--text-primary);margin-bottom:2px;font-size:16px}.quest-row .row-meta{color:var(--text-tertiary);letter-spacing:1px;text-transform:uppercase;align-items:center;gap:8px;font-size:11px;display:flex}.quest-row .row-note{font-family:var(--serif);color:var(--text-tertiary);margin-top:8px;font-size:14px;line-height:1.4}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:80px 40px;display:flex}.empty-state .empty-title{font-family:var(--serif);color:var(--text-secondary);margin-bottom:8px;font-size:20px}.empty-state .empty-hint{color:var(--text-tertiary);font-size:13px}.complete-page{flex-direction:column;align-items:center;width:100%;max-width:600px;margin:0 auto;padding:40px 24px 60px;display:flex}.complete-list{width:100%;margin-top:32px}.page-header-row{justify-content:space-between;align-items:center;margin-bottom:20px;padding-top:8px;display:flex}.page-header-row .page-header{margin-bottom:0;padding-top:0}.copy-button{letter-spacing:1.5px;text-transform:uppercase;color:var(--text-tertiary);cursor:pointer;background:0 0;border:1px solid #ffffff1f;border-radius:16px;padding:6px 14px;font-size:10px;transition:all .2s}.copy-button:hover{color:var(--text-secondary);border-color:#ffffff40}.home-stats{align-items:center;gap:32px;margin-top:36px;display:flex}.home-stat{text-align:center}.home-stat .stat-number{font-family:var(--serif);color:var(--text-primary);font-size:32px}.home-stat .stat-label{letter-spacing:2px;text-transform:uppercase;color:var(--text-tertiary);margin-top:4px;font-size:10px}.home-divider{background:var(--border);width:1px;height:36px}.home-recent{width:100%;margin-top:48px}.home-recent .recent-title{letter-spacing:2px;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:12px;font-size:10px}.home-recent .recent-item{font-family:var(--serif);color:var(--text-secondary);border-bottom:1px solid var(--border);padding:10px 0;font-size:15px}.modal-overlay{z-index:200;background:#000000b3;justify-content:center;align-items:center;padding:32px;display:flex;position:fixed;inset:0}.modal-content{background:var(--surface);border-radius:20px;width:100%;max-width:380px;padding:28px}.modal-content .modal-title{font-family:var(--serif);color:var(--text-primary);margin-bottom:8px;font-size:24px}.modal-content .modal-hint{color:var(--text-tertiary);margin-bottom:16px;font-size:13px}.modal-content textarea{background:var(--bg);border-radius:var(--radius);width:100%;font-family:var(--serif);color:var(--text-primary);resize:vertical;min-height:80px;padding:12px;font-size:14px}.modal-content textarea::placeholder{color:var(--text-tertiary)}.modal-content .char-count{color:var(--text-hint);text-align:right;margin-top:4px;margin-bottom:16px;font-size:10px}.modal-content .done-button{width:100%;color:var(--action);letter-spacing:.5px;background:#7ba89c26;border-radius:24px;padding:12px;font-size:14px;transition:background .15s}.modal-content .done-button:hover{background:#7ba89c40}.modal-content .done-button.remove-confirm{color:var(--connection);background:#d4878f26}.modal-content .done-button.remove-confirm:hover{background:#d4878f40}.modal-actions{flex-direction:column;gap:8px;display:flex}.modal-cancel{width:100%;color:var(--text-tertiary);letter-spacing:.5px;cursor:pointer;padding:12px;font-size:14px;transition:color .15s}.modal-cancel:hover{color:var(--text-secondary)}.auth-nudge{background:var(--surface);border:1px solid var(--border);z-index:150;border-radius:16px;align-items:center;gap:16px;max-width:90%;padding:14px 24px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #0006}.auth-nudge .nudge-text{font-family:var(--serif);color:var(--text-secondary);font-size:14px}.auth-nudge .nudge-dismiss{color:var(--text-tertiary);white-space:nowrap;padding:4px 8px;font-size:11px}.export-button{letter-spacing:1.5px;text-transform:uppercase;color:var(--text-tertiary);cursor:pointer;background:0 0;border:1px solid #ffffff1f;border-radius:24px;margin-top:24px;padding:10px 24px;font-size:12px;transition:all .2s}.export-button:hover{color:var(--text-secondary);border-color:#ffffff40}.radar-container{justify-content:center;display:flex}@media (width<=600px){.quest-card{padding:24px}.quest-title{font-size:24px}.quest-description{font-size:15px}.trait-dots{right:12px}.list-page{padding:16px}}
