*{box-sizing:border-box}html,body{margin:0;padding:0}body{color:#2d2a26;background:#faf8f5;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.6}main,.dashboard-page{max-width:44rem;margin:0 auto;padding:2rem 1.5rem}h1{color:#1a1816;letter-spacing:-.02em;margin:0 0 .25rem;font-size:1.75rem;font-weight:700}h2{color:#1a1816;margin:0 0 .25rem;font-size:1.15rem;font-weight:600}p{margin:.25rem 0}section{margin-bottom:2rem}label{color:#4a4540;margin-bottom:.35rem;font-size:.875rem;font-weight:500;display:block}input[type=email],input[type=text],textarea,select{color:#2d2a26;background:#fff;border:1px solid #d8d3cc;border-radius:10px;width:100%;margin-bottom:.75rem;padding:.6rem .85rem;font-family:inherit;font-size:.95rem;transition:border-color .15s}input:focus,textarea:focus,select:focus{border-color:#a89f94;outline:none}textarea{resize:vertical}select{appearance:auto}button{color:#4a4540;cursor:pointer;background:0 0;border:1px solid #d8d3cc;border-radius:10px;padding:.55rem 1.1rem;font-family:inherit;font-size:.875rem;transition:all .15s}button:hover{background:#f0ede8;border-color:#b5afa8}button:disabled{opacity:.45;cursor:not-allowed}button.primary{color:#fff;background:#3d3833;border-color:#3d3833}button.primary:hover{background:#2d2a26;border-color:#2d2a26}button.link{color:#6b5ce7;background:0 0;border:0;margin:0;padding:0;font-size:.875rem;text-decoration:underline}button.link:hover{color:#5346c4;background:0 0}button.remove{color:#fff;background:#e8625a;border:0;border-radius:8px;padding:.2rem .5rem;font-size:.75rem}button.remove:hover{background:#d44a42}.muted{color:#8a8480;font-size:.875rem}.err{color:#c43e3e;font-size:.875rem}.ok{color:#2d7a4f;font-size:.875rem}a{color:#6b5ce7;text-decoration:none}a:hover{text-decoration:underline}.top-nav{background:#fff;border-bottom:1px solid #eae6e1;flex-wrap:wrap;align-items:center;gap:1rem;padding:.85rem 1.5rem;font-size:.875rem;display:flex}.nav-brand{color:#1a1816;margin-right:1.5rem;font-size:1rem;font-weight:700;text-decoration:none}.nav-links{gap:1.25rem;display:flex}.nav-links a{color:#6b6560;font-weight:500;text-decoration:none}.nav-links a:hover{color:#1a1816}.nav-right{align-items:center;gap:.75rem;margin-left:auto;display:flex}.badge{color:#fff;background:#e8625a;border-radius:9999px;justify-content:center;align-items:center;min-width:1.15rem;height:1.15rem;margin-left:.3rem;font-size:.6rem;font-weight:700;display:inline-flex}.dashboard-content{padding-top:0}.welcome-header{margin-bottom:2rem}.welcome-header h1{font-size:1.6rem}.welcome-header p{color:#6b6560;max-width:32rem;font-size:1rem}.inbox-banner{color:#5346c4;background:#f0e6ff;border:1px solid #d8c8f5;border-radius:12px;margin-bottom:1.5rem;padding:.65rem 1rem;font-size:.9rem;font-weight:500;text-decoration:none;display:block}.inbox-banner:hover{background:#e8daff}.need-sections{flex-direction:column;gap:1.25rem;margin-bottom:2.5rem;display:flex}.need-section-card{background:var(--section-color,#f5f3f0);border-radius:16px;padding:1.5rem;transition:box-shadow .2s}.need-section-card:hover{box-shadow:0 2px 12px #0000000a}.section-header{margin-bottom:1.25rem}.section-header h2{margin:0;font-size:1.1rem}.section-header p{color:#6b6560;margin:.15rem 0 0;font-size:.85rem;font-style:italic}.section-sliders{flex-direction:column;gap:.75rem;display:flex}.need-slider{background:#ffffffb3;border-radius:12px;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem 1rem;display:flex}.need-info{flex:1;align-items:center;gap:.65rem;min-width:0;display:flex}.need-emoji{flex-shrink:0;font-size:1.35rem;line-height:1}.need-name{color:#2d2a26;font-size:.875rem;font-weight:600;display:block}.need-desc{color:#8a8480;font-size:.72rem;line-height:1.3;display:block}.need-dots{flex-shrink:0;gap:.45rem;display:flex}.dot{cursor:pointer;background:#fff;border:2px solid #ccc;border-radius:50%;width:1.4rem;height:1.4rem;padding:0;transition:all .15s}.dot:hover{border-color:#999;transform:scale(1.15)}.dot.active{background:#3d3833;border-color:#3d3833}.dot.selected{transform:scale(1.15);box-shadow:0 0 0 3px #3d383333}.saving-float{text-align:center;color:#8a8480;padding:.5rem;font-size:.8rem;animation:1s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.profile-basics{margin-bottom:2rem}.profile-field{margin-bottom:.75rem}.profile-field label{margin-bottom:.35rem}.profile-field input,.profile-field textarea{margin-bottom:0}.profile-meta{flex-wrap:wrap;align-items:center;gap:1rem;margin-top:1rem;display:flex}.auto-saved{color:#2d7a4f;font-size:.75rem}.segmented-control{border:1px solid #d8d3cc;border-radius:10px;display:inline-flex;overflow:hidden}.segmented-control button{color:#6b6560;background:#fff;border:0;border-radius:0;padding:.4rem .9rem;font-size:.8rem;font-weight:500;transition:all .15s}.segmented-control button:hover{background:#f5f3f0}.segmented-control button.seg-active{color:#fff;background:#3d3833}.segmented-control button+button{border-left:1px solid #d8d3cc}.segmented-control button.seg-active+button,.segmented-control button+button.seg-active{border-left-color:#3d3833}.location-btn{color:#6b6560;cursor:pointer;background:0 0;border:0;padding:.4rem 0;font-size:.8rem}.location-btn:hover{color:#2d2a26;background:0 0}.interest-section{margin-bottom:2.5rem}.interest-section>label{margin-bottom:.5rem}.token-input{cursor:text;background:#fff;border:1px solid #d8d3cc;border-radius:10px;flex-wrap:wrap;align-items:center;gap:.4rem;min-height:2.75rem;padding:.5rem .75rem;transition:border-color .15s;display:flex}.token-input:focus-within{border-color:#a89f94}.token{color:#4a4540;white-space:nowrap;background:#f0ede8;border-radius:9999px;align-items:center;gap:.25rem;padding:.2rem .55rem;font-size:.8rem;display:inline-flex}.token button{color:#8a8480;cursor:pointer;background:0 0;border:0;margin:0;padding:0;font-size:.95rem;line-height:1}.token button:hover{color:#c43e3e;background:0 0}.token-text{background:0 0;outline:none;flex:1;min-width:6rem;padding:.15rem 0;font-size:.85rem;border:none!important;margin:0!important}.interest-suggestions{flex-wrap:wrap;gap:.35rem;margin-top:.6rem;display:flex}.suggestion-chip{color:#8a8480;cursor:pointer;background:0 0;border:1px dashed #d8d3cc;border-radius:9999px;padding:.2rem .6rem;font-size:.75rem}.suggestion-chip:hover{color:#4a4540;background:#f5f3f0;border-color:#b5afa8}.offer-row{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.offer-row select{flex-shrink:0;width:auto;margin:0}.offer-row input{flex:1;margin:0}.avail-grid{grid-template-columns:5.5rem repeat(7,1fr);gap:.4rem;max-width:36rem;display:grid}.avail-day-header{text-align:center;color:#4a4540;padding:.35rem 0;font-size:.8rem;font-weight:600}.avail-slot-label{color:#6b6560;justify-content:flex-end;align-items:center;padding-right:.5rem;font-size:.8rem;font-weight:500;display:flex}.avail-cell{aspect-ratio:1;cursor:pointer;color:#0000;background:#fff;border:2px solid #e0dbd5;border-radius:12px;justify-content:center;align-items:center;min-height:2.75rem;padding:0;font-size:1rem;transition:all .15s;display:flex}.avail-cell:hover{background:#f9f7f4;border-color:#b5afa8}.avail-cell.avail-on{color:#2d7a4f;background:#d4edda;border-color:#6abf7b}.avail-cell.avail-on:hover{background:#c3e6cd}.summary-cards{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:1rem;margin-top:1.5rem;display:grid}.card{color:inherit;background:#fff;border:1px solid #eae6e1;border-radius:16px;flex-direction:column;align-items:center;gap:.25rem;padding:1.5rem 1rem;text-decoration:none;display:flex}.card:hover{border-color:#ccc;box-shadow:0 2px 8px #0000000a}.card strong{font-size:1.5rem}.card span{color:#8a8480;font-size:.8rem}.message-list{flex-direction:column;display:flex}.message-row{color:inherit;border-bottom:1px solid #f0ede8;border-radius:8px;align-items:center;gap:1rem;padding:.85rem .5rem;text-decoration:none;display:flex}.message-row:hover{background:#f5f3f0}.message-row.unread{font-weight:600}.message-row.unread:before{content:"";background:#6b5ce7;border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.message-sender{color:#8a8480;flex-shrink:0;width:8rem;font-size:.8rem}.message-subject{flex:1}.message-date{color:#8a8480;flex-shrink:0;font-size:.75rem}.message-body{margin-top:1.25rem;line-height:1.7}.message-body p{margin:.5rem 0}.offer-list{flex-direction:column;gap:.75rem;display:flex}.step-nav{align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.step-nav .primary{margin-left:auto}.progress-bar{background:#eae6e1;border-radius:2px;height:4px;margin-bottom:.5rem}.progress-fill{background:#3d3833;border-radius:2px;height:100%;transition:width .3s}.step-label{margin-bottom:1.5rem}.needs-list{flex-direction:column;gap:1.25rem;display:flex}.need-item label{margin-bottom:.25rem}.need-item input[type=range]{width:100%;margin:0}.range-labels{color:#999;justify-content:space-between;font-size:.7rem;display:flex}@media (max-width:640px){main,.dashboard-page{padding:1rem}.need-slider{flex-direction:column;align-items:flex-start;gap:.5rem}.need-dots{align-self:flex-end}.profile-meta{flex-direction:column;align-items:flex-start}.avail-grid{grid-template-columns:3.5rem repeat(7,1fr);gap:.25rem}.avail-cell{border-radius:8px;min-height:2.5rem}.avail-slot-label,.avail-day-header{font-size:.7rem}.top-nav{gap:.5rem;padding:.5rem 1rem}.nav-links{gap:.5rem;font-size:.8rem}.summary-cards{grid-template-columns:1fr}.welcome-header h1{font-size:1.3rem}}
