:root{--figma-black-white-white:#fff;--figma-black-white-light-grey:#888;--figma-black-white-grey:#2f2f2f;--figma-black-white-dark-grey:#181818;--figma-black-white-black:#101010;--figma-black-white-half-fill-light-grey:#88888880;--figma-black-white-half-fill-grey:#2f2f2f80;--figma-black-white-half-fill-dark-grey:#18181880;--figma-semantic-full-fill-nutrition:#b1f042;--figma-semantic-full-fill-activity:#ff5a1f;--figma-semantic-full-fill-sleep:#b286fd;--figma-semantic-full-fill-connection:#ff1fb4;--figma-semantic-full-fill-workstudy:#1ca0ff;--figma-semantic-half-fill-nutrition:#b1f04280;--figma-semantic-half-fill-activity:#ff5a1f80;--figma-semantic-half-fill-sleep:#b286fd80;--figma-semantic-half-fill-connection:#ff1fb480;--figma-semantic-half-fill-workstudy:#1ca0ff80;--figma-semantic-quater-fill-nutrition:#b1f04240;--figma-semantic-quater-fill-activity:#ff5a1f40;--figma-semantic-quater-fill-sleep:#b286fd40;--figma-semantic-quater-fill-connection:#ff1fb440;--figma-semantic-quater-fill-workstudy:#1ca0ff40;--nrd-color-black:var(--figma-black-white-black);--nrd-color-dark-grey:var(--figma-black-white-dark-grey);--nrd-color-mid-grey:var(--figma-black-white-grey);--nrd-color-light-grey:var(--figma-black-white-light-grey);--nrd-color-white:var(--figma-black-white-white);--nrd-color-positive:var(--figma-semantic-full-fill-nutrition);--nrd-color-negative:var(--figma-semantic-full-fill-activity);--nrd-color-overlay-clear:#10101000;--nrd-color-pill-muted:var(--figma-black-white-half-fill-light-grey);--nrd-color-badge-muted:var(--figma-black-white-half-fill-light-grey);--nrd-color-bottom-nav:var(--figma-black-white-half-fill-grey);--nrd-color-nav-active:var(--figma-black-white-half-fill-light-grey);--nrd-color-skeleton-glint:#ffffff1f;color:var(--nrd-color-white);background:var(--nrd-color-black);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{background:var(--nrd-color-black);min-width:320px;min-height:100%;margin:0}body{min-height:100svh}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}.app-screen{background:var(--nrd-color-black);min-height:100svh;color:var(--nrd-color-white)}.phone-frame{width:min(100%,393px);min-height:100svh;padding:16px 8px calc(env(safe-area-inset-bottom,0px) + 16px);background:var(--nrd-color-black);margin:0 auto}.main-frame,.events-frame{padding-bottom:calc(env(safe-area-inset-bottom,0px) + 94px);position:relative}.topbar{z-index:10;background:linear-gradient(180deg, var(--nrd-color-black) 0%, var(--nrd-color-black) 72%, var(--nrd-color-overlay-clear) 100%);align-items:center;gap:8px;width:100%;padding-bottom:16px;display:flex;position:sticky;top:0}.events-topbar{padding-bottom:16px}.profile-button{cursor:pointer;background:0 0;border:0;border-radius:16px;flex:none;width:48px;height:48px;padding:0;display:block}.avatar{background:var(--nrd-color-dark-grey);color:var(--nrd-color-white);letter-spacing:0;place-items:center;font-weight:500;display:grid;position:relative;overflow:hidden}.avatar-small{border-radius:16px;width:48px;height:48px;font-size:15px}.avatar-large{border-radius:24px;flex:none;width:64px;height:64px;font-size:18px;overflow:visible}.avatar img{border-radius:inherit;object-fit:cover;width:100%;height:100%;display:block}.avatar-badge{background:var(--nrd-color-badge-muted);width:24px;height:24px;color:var(--nrd-color-white);border-radius:8px;place-items:center;font-size:18px;font-weight:500;line-height:1;display:grid;position:absolute;bottom:-1px;right:-1px}.avatar-upload{cursor:pointer;flex:none;width:64px;height:64px;display:block;position:relative}.avatar-upload input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.avatar-upload.is-uploading{opacity:.65;cursor:wait}.time-picker{flex:auto;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;min-width:0;height:48px;display:grid}.time-picker button,.wide-action{background:var(--nrd-color-dark-grey);color:var(--nrd-color-light-grey);cursor:pointer;border:0;border-radius:16px}.time-picker button{letter-spacing:0;min-width:0;padding:0;font-size:16px;font-weight:500;line-height:1}.time-picker button.is-active{background:var(--nrd-color-white);color:var(--nrd-color-black)}.events-search{background:var(--nrd-color-dark-grey);min-width:0;height:48px;color:var(--nrd-color-light-grey);border-radius:16px;flex:auto;align-items:center;gap:10px;padding:0 12px;display:flex}.events-search input{width:100%;min-width:0;color:var(--nrd-color-white);letter-spacing:0;background:0 0;border:0;outline:0;padding:0;font-size:16px;font-weight:400;line-height:1}.events-search input::placeholder{color:var(--nrd-color-light-grey);opacity:1}.search-icon{border:2px solid var(--nrd-color-light-grey);border-radius:50%;flex:none;width:18px;height:18px;position:relative}.search-icon:after{background:var(--nrd-color-light-grey);content:"";transform-origin:50%;border-radius:2px;width:8px;height:2px;position:absolute;bottom:-4px;right:-5px;transform:rotate(45deg)}.dashboard-stack{flex-direction:column;gap:8px;display:flex}.events-list{border-radius:32px;flex-direction:column;gap:0;padding:0;display:flex}.events-date-group{flex-direction:column;gap:0;display:flex}.events-date-heading{width:100%;color:var(--nrd-color-light-grey);letter-spacing:0;text-align:center;white-space:nowrap;justify-content:center;padding:4px 32px;font-size:14px;font-weight:500;line-height:1.2;display:flex}.event-row{gap:4px;min-width:0;padding:8px 0;display:grid}.event-row-head,.event-row-meta{align-items:center;min-width:0;display:flex}.event-row-head{justify-content:space-between;gap:12px}.event-row-head p,.event-row-head time,.event-row-meta span{letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;margin:0;line-height:1;overflow:hidden}.event-row-head p{min-width:0;color:var(--nrd-color-white);flex:auto;font-size:16px;font-weight:400}.event-row-head time{color:var(--nrd-color-light-grey);text-align:right;flex:none;font-size:16px;font-weight:400}.event-row-meta{color:var(--nrd-color-light-grey);gap:2px;font-size:12px;font-weight:400}.event-row-meta span{flex:1 1 0;min-width:0}.events-load-more{background:var(--nrd-color-dark-grey);width:100%;min-height:48px;color:var(--nrd-color-white);letter-spacing:0;cursor:pointer;border:0;border-radius:16px;place-items:center;padding:0 18px;font-size:16px;font-weight:500;line-height:1;display:grid}.events-load-more:disabled{opacity:.65;cursor:default}.events-end{color:var(--nrd-color-light-grey);letter-spacing:0;text-align:center;margin:0;padding:8px 0;font-size:12px;font-weight:400;line-height:1}.events-inline-error{color:var(--nrd-color-negative);letter-spacing:0;text-align:center;margin:0;font-size:12px;font-weight:400;line-height:1.3}.bottom-nav{z-index:20;width:min(100%,393px);padding:16px 16px calc(env(safe-area-inset-bottom,0px) + 16px);pointer-events:none;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav-inner{background:var(--nrd-color-bottom-nav);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:auto;border-radius:24px;align-items:center;height:62px;padding:4px;display:flex;position:relative}.bottom-nav-indicator{z-index:0;background:var(--nrd-color-nav-active);will-change:transform;border-radius:20px;width:calc(50% - 4px);transition:transform .22s cubic-bezier(.2,.8,.2,1);position:absolute;top:4px;bottom:4px;left:4px;transform:translate(0)}.bottom-nav-indicator.is-events{transform:translate(100%)}.bottom-nav button{z-index:1;min-width:0;height:100%;color:var(--nrd-color-white);cursor:pointer;background:0 0;border:0;border-radius:20px;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:4px;padding:8px;display:flex;position:relative}.bottom-nav button span:last-child{color:var(--nrd-color-white);letter-spacing:0;font-size:12px;font-weight:400;line-height:1}.bottom-nav-icon{object-fit:cover;border-radius:7px;width:22px;height:22px;display:block;overflow:hidden}.profit-card,.metrics-card{background:var(--nrd-color-dark-grey);border-radius:32px}.metrics-card{border-radius:24px}.profit-card{overflow:hidden}.profit-head{text-align:center;justify-items:center;gap:4px;padding:32px 16px;display:grid}.profit-head p,.profit-head>strong,.profit-head>span{margin:0}.profit-head p{color:var(--nrd-color-light-grey);letter-spacing:0;font-size:14px;font-weight:500;line-height:1.2}.profit-head p strong{color:var(--nrd-color-white)}.profit-head>strong{color:var(--nrd-color-white);letter-spacing:0;font-size:42px;font-weight:600;line-height:1}.profit-head>span{background:var(--nrd-color-pill-muted);min-height:24px;color:var(--nrd-color-light-grey);letter-spacing:0;white-space:nowrap;border-radius:12px;justify-content:center;align-items:center;padding:2px 8px;font-size:16px;font-weight:500;line-height:1.2;display:inline-flex}.profit-head>span.is-positive,.profit-mini-card small.is-positive{color:var(--nrd-color-positive)}.profit-head>span.is-negative,.profit-mini-card small.is-negative{color:var(--nrd-color-negative)}.profit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:16px;display:grid}.profit-mini-card{background:var(--nrd-color-black);white-space:nowrap;border-radius:16px;justify-content:space-between;align-items:center;gap:8px;min-height:64px;padding:16px;line-height:1;display:flex}.profit-mini-card>div{gap:4px;min-width:0;display:grid}.profit-mini-card>div:first-child{flex:1 0 0}.profit-mini-card>div:last-child{text-align:right;flex:none;justify-items:end}.profit-mini-card span{color:var(--nrd-color-white);letter-spacing:0;text-overflow:ellipsis;font-size:16px;font-weight:500;line-height:1;overflow:hidden}.profit-mini-card small{color:var(--nrd-color-light-grey);letter-spacing:0;font-size:12px;font-weight:400;line-height:1}.period-strip{min-width:0;color:var(--nrd-color-light-grey);letter-spacing:0;text-align:center;white-space:nowrap;scrollbar-width:none;scroll-snap-type:x proximity;justify-content:center;padding:0 32px;font-size:14px;font-weight:500;line-height:1.2;display:flex;overflow:auto hidden}.period-strip::-webkit-scrollbar{display:none}.period-strip-content{flex:0 0 max-content;gap:16px;min-width:0;display:flex}.period-strip.is-overflowing{justify-content:flex-start}.period-strip.is-contained .period-strip-content{margin:0 auto}.period-strip button{min-width:0;color:var(--nrd-color-light-grey);font:inherit;line-height:inherit;letter-spacing:inherit;cursor:pointer;scroll-snap-align:center;background:0 0;border:0;flex:none;padding:0}.period-strip .is-current{color:var(--nrd-color-white)}.metrics-card{gap:16px;padding:16px;display:grid}.metric-line{white-space:nowrap;justify-content:space-between;align-items:center;gap:12px;min-width:0;min-height:32px;line-height:1;display:flex}.metric-copy,.metric-value{gap:4px;min-width:0;display:grid}.metric-copy{flex:auto}.metric-value{text-align:right;flex:none;justify-items:end}.metric-copy span,.metric-value span{color:var(--nrd-color-white);letter-spacing:0;text-overflow:ellipsis;font-size:16px;font-weight:500;line-height:1;overflow:hidden}.metric-copy small,.metric-value small{color:var(--nrd-color-light-grey);letter-spacing:0;text-overflow:ellipsis;font-size:12px;font-weight:400;line-height:1;overflow:hidden}.metric-value small.is-positive{color:var(--nrd-color-positive)}.metric-value small.is-negative{color:var(--nrd-color-negative)}.state-block{min-height:224px;color:var(--nrd-color-light-grey);text-align:center;align-content:center;justify-items:center;gap:12px;display:grid}.state-block strong,.state-block span{max-width:300px;font-size:14px;line-height:1.3}.state-error,.state-error strong,.state-error span,.error-text{color:var(--nrd-color-negative)}.profile-frame{min-height:100svh;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 96px);position:relative}.profile-topbar{z-index:10;background:linear-gradient(180deg, var(--nrd-color-black) 0%, var(--nrd-color-black) 72%, var(--nrd-color-overlay-clear) 100%);padding-bottom:16px;position:sticky;top:0}.wide-action{letter-spacing:0;place-items:center;width:100%;min-height:48px;padding:0 18px;font-size:16px;font-weight:500;line-height:1;display:grid}.wide-action:disabled{opacity:.65;cursor:default}.profile-summary{align-items:center;gap:16px;padding-top:16px;display:flex}.profile-summary>div:last-child{gap:8px;min-width:0;display:grid}.profile-summary h1,.profile-summary p{text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.profile-summary .profile-error{max-width:297px;color:var(--nrd-color-negative);white-space:normal}.profile-summary h1{color:var(--nrd-color-white);letter-spacing:0;font-size:24px;font-weight:500;line-height:1}.profile-summary p{max-width:297px;color:var(--nrd-color-light-grey);letter-spacing:0;font-size:12px;font-weight:400;line-height:1}.profile-footer{z-index:10;width:min(100%,393px);padding:16px 8px calc(env(safe-area-inset-bottom,0px) + 16px);background:linear-gradient(0deg, var(--nrd-color-black) 0%, var(--nrd-color-black) 72%, var(--nrd-color-overlay-clear) 100%);position:fixed;bottom:0;left:50%;transform:translate(-50%)}.auth-frame{place-items:center;padding:32px 8px;display:grid}.auth-panel{background:var(--nrd-color-dark-grey);text-align:center;border-radius:32px;justify-items:center;gap:16px;width:100%;padding:32px 16px;display:grid}.auth-panel img{width:64px;height:64px}.auth-panel h1,.auth-panel p{margin:0}.auth-panel h1{color:var(--nrd-color-white);font-size:24px;font-weight:600;line-height:1.1}.auth-panel p{color:var(--nrd-color-light-grey);font-size:14px;line-height:1.35}.auth-form{gap:12px;width:100%;display:grid}.auth-form input{background:var(--nrd-color-black);width:100%;min-height:48px;color:var(--nrd-color-white);border:0;border-radius:16px;outline:none;padding:0 16px;font-size:16px}.auth-form input::placeholder{color:var(--nrd-color-light-grey)}.skeleton-line{background:var(--nrd-color-mid-grey);border-radius:999px;height:12px;display:block;position:relative;overflow:hidden}.skeleton-line:after{content:"";background:linear-gradient(90deg, transparent, var(--nrd-color-skeleton-glint), transparent);animation:1.2s infinite skeleton-shimmer;position:absolute;inset:0;transform:translate(-100%)}.skeleton-wide{width:180px}.skeleton-short{width:92px}@keyframes skeleton-shimmer{to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.skeleton-line:after{animation:none}}
