:root{--ink:#15221d;--paper:#fffdf6;--moss:#174f3c;--mint:#b9f36b;--coral:#ff7557;--line:#dfe5dc}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:#e5eee7;color:var(--ink);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}.social-header{position:sticky;z-index:5;top:0;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px clamp(16px,4vw,56px);background:rgba(255,253,246,.94);border-bottom:1px solid rgba(23,79,60,.12);backdrop-filter:blur(16px)}.social-brand{display:flex;align-items:center;gap:11px;color:inherit;text-decoration:none}.social-brand img{width:46px;height:46px;border-radius:50%;object-fit:cover}.social-brand span{display:flex;flex-direction:column}.social-brand strong{font-size:17px}.social-brand small{margin-top:3px;color:#71847b;font-size:11px}.map-link,.primary-link{padding:11px 15px;border-radius:12px;background:var(--moss);color:#fff;font-size:13px;font-weight:800;text-decoration:none}.social-shell{width:min(1180px,calc(100% - 30px));margin:36px auto 70px}.state-card,.panel,.social-intro{border:1px solid rgba(23,79,60,.12);border-radius:22px;background:var(--paper);box-shadow:0 16px 50px rgba(17,46,35,.08)}.state-card{max-width:620px;margin:12vh auto;padding:34px}.state-card h1{font-size:32px;letter-spacing:-.04em}.social-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px;padding:25px 28px}.social-intro h1{margin:4px 0 5px;font-size:34px;letter-spacing:-.045em}.social-intro p:last-child{margin:0;color:#6d8077}.social-intro button{padding:11px 15px;border:0;border-radius:12px;background:#e8ede8;color:#476057;font-weight:800;cursor:pointer}.eyebrow{margin:0;color:#73877d;font-size:10px;font-weight:900;letter-spacing:.15em}.social-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);gap:18px}.panel{padding:23px}.panel h2{margin:5px 0 19px;font-size:22px;letter-spacing:-.03em}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between}.count-pill{display:grid;place-items:center;min-width:30px;height:30px;padding:0 9px;border-radius:999px;background:var(--moss);color:#fff;font-size:12px;font-weight:850}.friends-column{display:flex;flex-direction:column;gap:18px}.event-list,.friend-list{display:flex;flex-direction:column;gap:10px}.timeline-event{position:relative;padding:17px 18px 17px 23px;border:1px solid var(--line);border-radius:15px;background:#fff}.timeline-event:before{content:"";position:absolute;left:0;top:15px;bottom:15px;width:5px;border-radius:0 5px 5px 0;background:var(--coral)}.timeline-event h3{margin:0 0 5px;font-size:16px}.timeline-event p{margin:3px 0;color:#6d8177;font-size:12px}.timeline-event a{display:inline-block;margin-top:7px;color:var(--moss);font-size:11px;font-weight:850}.empty-state{padding:18px;border:1px dashed #cbd6cf;border-radius:14px;color:#72847c;font-size:12px;line-height:1.5}.friend-form{display:grid;grid-template-columns:1fr auto;gap:8px}.friend-form input{min-width:0;height:43px;padding:0 12px;border:1px solid #ccd6d0;border-radius:11px;outline:none}.friend-form input:focus{border-color:var(--moss);box-shadow:0 0 0 3px rgba(23,79,60,.1)}.friend-form button,.request-actions button{border:0;border-radius:11px;background:var(--moss);color:#fff;font-weight:800;cursor:pointer}.friend-message{min-height:16px;margin:10px 0 0;color:#267050;font-size:11px;font-weight:750}.friend-message.is-error{color:#b53d2d}.friend-card{padding:14px;border:1px solid var(--line);border-radius:14px;background:#fff}.friend-name{font-size:14px;font-weight:850}.friend-status{margin-top:4px;color:#788a82;font-size:10px}.friend-events{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.friend-event{padding:6px 8px;border-radius:999px;background:#eef3eb;color:#395c4e;font-size:10px;font-weight:750}.request-actions{display:flex;gap:7px;margin-top:10px}.request-actions button{padding:7px 10px;font-size:11px}.request-actions .decline{background:#e8ece8;color:#53685f}[hidden]{display:none!important}@media(max-width:800px){.social-shell{margin-top:18px}.social-grid{grid-template-columns:1fr}.social-intro{align-items:flex-start;padding:21px}.social-intro h1{font-size:28px}.panel{padding:19px}}@media(max-width:480px){.social-header{padding:10px 12px}.social-brand img{width:40px;height:40px}.map-link{padding:9px 11px}.friend-form{grid-template-columns:1fr}.friend-form button{height:42px}}
