*{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #121016;--bg-secondary: #1a171f;--bg-card: #241f2a;--text-primary: #f5eef1;--text-secondary: #a89ba0;--accent: #F4A6B8;--accent-hover: #E97A93;--positive: #81c995;--negative: #f28b82;--border: #3d343f}html,body,#root{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.5}.app{min-height:100%;display:flex;flex-direction:column}header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:var(--bg-secondary);border-bottom:1px solid var(--border)}.logo{display:flex;align-items:center;gap:.5rem;font-size:1.25rem;font-weight:600;color:var(--text-primary);text-decoration:none}.logo-icon{color:var(--accent)}nav{display:flex;align-items:center;gap:.5rem}nav a{color:var(--accent);text-decoration:none;font-size:.875rem}.header-left{display:flex;align-items:center;gap:.75rem}.back-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);cursor:pointer}.back-btn:hover{color:var(--text-primary);border-color:var(--text-secondary)}.btn-signin{background:var(--accent);color:var(--bg-primary);border:none;padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer}.btn-signin:hover{background:var(--accent-hover)}.header-actions{display:flex;align-items:center;gap:.75rem}.notification-btn{position:relative;display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);cursor:pointer}.notification-btn:hover{color:var(--accent);border-color:var(--accent)}.notification-badge{position:absolute;top:6px;right:6px;width:8px;height:8px;background:var(--accent);border-radius:50%;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.user-menu{position:relative}.user-menu-trigger{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem .375rem .375rem;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:.875rem}.user-menu-trigger:hover{border-color:var(--text-secondary)}.user-avatar{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--accent);border-radius:50%;color:var(--bg-primary)}.user-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chevron{color:var(--text-secondary)}.menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99}.user-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #0000004d;z-index:100;overflow:hidden}.menu-header{padding:.75rem 1rem;border-bottom:1px solid var(--border)}.menu-email{font-size:.75rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis}.user-menu-dropdown a,.user-menu-dropdown button{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;background:transparent;border:none;color:var(--text-primary);text-decoration:none;font-size:.875rem;cursor:pointer;text-align:left}.user-menu-dropdown a:hover,.user-menu-dropdown button:hover{background:var(--bg-secondary)}.user-menu-dropdown svg{color:var(--text-secondary)}.menu-divider{height:1px;background:var(--border)}main{flex:1;padding:1.5rem;max-width:600px;margin:0 auto;width:100%}h2{margin-bottom:1rem;font-size:1.5rem}h3{margin-bottom:.75rem;font-size:1.125rem;color:var(--text-secondary)}.tracker-list{display:flex;flex-direction:column;gap:.75rem}.tracker-card{display:block;padding:1rem;background:var(--bg-card);border-radius:8px;text-decoration:none;color:inherit;transition:background .2s}.tracker-card:hover{background:#2a2f3a}.tracker-name{font-weight:600;margin-bottom:.25rem}.tracker-desc{font-size:.875rem;color:var(--text-secondary);margin-bottom:.5rem}.tracker-balance,.balance{font-size:1.5rem;font-weight:700;font-variant-numeric:tabular-nums}.positive{color:var(--positive)}.negative{color:var(--negative)}.tracker-detail .balance{font-size:3rem;margin:1rem 0 2rem}.back-link{display:inline-block;color:var(--accent);text-decoration:none;margin-bottom:1rem;font-size:.875rem}.description{color:var(--text-secondary);margin-bottom:1rem}.propose-form,.login form,.create-tracker form{background:var(--bg-card);padding:1rem;border-radius:8px;margin-bottom:2rem}.propose-form{display:flex;flex-direction:column;gap:.5rem}.propose-form h3{margin-bottom:.25rem}.propose-form input{margin-bottom:0}.propose-form>button{width:100%}.amount-input{display:flex;gap:.5rem}.amount-input input{flex:1}.sign-toggle{display:flex;flex-shrink:0;border-radius:6px;overflow:hidden;border:1px solid var(--border)}.sign-toggle button{width:44px;padding:.5rem;font-size:1.25rem;font-weight:700;border:none;border-radius:0;background:var(--bg-secondary);color:var(--text-secondary)}.sign-toggle button:first-child{border-right:1px solid var(--border)}.sign-toggle button.active{background:var(--accent);color:var(--bg-primary)}.sign-toggle button:hover:not(.active){background:var(--bg-card)}.login h2{margin-bottom:1rem}input{width:100%;padding:.75rem;margin-bottom:.75rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-size:1rem}input:focus{outline:none;border-color:var(--accent)}input::placeholder{color:var(--text-secondary)}button{padding:.75rem 1.5rem;background:var(--accent);color:var(--bg-primary);border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:opacity .2s}button:hover{background:var(--accent-hover)}.message{margin-top:.75rem;padding:.75rem;background:var(--positive);color:var(--bg-primary);border-radius:6px;font-size:.875rem}.error{margin-top:.75rem;padding:.75rem;background:var(--negative);color:var(--bg-primary);border-radius:6px;font-size:.875rem}.log{margin-top:2rem}.transaction{display:flex;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--border);align-items:center}.transaction .amount{font-weight:600;min-width:60px}.transaction .desc{flex:1;color:var(--text-secondary)}.transaction .date{font-size:.75rem;color:var(--text-secondary)}.empty{color:var(--text-secondary);font-style:italic}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.logout-btn{background:transparent;color:var(--text-secondary);border:1px solid var(--border);padding:.5rem 1rem;font-size:.875rem}.proposals,.create-tracker,.tracker-list-admin{margin-bottom:2rem}.proposal{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--bg-card);border-radius:8px;margin-bottom:.5rem}.proposal-info{display:flex;gap:1rem;align-items:center}.proposal-info .tracker-name,.proposal-info .amount{font-weight:600}.proposal-info .desc{color:var(--text-secondary)}.proposal-info .proposer{font-size:.75rem;color:var(--text-secondary);font-style:italic;margin-left:auto}.proposal-info .wager-stakes{font-size:.75rem;color:var(--text-secondary);display:block;width:100%;margin-top:.25rem}.proposal-actions{display:flex;gap:.5rem}.proposal-actions button{padding:.5rem 1rem;font-size:.875rem}.approve{background:var(--positive)}.reject{background:var(--negative)}.tracker-row{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:var(--bg-card);border-radius:6px;margin-bottom:.5rem}.tracker-row .tracker-name{flex:1}.tracker-row .balance{font-weight:600;min-width:60px;text-align:right}.adjust-btn{background:transparent;color:var(--text-secondary);border:1px solid var(--border);padding:.25rem .75rem;font-size:.75rem}.adjust-form{display:flex;gap:.5rem;align-items:center}.adjust-form input{width:100px;padding:.25rem .5rem;font-size:.875rem}.adjust-form input[type=text]{width:150px}.adjust-form button{padding:.25rem .75rem;font-size:.75rem}.adjust-form .cancel{background:transparent;color:var(--text-secondary);border:1px solid var(--border)}.edit-btn{background:transparent;color:var(--text-secondary);border:1px solid var(--border);padding:.25rem .75rem;font-size:.75rem}.tracker-edit-card{background:var(--bg-card);padding:1rem;border-radius:8px;margin-bottom:.5rem;border:1px solid var(--accent)}.tracker-edit-card .edit-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;color:var(--text-secondary);font-size:.875rem}.tracker-edit-card .cancel-btn{background:transparent;color:var(--text-secondary);border:none;font-size:.875rem;cursor:pointer;padding:0}.tracker-edit-card .cancel-btn:hover{color:var(--negative)}.edit-actions{display:flex;gap:.5rem;margin-top:.5rem}.edit-actions button:first-child{flex:1}.delete-btn{background:transparent;color:var(--negative);border:1px solid var(--negative);padding:.25rem .75rem;font-size:.75rem}.delete-btn:hover{background:var(--negative);color:var(--bg-primary)}.tracker-adjust-card{background:var(--bg-card);padding:1rem;border-radius:8px;margin-bottom:.5rem;border:1px solid var(--positive)}.tracker-adjust-card .adjust-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.tracker-adjust-card .adjust-title{font-weight:600;font-size:1rem}.tracker-adjust-card .adjust-current{font-size:.875rem;color:var(--text-secondary)}.tracker-adjust-card .adjust-current span{font-weight:600}.adjust-actions{display:flex;gap:.5rem;margin-top:.5rem}.adjust-actions button:first-child{flex:1}.adjust-actions .cancel-btn{background:transparent;color:var(--text-secondary);border:1px solid var(--border);font-weight:400}.adjust-actions .cancel-btn:hover{color:var(--negative);border-color:var(--negative);background:transparent}.tracker-actions{display:flex;gap:.5rem;align-items:center}.tracker-row .tracker-name{flex:1;color:var(--accent);text-decoration:none}.tracker-row .tracker-name:hover{text-decoration:underline}.login{max-width:300px;margin:2rem auto}.proposal-type-toggle{display:flex;margin-bottom:.75rem;border-radius:8px;overflow:hidden;border:1px solid var(--border)}.proposal-type-toggle button{flex:1;padding:.625rem;background:var(--bg-secondary);border:none;border-radius:0;color:var(--text-secondary);font-weight:500;font-size:.875rem}.proposal-type-toggle button:first-child{border-right:1px solid var(--border)}.proposal-type-toggle button.active{background:var(--accent);color:var(--bg-primary)}.proposal-type-toggle button:hover:not(.active){background:var(--bg-card)}.wager-balance-preview{text-align:center;font-size:.875rem;color:var(--text-secondary);margin-bottom:.5rem}.wager-outcomes{background:var(--bg-secondary);border-radius:6px;padding:.75rem;margin-top:.5rem}.wager-outcomes .outcome{display:flex;align-items:center;gap:.5rem;padding:.375rem 0;font-size:.875rem}.wager-outcomes .outcome:first-child{border-bottom:1px solid var(--border)}.wager-outcomes .label{color:var(--text-secondary);min-width:80px}.wager-outcomes .arrow{color:var(--text-secondary)}.wager-proposal{border:1px solid var(--accent)}.wager-badge{background:var(--accent);color:var(--bg-primary);font-size:.625rem;font-weight:700;padding:.125rem .375rem;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.wager-actions{display:flex;flex-direction:column;gap:.5rem;align-items:stretch}.flip-btn{background:var(--accent);padding:.625rem 1rem;font-weight:600}.flip-btn:disabled{opacity:.7;cursor:not-allowed}.manual-verdict{display:flex;gap:.375rem;align-items:center;justify-content:center}.or-text{color:var(--text-secondary);font-size:.75rem}.win-btn,.lose-btn{padding:.375rem .75rem;font-size:.75rem;border:1px solid transparent}.win-btn{background:transparent;color:var(--positive);border-color:var(--positive)}.win-btn:hover{background:var(--positive);color:var(--bg-primary)}.lose-btn{background:transparent;color:var(--negative);border-color:var(--negative)}.lose-btn:hover{background:var(--negative);color:var(--bg-primary)}.reject-wager{background:transparent;color:var(--text-secondary);border:1px solid var(--border);font-size:.75rem;padding:.375rem .75rem}.reject-wager:hover{color:var(--negative);border-color:var(--negative);background:transparent}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:100;padding:1rem}.modal{background:var(--bg-card);border-radius:12px;padding:2rem;max-width:320px;width:100%;text-align:center}.coin-flip-modal h2{margin:1rem 0 .5rem;font-size:1.5rem}.coin{width:80px;height:80px;margin:0 auto;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;animation:coin-flip .6s ease-out}.coin.heads{background:linear-gradient(135deg,gold,#fa0);color:#1a1a1a}.coin.tails{background:linear-gradient(135deg,silver,gray);color:#1a1a1a}.coin-face{transform:scale(1.2)}@keyframes coin-flip{0%{transform:rotateY(0) scale(.5);opacity:0}50%{transform:rotateY(540deg) scale(1.1)}to{transform:rotateY(720deg) scale(1);opacity:1}}.coin-result-text{color:var(--text-secondary);font-size:.875rem;margin-bottom:.5rem}.manual-badge{font-style:italic;opacity:.7}.wager-outcome{font-size:1.25rem;font-weight:600;margin-bottom:1.5rem}.coin-flip-modal button{width:100%}@media(max-width:600px){.proposal{flex-direction:column;gap:.75rem;align-items:stretch}.proposal-info{flex-wrap:wrap;gap:.5rem}.wager-actions{width:100%}.manual-verdict{flex-wrap:wrap}}.settings{max-width:600px;margin:0 auto;padding:1.5rem}.settings h2{margin-bottom:1.5rem}.settings-section{background:var(--bg-card);border-radius:8px;padding:1.25rem;margin-bottom:1rem;border:1px solid var(--border)}.settings-section h3{font-size:1rem;margin-bottom:.75rem;color:var(--text-primary)}.settings-section p{color:var(--text-secondary);font-size:.9rem;margin-bottom:.75rem}.settings-section.danger-zone{border-color:var(--negative)}.settings-section.danger-zone h3{color:var(--negative)}.form-row{margin-bottom:1rem}.form-row:last-child{margin-bottom:0}.form-row label{display:block;font-size:.85rem;color:var(--text-secondary);margin-bottom:.25rem}.form-row .form-value{margin:0;color:var(--text-primary)}.input-with-action{display:flex;gap:.5rem;align-items:center}.input-with-action input{flex:1}.input-with-action button{padding:.5rem 1rem;white-space:nowrap}.inline-message{font-size:.85rem;color:var(--positive)}.external-links{display:flex;flex-wrap:wrap;gap:.5rem}.external-links a{text-decoration:none}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border);padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.9rem;display:inline-block;transition:background .2s}.btn-secondary:hover{background:var(--bg-card)}.btn-danger{background:var(--negative);color:var(--bg-primary);border:none;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500}.btn-danger:hover{opacity:.9}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.data-preview{background:var(--bg-secondary);padding:1rem;border-radius:6px;margin-bottom:1rem}.data-preview p{margin-bottom:.5rem}.data-preview p:last-child{margin-bottom:0}.welcome-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center;padding:2rem 1rem}.welcome-hero{margin-bottom:2rem}.welcome-icon{margin-bottom:1rem}.welcome-page h1{font-size:2.5rem;margin-bottom:.5rem;color:var(--text-primary)}.welcome-tagline{font-size:1.125rem;color:var(--text-secondary);margin:0}.welcome-features{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem;text-align:left}.feature{display:flex;align-items:center;gap:1rem;color:var(--text-secondary)}.feature-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--bg-card);border-radius:8px;color:var(--accent);font-weight:700;font-size:.875rem;flex-shrink:0}.btn-primary{background:var(--accent);color:var(--bg-primary);border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer}.btn-primary:hover{background:var(--accent-hover)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-large{padding:1rem 2.5rem;font-size:1.125rem}.welcome-footer{margin-top:1.5rem;font-size:.875rem;color:var(--text-secondary)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;text-align:center;padding:2rem}.empty-icon{color:var(--text-secondary);margin-bottom:1.5rem}.empty-state h2{margin-bottom:.75rem;font-size:1.5rem}.empty-state p{color:var(--text-secondary);max-width:300px;margin-bottom:1.5rem}.empty-actions{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center}.loading-spinner{display:flex;align-items:center;justify-content:center;min-height:40vh;color:var(--text-secondary)}.home-section{margin-bottom:2rem}.home-section-title{font-size:.875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.home-cards{display:flex;flex-direction:column;gap:.75rem}.home-card{display:flex;flex-direction:column;gap:.5rem;padding:1rem 1.25rem;background:var(--bg-card);border-radius:12px;text-decoration:none;color:inherit;border:1px solid var(--border);transition:border-color .2s,background .2s}.home-card:hover{border-color:var(--accent);background:var(--bg-secondary)}.home-card-main{display:flex;justify-content:space-between;align-items:center}.home-card-name{font-size:1.125rem;font-weight:600;color:var(--text-primary)}.home-card-balance{font-size:1.5rem;font-weight:700;font-variant-numeric:tabular-nums}.home-card-meta{display:flex;gap:1rem;font-size:.875rem;color:var(--text-secondary)}.home-actions{display:flex;flex-direction:column;gap:.75rem}.action-card{display:flex;align-items:center;gap:1rem;width:100%;padding:1rem 1.25rem;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;cursor:pointer;text-align:left;transition:border-color .2s,background .2s}.action-card:hover{border-color:var(--accent);background:var(--bg-secondary)}.action-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--bg-secondary);border-radius:10px;color:var(--accent);flex-shrink:0}.action-text{display:flex;flex-direction:column;gap:.125rem}.action-title{font-size:1rem;font-weight:600;color:var(--text-primary)}.action-desc{font-size:.875rem;color:var(--text-secondary)}.relationship-group{margin-bottom:1.5rem}.relationship-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--bg-secondary);border-radius:8px 8px 0 0;text-decoration:none;color:inherit;border:1px solid var(--border);border-bottom:none}.relationship-header:hover{background:var(--bg-card)}.relationship-name{font-weight:600;color:var(--accent)}.relationship-meta{font-size:.875rem;color:var(--text-secondary)}.tracker-grid{display:grid;gap:.5rem;padding:.75rem;background:var(--bg-card);border-radius:0 0 8px 8px;border:1px solid var(--border);border-top:none}.relationship-actions{display:flex;gap:.75rem;margin-top:1.5rem;flex-wrap:wrap}.relationship-detail{max-width:600px;margin:0 auto}.relationship-header{margin-bottom:1rem}.relationship-header h2{display:flex;align-items:center;gap:1rem}.rename-btn{font-size:.75rem;padding:.25rem .5rem;background:transparent;color:var(--text-secondary);border:1px solid var(--border);border-radius:4px;cursor:pointer}.rename-btn:hover{color:var(--accent);border-color:var(--accent)}.rename-form{display:flex;gap:.5rem;align-items:center}.rename-form input{flex:1;padding:.5rem;font-size:1rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:4px;color:var(--text-primary)}.rename-form input:focus{outline:none;border-color:var(--accent)}.rename-form button{padding:.5rem 1rem;border-radius:4px;font-size:.875rem}.rename-form button[type=submit]{background:var(--accent);color:var(--bg-primary);border:none}.rename-form button[type=button]{background:transparent;color:var(--text-secondary);border:1px solid var(--border)}.tabs{display:flex;gap:.25rem;margin-bottom:1.5rem;background:var(--bg-secondary);padding:.25rem;border-radius:8px}.tabs button{flex:1;padding:.625rem .75rem;background:transparent;border:none;border-radius:6px;color:var(--text-secondary);font-size:.875rem;cursor:pointer}.tabs button.active{background:var(--accent);color:var(--bg-primary)}.tabs button:hover:not(.active){background:var(--bg-card);color:var(--text-primary)}.member-row{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:var(--bg-card);border-radius:6px;margin-bottom:.5rem}.member-info{display:flex;flex-direction:column;flex:1;min-width:0}.member-name{font-size:.875rem;color:var(--text-primary);font-weight:500}.member-email-sub{font-size:.75rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis}.member-email{font-size:.875rem;color:var(--text-primary);flex:1}.member-role{font-size:.75rem;padding:.25rem .5rem;border-radius:4px;text-transform:uppercase;font-weight:600}.member-role.controller{background:var(--accent);color:var(--bg-primary)}.member-role.member{background:var(--bg-secondary);color:var(--text-secondary)}.member-actions{display:flex;gap:.5rem;margin-left:auto}.member-actions button{padding:.25rem .75rem;font-size:.75rem;background:transparent;color:var(--text-secondary);border:1px solid var(--border)}.remove-btn{color:var(--negative)!important;border-color:var(--negative)!important}.you-badge{font-size:.75rem;color:var(--text-secondary);margin-left:auto}.invite-row{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:var(--bg-card);border-radius:6px;margin-bottom:.5rem}.invite-code{font-family:monospace;font-size:1rem;font-weight:600;color:var(--accent);letter-spacing:.1em}.invite-role{font-size:.75rem;padding:.25rem .5rem;border-radius:4px;text-transform:uppercase;font-weight:600}.invite-role.controller{background:var(--accent);color:var(--bg-primary)}.invite-role.member{background:var(--bg-secondary);color:var(--text-secondary)}.invite-uses{font-size:.875rem;color:var(--text-secondary);margin-left:auto}.invite-role-select{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.invite-role-select label{display:flex;align-items:center;gap:.5rem;cursor:pointer;color:var(--text-primary)}.invite-role-select input[type=radio]{width:auto;margin:0}.modal-actions{display:flex;gap:.5rem;margin-top:1rem}.modal-actions button{flex:1}.modal-actions button:not(.btn-primary):not(.btn-danger){background:transparent;color:var(--text-secondary);border:1px solid var(--border)}.login-prompt{text-align:center;padding:2rem;background:var(--bg-card);border-radius:8px;margin:1rem 0}.login-prompt p{color:var(--text-secondary);margin-bottom:1rem}.push-error{background:var(--negative);color:var(--bg-primary);padding:.75rem 1.5rem;text-align:center;font-size:.875rem}.modal-desc{color:var(--text-secondary);font-size:.875rem;margin-bottom:1rem;text-align:center}.invite-code-input{text-align:center;font-size:1.5rem;font-weight:700;font-family:monospace;letter-spacing:.3em;text-transform:uppercase;padding:1rem;background:var(--bg-primary);border:2px solid var(--border);border-radius:8px}.invite-code-input:focus{border-color:var(--accent)}.invite-code-input::placeholder{font-weight:400;opacity:.4}.safety-notice{margin-top:3rem;padding:1.5rem;background:var(--bg-card);border-radius:8px;border:1px solid var(--border);max-width:400px;text-align:left}.safety-notice h3{color:var(--text-primary);margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}.safety-notice p{color:var(--text-secondary);font-size:.875rem;margin-bottom:.75rem;line-height:1.6}.safety-notice strong{color:var(--text-primary)}.resource-links{list-style:none;margin:0;padding:0}.resource-links li{margin-bottom:.5rem}.resource-links a{color:var(--accent);text-decoration:none;font-size:.875rem}.resource-links a:hover{text-decoration:underline}.safety-icon-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:none;color:var(--text-secondary);opacity:.6;transition:opacity .2s;cursor:pointer}.safety-icon-btn:hover{opacity:1;color:var(--accent);background:transparent}.safety-modal{max-width:420px;text-align:left}.safety-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.safety-modal-header h2{margin:0;font-size:1.25rem}.modal-close{background:transparent;border:none;padding:.25rem;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center}.modal-close:hover{color:var(--text-primary);background:transparent}.safety-modal-content{margin-bottom:1.5rem}.safety-modal-content p{color:var(--text-secondary);font-size:.875rem;margin-bottom:.75rem;line-height:1.6}.safety-modal-content strong{color:var(--text-primary)}
