@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap");*{box-sizing:border-box}body,html{margin:0;min-height:100%}body{color:var(--color-ink);background:var(--color-background);font-family:var(--font-body);font-size:var(--text-base)}button,input,textarea{font:inherit}button{cursor:pointer}input,textarea{border:1px solid var(--color-line);border-radius:var(--radius-sm);outline-color:var(--color-brand)}.friink-logo{display:inline-block;width:2rem;height:2.25rem}.friink-logo img{width:100%;height:100%;object-fit:contain;filter:invert(56%) sepia(47%) saturate(605%) hue-rotate(92deg) brightness(89%) contrast(86%)}.primary-button{border:0;border-radius:var(--radius-sm);padding:.75rem 1.25rem;color:var(--color-paper);background:var(--color-brand);font-size:var(--text-sm);font-weight:600}.primary-button:disabled{opacity:.45;cursor:not-allowed}.text-link{color:var(--color-brand);font-size:var(--text-sm);font-weight:500}.icon-plain,.text-link{border:0;background:transparent}.icon-plain{color:var(--color-ink)}.user-avatar{display:inline-grid;place-items:center;width:2rem;height:2rem;border:1px solid var(--color-ink);border-radius:50%;font-size:.625rem;font-weight:700}.profile-avatar{overflow:hidden;padding:0;background:var(--color-brand-soft)}.profile-avatar img{display:block;width:100%;height:100%;object-fit:cover}.avatar-coral{background:var(--color-avatar-coral)}.avatar-sage{background:var(--color-avatar-sage)}.avatar-sun{background:var(--color-avatar-sun)}.avatar-mint{background:var(--color-avatar-mint)}.login-screen{display:flex;justify-content:center;min-height:100vh;padding:0;background:var(--color-paper)}.login-form{position:relative;display:grid;align-content:start;width:min(100%,31rem);min-height:100vh;padding:clamp(3rem,10vh,6rem) clamp(1.25rem,5vw,3rem) 5rem;text-align:center;grid-gap:.75rem;gap:.75rem}.brand-lockup{display:grid;justify-items:center;grid-gap:.2rem;gap:.2rem;margin-bottom:1rem;color:var(--color-brand)}.brand-lockup-mark{object-fit:contain}.brand-lockup-mark,.brand-lockup-wordmark{filter:invert(56%) sepia(47%) saturate(605%) hue-rotate(92deg) brightness(89%) contrast(86%)}.brand-lockup-wordmark{width:9rem;height:auto}.brand-lockup-sm .brand-lockup-mark{width:2rem;height:3rem}.brand-lockup-sm .brand-lockup-wordmark{width:6rem}.brand-lockup-md .brand-lockup-mark{width:3rem;height:4.5rem}.brand-lockup-md .brand-lockup-wordmark{width:8rem}.brand-lockup-lg .brand-lockup-mark{width:8rem;height:8rem;transform:translateY(.8rem)}.brand-lockup-lg .brand-lockup-wordmark{width:12rem}.pill-field{position:relative;display:block;width:100%}.pill-field input{width:100%;height:3rem;border:1px solid #9dc7ae;border-radius:var(--radius-pill);padding:0 1rem;color:var(--color-ink);background:#edf1ee;font-size:.95rem}.pill-field input:focus{border-color:var(--color-brand);outline:2px solid rgba(57,173,103,.18)}.pill-field input::placeholder{color:#8a908c;opacity:1}.password-toggle{border:0;padding:0;background:transparent}.password-status,.password-toggle{position:absolute;top:50%;right:1rem;color:#8a908c;font-size:.85rem;transform:translateY(-50%)}.auth-help-copy{justify-self:start;margin-top:.25rem;color:#8a908c;font-size:.85rem;line-height:1.35;text-align:left}.auth-help-copy p{margin:0}.auth-help-copy span,.forgot-password{color:var(--color-brand)}.forgot-password{justify-self:start;border:0;margin-top:.05rem;padding:0;background:transparent;font-size:.85rem}.pill-button{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:.75rem 1.25rem;border:0;border-radius:var(--radius-pill);font:inherit;line-height:1;white-space:nowrap;cursor:pointer}.pill-button-brand{color:var(--color-paper);background:var(--color-brand)}.pill-button-quiet{color:var(--color-ink);background:var(--color-brand-soft)}.login-submit{width:8rem;height:3rem;justify-self:center;margin-top:.15rem;font-size:.95rem;font-weight:500}.auth-next-button{justify-self:end;width:6rem}.login-switch{position:absolute;right:clamp(1.25rem,5vw,3rem);bottom:1.5rem;left:clamp(1.25rem,5vw,3rem);margin:0;color:#8a908c;font-size:.85rem}.login-switch button{border:0;padding:0;color:var(--color-brand);background:transparent;font-size:inherit}@media (max-width:480px){.login-form{padding-top:4.5rem}.brand-lockup{margin-bottom:1.25rem}.brand-lockup-lg .brand-lockup-mark{width:3rem;height:3rem}.brand-lockup-lg .brand-lockup-wordmark{width:9rem}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell{background:var(--color-background)}.app-layout,.app-shell{min-height:100vh;width:100%}.app-layout{margin:0 auto}.sidebar{display:none}.main-panel{min-width:0;min-height:100vh}.main-panel,.topbar{background:var(--color-paper)}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:2;height:var(--space-topbar-height);border-bottom:1px solid var(--color-line)}.topbar-home{display:flex;align-items:center;justify-content:flex-end;height:100%;padding:0 1.125rem}.topbar-avatar{border:0;padding:0;background:transparent}.topbar-avatar .user-avatar{width:1.625rem;height:1.625rem;font-size:.5rem}.topbar-bell{position:relative;border:0;padding:0;background:transparent;font-size:1.125rem}.topbar-bell span{position:absolute;top:-2px;right:-2px;width:.375rem;height:.375rem;border:1px solid var(--color-paper);border-radius:50%;background:var(--color-brand)}.main-content{padding-bottom:calc(var(--space-bottom-nav-height) + .5rem)}.main-content-post{padding-bottom:0}.home-feed{display:grid;width:min(100%,1024px);min-width:256px;margin:0 auto}.feed-post{padding:.75rem 1rem .5rem;border-bottom:1px solid var(--color-line)}.feed-post-heading{position:relative;display:flex;align-items:center;gap:.5rem}.feed-post-meta small,.feed-post-meta strong{display:block}.feed-post-meta strong{font-size:var(--text-xs)}.feed-post-meta small{margin-top:.125rem;color:var(--color-muted);font-size:.625rem}.feed-post-more,.feed-post-star{position:absolute;top:0;font-size:1rem}.feed-post-more{right:0}.feed-post-star{right:1.375rem}.feed-post-body{margin:.625rem 0;font-size:var(--text-sm);line-height:1.45}.feed-post-actions{display:flex;justify-content:space-between;padding-bottom:.375rem}.feed-post-actions button{border:0;padding:.25rem;color:var(--color-ink);background:transparent;font-size:1rem}.post-screen{display:flex;flex-direction:column;min-height:calc(100vh - var(--space-bottom-nav-height))}.post-screen-header{display:flex;align-items:center;gap:.75rem;height:var(--space-topbar-height);padding:0 1rem;border-bottom:1px solid var(--color-line)}.post-screen-header h2{flex:1 1;margin:0;font-size:var(--text-base);font-weight:600}.post-submit{padding:.5rem 1rem}.post-composer{display:flex;gap:.75rem;padding:1rem}.post-composer-body{flex:1 1;min-width:0}.post-composer-body span,.post-composer-body strong{display:block}.post-composer-body span{margin-top:.125rem;color:var(--color-muted);font-size:var(--text-xs)}.post-composer textarea{width:100%;min-height:8rem;margin-top:.75rem;padding:0;resize:vertical;border:0;font-size:var(--text-base);line-height:1.5}.char-count{margin:.5rem 0 0;color:var(--color-muted);font-size:var(--text-xs);text-align:right}.bottom-nav{position:fixed;right:0;bottom:0;left:0;z-index:3;display:flex;justify-content:space-around;height:var(--space-bottom-nav-height);padding:.5rem 0 max(.5rem,env(safe-area-inset-bottom));border-top:1px solid var(--color-line);background:var(--color-paper)}.bottom-nav-item{display:grid;place-items:center;min-width:3rem;border:0;color:var(--color-ink);background:transparent;font-size:1.125rem}.bottom-nav-item.active{color:var(--color-brand)}@media (min-width:768px){.app-layout{display:grid;grid-template-columns:var(--space-sidebar-width) minmax(0,1fr);width:100%}.app-layout:has(.sidebar-collapsed){grid-template-columns:4.5rem minmax(0,1fr)}.sidebar{display:flex;flex-direction:column;padding:.75rem 1.25rem 1.75rem;border-right:1px solid var(--color-line);background:var(--color-paper)}.sidebar-brand{padding:0 .5rem}.sidebar-profile{display:grid;justify-items:start;grid-gap:.75rem;gap:.75rem;margin-top:2rem;padding:0 .5rem 1.5rem;border-bottom:1px solid var(--color-line);text-align:left}.sidebar-profile span,.sidebar-profile strong{display:block}.sidebar-profile strong{font-size:var(--text-sm)}.sidebar-profile span{margin-top:.125rem;color:var(--color-muted);font-size:var(--text-xs)}.sidebar-profile .user-avatar{width:3rem;height:3rem;font-size:.75rem}.sidebar-nav{display:grid;grid-gap:.25rem;gap:.25rem;padding-top:1.25rem}.nav-item{display:flex;align-items:center;gap:.875rem;width:100%;padding:.75rem;border:0;border-radius:var(--radius-sm);color:var(--color-muted);background:transparent;text-align:left;font-size:var(--text-sm)}.nav-item i{width:1.25rem;text-align:center}.nav-item.active{color:var(--color-paper);background:var(--color-brand);font-weight:600}.sidebar-footer{display:grid;grid-gap:.35rem;gap:.35rem;margin-top:auto}.sidebar-action{display:flex;align-items:center;gap:.875rem;width:100%;padding:.75rem;border:0;border-radius:var(--radius-sm);color:var(--color-muted);background:transparent;text-align:left;font-size:var(--text-sm)}.sidebar-action i{width:1.25rem;text-align:center}.sidebar-collapse-button{margin-top:.25rem}.sidebar-collapsed{padding-right:.75rem;padding-left:.75rem}.sidebar-collapsed .nav-item span,.sidebar-collapsed .sidebar-action span,.sidebar-collapsed .sidebar-profile>div{display:none}.sidebar-collapsed .sidebar-brand{display:flex;justify-content:center;padding:0}.sidebar-collapsed .sidebar-profile{justify-items:center;padding-right:0;padding-left:0;text-align:center}.sidebar-collapsed .sidebar-profile .user-avatar{width:2.5rem;height:2.5rem}.sidebar-collapsed .nav-item,.sidebar-collapsed .sidebar-action{justify-content:center;padding-right:.5rem;padding-left:.5rem}.sidebar-footer p{margin:.5rem 0 0;padding:0 .75rem;color:var(--color-muted);font-size:var(--text-xs)}.main-panel{display:flex;flex-direction:column}.main-content{width:100%;margin:0 auto;padding-bottom:2rem}.home-feed{width:min(100%,1024px)}.main-content-post{width:100%;margin:0}.post-screen{min-height:calc(100vh - 2rem)}.bottom-nav{display:none}}