*{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 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)}.nav-btn{background:transparent;color:var(--accent);border:none;font-size:.875rem;cursor:pointer;padding:0}.nav-btn:hover{text-decoration:underline}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-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}
