@import "https://fonts.googleapis.com/css2?family=Archivo:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap";@import "https://api.fontshare.com/v2/css?f[]=gambarino@400&display=swap";@import "https://fonts.googleapis.com/css2?family=Archivo:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap";.app-sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.app{background:var(--color-bg);min-height:100vh;color:var(--color-text);font-family:var(--font-body);grid-template-columns:56px minmax(0,1fr);display:grid}.app-body{min-width:0}.app-rail{border-right:2px solid var(--color-divider);flex-direction:column;align-items:center;gap:4px;height:100vh;padding:12px 0 18px;display:flex;position:sticky;top:0}.app-rail__mark{width:44px;height:44px;font-family:var(--font-heading);color:var(--color-accent);place-items:center;margin-bottom:14px;font-size:22px;line-height:1;text-decoration:none;display:grid}.app-rail__link{width:40px;height:40px;color:var(--color-text);border:2px solid #0000;place-items:center;display:grid}.app-rail__link:hover{border-color:var(--color-divider)}.app-rail__link[aria-current=page]{background:var(--color-text);color:var(--color-bg)}.app-rail__spacer{flex:1}.app-topbar{border-bottom:2px solid var(--color-divider);align-items:center;gap:20px;padding:14px 24px;display:flex}.app-tabs{gap:2px;display:flex}.app-tab{color:var(--color-text);border:2px solid #0000;padding:8px 14px;font-size:14px;font-weight:600;text-decoration:none}.app-tab:hover{border-color:var(--color-divider)}.app-tab[aria-current=page]{background:var(--color-text);color:var(--color-bg)}.app-topbar__spacer{flex:1}.app-whoami{align-items:center;gap:10px;font-size:14px;display:flex}.app-avatar{background:var(--color-accent);width:30px;height:30px;color:var(--color-on-accent);place-items:center;font-size:13px;font-weight:600;display:grid}.app-main{gap:20px;min-width:0;padding:24px;display:grid}.app-panel{border:2px solid var(--color-divider);background:var(--color-bg);min-width:0}.app-panel__head{border-bottom:2px solid var(--color-divider);flex-wrap:wrap;align-items:baseline;gap:4px 16px;padding:16px 20px;display:flex}.app-panel__title{font-family:var(--font-heading);margin:0;font-size:22px;font-weight:400;line-height:1.15}.app-panel__meta{font-family:var(--font-mono);color:var(--color-text-muted);font-variant-numeric:tabular-nums;font-size:12px}.app-panel__spacer{flex:1}.app-list{margin:0;padding:8px 0;list-style:none}.app-empty{color:var(--color-text-muted);margin:0;padding:28px 20px;font-size:14px;line-height:1.5}.app-empty p{margin:0}.app-empty .app-btn{margin-top:14px}.app-status{border:2px solid var(--color-divider);align-items:center;gap:14px;margin:0;padding:20px;font-size:14px;display:flex}.app-linkbtn{min-height:44px;font-family:var(--font-body);color:var(--color-accent-700);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;align-items:center;margin:-13px 0;padding:0;font-size:13px;font-weight:600;display:inline-flex}.app-linkbtn:hover{text-decoration:underline}.app-btn{min-height:44px;font-family:var(--font-body);border:2px solid var(--color-accent);background:var(--color-accent);color:var(--color-on-accent);cursor:pointer;justify-content:center;align-items:center;padding:10px 20px;font-size:14px;font-weight:600;line-height:1.2;display:inline-flex}.app-btn:hover:not(:disabled){background:var(--color-accent-700);border-color:var(--color-accent-700)}.app-btn:disabled{opacity:.6;cursor:default}.app-btn--block{width:100%}.app-btn--ghost{border-color:var(--color-divider);color:var(--color-text);background:0 0}.app-btn--ghost:hover:not(:disabled){border-color:var(--color-text);background:0 0}.app-form{padding:20px}.app-field{margin-bottom:16px}.app-field label{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:6px;font-size:11px;display:block}.app-field input,.app-field select{width:100%;min-height:44px;font-family:var(--font-body);color:var(--color-text);background:var(--color-surface);border:2px solid var(--color-divider);border-radius:0;padding:10px 12px;font-size:15px}.app-field input::placeholder{color:var(--color-text-muted);opacity:1}.app-field input:focus,.app-field select:focus{border-color:var(--color-text)}.app-field__hint{color:var(--color-text-muted);margin:6px 0 0;font-size:12.5px}.app-check{cursor:pointer;align-items:center;gap:10px;min-height:44px;margin-bottom:8px;font-size:14px;display:flex}.app-check input{width:18px;height:18px;accent-color:var(--color-accent);margin:0}.app-form__error{color:var(--color-signal);background:color-mix(in srgb, var(--color-signal) 8%, var(--color-bg));margin:0 0 16px;padding:9px 11px;font-size:13px;line-height:1.45}.app-form__actions{justify-content:flex-end;gap:10px;display:flex}.app-overlay{z-index:100;background:color-mix(in srgb, var(--color-text) 55%, transparent);justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.app-dialog{overscroll-behavior:contain;background:var(--color-bg);border:2px solid var(--color-divider);width:100%;max-width:440px;max-height:calc(100vh - 40px);box-shadow:0 24px 60px -24px color-mix(in srgb, var(--color-text) 60%, transparent);overflow-y:auto}.app-dialog:focus{outline:none}.app-dialog .app-panel__head{align-items:center}@media (width<=640px){.app-tabs{display:none}.app-topbar{padding:12px 16px}.app-main{gap:16px;padding:16px}.app-rail__link{width:44px;height:44px}.app-whoami__name{display:none}.app-form{padding:16px}.app-form__actions .app-btn{flex:1}}.auth{background:var(--color-bg);min-height:100vh;color:var(--color-text);font-family:var(--font-body);flex-direction:column;display:flex}.auth__top{border-bottom:2px solid var(--color-divider);padding:18px clamp(20px,5vw,48px)}.auth__brand{font-family:var(--font-heading);color:var(--color-text);padding:6px 0;font-size:24px;line-height:1;text-decoration:none;display:inline-block}.auth__main{flex:1;justify-content:center;align-items:center;padding:48px 20px 72px;display:flex}.auth__panel{width:100%;max-width:420px}.auth__title{font-size:30px}.auth__panel .app-form{padding:24px 24px 8px}.auth__foot{border-top:1px solid var(--color-divider);color:var(--color-text-muted);margin:0;padding:16px 24px 22px;font-size:14px}.auth__foot a{color:var(--color-accent-700);text-underline-offset:3px;font-weight:600}@media (width<=640px){.auth__main{align-items:flex-start;padding:28px 16px 48px}.auth__panel .app-form{padding:20px 20px 4px}.auth__foot{padding:14px 20px 20px}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:#ece7dd;--color-surface:#e4ddd0;--color-text:#1a1714;--color-accent:#d2452a;--color-accent-700:#a8341f;--color-signal:#b3241c;--color-divider:#1a17142e;--font-heading:"Gambarino", Georgia, serif;--font-body:"Archivo", system-ui, -apple-system, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", monospace;--unit:28px;--mordi-noise:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMDAiIGhlaWdodD0iMjAwIj48ZmlsdGVyIGlkPSJuIj48ZmVUdXJidWxlbmNlIHR5cGU9ImZyYWN0YWxOb2lzZSIgYmFzZUZyZXF1ZW5jeT0iMC43IiBudW1PY3RhdmVzPSIzIiBzdGl0Y2hUaWxlcz0ic3RpdGNoIiByZXN1bHQ9Im5vaXNlIi8+PGZlQ29sb3JNYXRyaXggaW49Im5vaXNlIiB0eXBlPSJzYXR1cmF0ZSIgdmFsdWVzPSIwIi8+PGZlQ29tcG9uZW50VHJhbnNmZXI+PGZlRnVuY1IgdHlwZT0ibGluZWFyIiBzbG9wZT0iMy4yIiBpbnRlcmNlcHQ9Ii0xLjEiLz48ZmVGdW5jRyB0eXBlPSJsaW5lYXIiIHNsb3BlPSIzLjIiIGludGVyY2VwdD0iLTEuMSIvPjxmZUZ1bmNCIHR5cGU9ImxpbmVhciIgc2xvcGU9IjMuMiIgaW50ZXJjZXB0PSItMS4xIi8+PC9mZUNvbXBvbmVudFRyYW5zZmVyPjwvZmlsdGVyPjxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbHRlcj0idXJsKCNuKSIvPjwvc3ZnPg==)}html{scroll-behavior:smooth}body.mordi-landing{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);-webkit-font-smoothing:antialiased}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.mordi-page{position:relative}.mordi-noise{z-index:0;pointer-events:none;background-image:var(--mordi-noise);opacity:.12;mix-blend-mode:multiply;background-size:200px 200px;position:fixed;inset:0}.mordi-container{z-index:1;max-width:1200px;margin:0 auto;padding:0 clamp(20px,5vw,72px);position:relative}.mordi-rule{background:var(--color-divider);border:0;height:2px;margin:0}.mordi-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent-700);margin:0 0 calc(2 * var(--unit));font-size:13px;display:block}.btn{font-family:var(--font-body);cursor:pointer;white-space:nowrap;color:inherit;background:0 0;border:2px solid #0000;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;padding:11px 22px;font-size:14.5px;font-weight:600;line-height:1;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s,transform .1s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-bg)}.btn-primary:hover{background:var(--color-accent-700);border-color:var(--color-accent-700);color:var(--color-bg)}.btn-ghost{border-color:var(--color-text);color:var(--color-text);background:0 0}.btn-ghost:hover{background:var(--color-text);color:var(--color-bg)}.btn-ghost--invert{border-color:var(--color-bg);color:var(--color-bg)}.btn-ghost--invert:hover{background:var(--color-bg);color:var(--color-accent)}.btn-text{font-family:var(--font-body);color:var(--color-text);cursor:pointer;background:0 0;border:none;padding:0;font-size:14.5px}.btn-text:hover{color:var(--color-accent-700)}.mordi-nav{z-index:1;border-bottom:2px solid var(--color-divider);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:22px clamp(20px,5vw,72px);display:flex;position:relative}.mordi-nav__brand{font-family:var(--font-heading);letter-spacing:-.01em;color:var(--color-text);cursor:pointer;background:0 0;border:none;padding:0;font-size:20px}.mordi-nav__actions{flex-wrap:wrap;align-items:center;gap:32px;display:flex}.mordi-hero{padding:calc(3.5 * var(--unit)) 0 calc(2.5 * var(--unit));grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:48px clamp(24px,5vw,72px);display:grid}.mordi-hero__title{font-family:var(--font-heading);letter-spacing:-.02em;margin:0 0 0 -.05em;font-size:clamp(38px,5.6vw,72px);font-weight:400;line-height:1.05}.mordi-hero__sub{max-width:52ch;margin:24px 0 0;font-size:17px;line-height:28px}.mordi-hero__actions{margin-top:var(--unit);flex-wrap:wrap;gap:16px;display:flex}.mordi-card{background:var(--color-surface);border:2px solid var(--color-divider);padding:0;overflow:hidden}.mordi-card__head{border-bottom:2px solid var(--color-divider);justify-content:space-between;align-items:baseline;padding:16px 20px;display:flex}.mordi-card__title{font-family:var(--font-heading);font-size:15px}.mordi-card__date{font-family:var(--font-mono);color:color-mix(in srgb, var(--color-text) 65%, transparent);font-size:12px}.mordi-tasks__viewport{height:230px;overflow:hidden;-webkit-mask-image:linear-gradient(#0000,#000 12% 88%,#0000);mask-image:linear-gradient(#0000,#000 12% 88%,#0000)}.mordi-tasks__track{flex-direction:column;animation:16s linear infinite mordi-task-scroll;display:flex}@keyframes mordi-task-scroll{0%{transform:translateY(0)}to{transform:translateY(-50%)}}.mordi-task{border-bottom:1px solid var(--color-divider);grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:14px 20px;display:grid}.mordi-task__box{border:2px solid var(--color-text);flex-shrink:0;width:16px;height:16px;display:inline-block}.mordi-task__box--done{border-color:var(--color-accent);background:var(--color-accent)}.mordi-task__label{font-size:14.5px}.mordi-task--done .mordi-task__label{color:color-mix(in srgb, var(--color-text) 55%, transparent);text-decoration:line-through}.tag{letter-spacing:.03em;white-space:nowrap;border:1px solid #0000;flex-shrink:0;padding:3px 9px;font-size:11px}.tag-accent{color:var(--color-accent-700);border-color:color-mix(in srgb, var(--color-accent) 45%, transparent);background:color-mix(in srgb, var(--color-accent) 9%, transparent)}.tag-neutral{color:color-mix(in srgb, var(--color-text) 70%, transparent);background:color-mix(in srgb, var(--color-text) 7%, transparent);border-color:#0000}.tag-outline{color:color-mix(in srgb, var(--color-text) 60%, transparent);border-color:var(--color-divider)}.mordi-why{padding:calc(2.5 * var(--unit)) 0}.mordi-why__row{padding:var(--unit) 0;grid-template-columns:64px minmax(0,1fr);gap:20px clamp(24px,4vw,64px);display:grid}.mordi-why__row+.mordi-why__row{border-top:2px solid var(--color-divider)}.mordi-why__num{font-family:var(--font-heading);margin:0;font-size:15px}.mordi-why__title{font-family:var(--font-heading);letter-spacing:-.01em;margin:0 0 8px;font-size:24px;font-weight:400}.mordi-why__body{max-width:72ch;color:color-mix(in srgb, var(--color-text) 78%, transparent);margin:0;font-size:15.5px;line-height:28px}.mordi-features{padding:calc(2.5 * var(--unit)) 0}.mordi-features .mordi-kicker{margin-bottom:14px}.mordi-features__lede{font-family:var(--font-heading);letter-spacing:-.015em;margin:0 0 calc(2 * var(--unit));max-width:24ch;font-size:clamp(28px,3.2vw,40px);font-weight:400;line-height:1.1}.mordi-features__grid{flex-wrap:wrap;justify-content:center;gap:20px;display:flex}.mordi-feature{background:var(--color-bg);border:2px solid var(--color-divider);max-width:380px;padding:var(--unit);flex:260px}.mordi-feature__icon{color:var(--color-accent);display:block}.mordi-feature__title{font-family:var(--font-heading);margin:16px 0 8px;font-size:18px;font-weight:400}.mordi-feature__body{color:color-mix(in srgb, var(--color-text) 78%, transparent);margin:0;font-size:14.5px;line-height:24px}.mordi-close{z-index:1;background:var(--color-accent);color:var(--color-bg);position:relative}.mordi-close__inner{max-width:1200px;padding:calc(3 * var(--unit)) clamp(20px, 5vw, 72px);margin:0 auto}.mordi-close__title{font-family:var(--font-heading);letter-spacing:-.015em;margin:0 0 0 -.058em;font-size:clamp(34px,4.2vw,56px);font-weight:400;line-height:1.06}.mordi-close__title span{display:block}.mordi-close__actions{margin-top:var(--unit)}.mordi-footer{max-width:1200px;padding:calc(2 * var(--unit)) clamp(20px, 5vw, 72px);z-index:1;flex-wrap:wrap;justify-content:space-between;gap:32px;margin:0 auto;display:flex;position:relative}.mordi-footer__cols{flex-wrap:wrap;gap:48px;display:flex}.mordi-footer__col{flex-direction:column;gap:10px;display:flex}.mordi-footer__heading{letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb, var(--color-text) 70%, transparent);font-size:13px}.mordi-footer__col a{color:var(--color-text);font-size:14px;text-decoration:none}.mordi-footer__col a:hover{color:var(--color-accent-700)}.mordi-footer__copy{color:color-mix(in srgb, var(--color-text) 70%, transparent);font-size:13px}[data-reveal]{opacity:0;transition:opacity .8s cubic-bezier(.22,.61,.36,1),transform .8s cubic-bezier(.22,.61,.36,1);transform:translateY(28px)}[data-reveal].is-revealed{opacity:1;transform:translateY(0)}.mordi-overlay{background:color-mix(in srgb, var(--color-text) 55%, transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:100;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.mordi-slip{background:var(--color-surface);border:2px solid var(--color-divider);width:100%;max-width:420px;animation:.2s cubic-bezier(.16,1,.3,1) mordi-slip-rise;position:relative;overflow:hidden;box-shadow:0 24px 60px -20px #1a17148c}@keyframes mordi-slip-rise{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.mordi-slip__head{justify-content:space-between;align-items:baseline;gap:16px;padding:24px 24px 0;display:flex}.mordi-slip__label{font-family:var(--font-body);color:var(--color-accent-700);font-size:13px;font-weight:600}.mordi-slip__close{color:color-mix(in srgb, var(--color-text) 60%, transparent);font-family:var(--font-body);cursor:pointer;background:0 0;border:none;padding:2px 4px;font-size:14px;line-height:1}.mordi-slip__close:hover{color:var(--color-text)}.mordi-slip__tabs{border-bottom:2px solid var(--color-divider);margin:14px 24px 0;display:flex}.mordi-slip__tab{font-family:var(--font-heading);color:color-mix(in srgb, var(--color-text) 55%, transparent);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;margin-bottom:-2px;padding:0 0 12px;font-size:16px;transition:color .15s,border-color .15s}.mordi-slip__tab.active{color:var(--color-text);border-bottom-color:var(--color-accent)}.mordi-slip__tab:hover:not(.active){color:var(--color-text)}.mordi-slip__body{padding:24px}.mordi-field{margin-bottom:16px}.mordi-field label{font-family:var(--font-body);color:color-mix(in srgb, var(--color-text) 60%, transparent);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.mordi-field input{background:var(--color-bg);border:2px solid var(--color-divider);width:100%;font-family:var(--font-body);color:var(--color-text);border-radius:0;padding:10px 12px;font-size:15px;transition:border-color .15s}.mordi-field input:focus{border-color:var(--color-accent);outline:none}.mordi-field input::placeholder{color:color-mix(in srgb, var(--color-text) 45%, transparent)}.mordi-slip__submit{width:100%;margin-top:4px;padding:13px}.mordi-slip__error{font-family:var(--font-mono);color:var(--color-signal);background:color-mix(in srgb, var(--color-signal) 8%, transparent);border-left:3px solid var(--color-signal);margin-bottom:16px;padding:9px 11px;font-size:13px}.mordi-slip__foot{font-family:var(--font-body);color:color-mix(in srgb, var(--color-text) 60%, transparent);text-align:center;padding:0 24px 24px;font-size:13px}@media (width<=720px){.mordi-hero{grid-template-columns:1fr}.mordi-why__row{grid-template-columns:1fr;gap:8px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.mordi-tasks__track{animation:none}.mordi-tasks__viewport{height:auto;-webkit-mask-image:none;mask-image:none}[data-reveal]{opacity:1;transition:none;transform:none}.mordi-slip{animation:none}}.dash-week__scroll{--dash-label-w:220px;scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--color-text) 35%, var(--color-bg)) transparent;position:relative}.dash-week__days,.dash-week__row{grid-template-columns:var(--dash-label-w) repeat(7, minmax(0, 1fr));display:grid}.dash-week__days{border-bottom:2px solid var(--color-divider)}.dash-week__day{text-align:center;font-family:var(--font-mono);color:var(--color-text-muted);border-left:1px solid var(--color-divider);padding:10px 0;font-size:11px}.dash-week__day span{color:var(--color-text);font-variant-numeric:tabular-nums;margin-top:2px;font-size:15px;display:block}.dash-week__day--today{background:color-mix(in srgb, var(--color-accent) 12%, var(--color-bg))}.dash-week__day--today span{color:var(--color-accent-700);font-weight:600}.dash-week__row{border-bottom:1px solid var(--color-divider);min-height:58px}.dash-week__row:last-child{border-bottom:0}.dash-week__row>*{grid-row:1}.dash-goal{grid-column:1;align-self:center;min-width:0;padding:10px 16px}.dash-goal__name{overflow-wrap:anywhere;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:14.5px;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.dash-goal__cat{font-family:var(--font-mono);color:var(--color-text-muted);margin-top:2px;font-size:11px}.dash-slot{border-left:1px solid var(--color-divider)}.dash-slot--today{background:color-mix(in srgb, var(--color-accent) 7%, var(--color-bg))}.dash-seg{z-index:1;white-space:nowrap;text-overflow:ellipsis;align-self:center;align-items:center;min-width:0;height:30px;margin:0 4px;padding:0 10px;font-size:12.5px;font-weight:600;display:flex;overflow:hidden}.dash-seg--done{background:var(--color-accent);color:var(--color-on-accent)}.dash-seg--missed{background:repeating-linear-gradient(135deg, transparent 0 5px, color-mix(in srgb, var(--color-text) 12%, transparent) 5px 10px);color:color-mix(in srgb, var(--color-text) 78%, var(--color-bg));border:1px solid var(--color-divider)}.dash-cards{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;display:grid}.dash-entry{border-bottom:1px solid var(--color-divider);padding:13px 20px}.dash-entry:last-child{border-bottom:0}.dash-entry__top{align-items:baseline;gap:10px;display:flex}.dash-entry__date{font-family:var(--font-mono);color:var(--color-text-muted);font-size:11px}.dash-entry__spacer{flex:1}.dash-entry__mood{color:var(--color-accent-700);font-size:12px;font-weight:600}.dash-entry__note{overflow-wrap:anywhere;margin:3px 0 0;font-size:14px;line-height:1.45}.dash-prog{border-bottom:1px solid var(--color-divider);padding:14px 20px}.dash-prog:last-child{border-bottom:0}.dash-prog__top{justify-content:space-between;align-items:baseline;gap:12px;font-size:14px;display:flex}.dash-prog__name{overflow-wrap:anywhere;min-width:0}.dash-prog__count{font-family:var(--font-mono);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:12px}.dash-prog__bar{background:color-mix(in srgb, var(--color-text) 10%, transparent);height:8px;margin-top:8px}.dash-prog__fill{background:var(--color-accent);height:100%}.dash-report{padding:20px}.dash-bignum{font-family:var(--font-heading);font-variant-numeric:tabular-nums;margin:0 0 4px -.04em;font-size:64px;line-height:1}.dash-bignum small{font-size:22px}.dash-report__label{color:var(--color-text-muted);margin:0;font-size:14px}.dash-report__grid{background:var(--color-divider);border:1px solid var(--color-divider);grid-template-columns:1fr 1fr;gap:1px;margin:20px 0 0;display:grid}.dash-stat{background:var(--color-bg);padding:12px 14px}.dash-stat__k{font-family:var(--font-mono);color:var(--color-text-muted);font-size:11px}.dash-stat__v{font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:19px;font-weight:600}.dash-report__cta{margin-top:18px}@media (width<=900px){.dash-week__scroll{--dash-label-w:170px;overflow-x:auto}.dash-week__days,.dash-week__row{min-width:720px}.dash-goal,.dash-week__days>:first-child{z-index:2;background:var(--color-bg);border-right:1px solid var(--color-divider);position:sticky;left:0}.dash-goal{flex-direction:column;justify-content:center;align-self:stretch;display:flex}}@media (width<=640px){.dash-week__scroll{--dash-label-w:128px}.dash-goal{padding:10px 12px}.dash-goal__name{font-size:13.5px}.dash-cards{grid-template-columns:minmax(0,1fr);gap:16px}}.loc{grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);align-items:start;gap:20px;display:grid}.loc__map-panel .app-panel__head{align-items:center}.loc__status{border-bottom:1px solid var(--color-divider);background:var(--color-surface);margin:0;padding:10px 20px;font-size:13.5px;line-height:1.45}.loc__status--error{color:var(--color-signal);background:color-mix(in srgb, var(--color-signal) 8%, var(--color-bg))}.loc__map{background:var(--color-surface);height:clamp(320px,62vh,620px)}.loc__info{font-family:var(--font-body);color:var(--color-text);gap:2px;font-size:13px;display:grid}.loc__info strong{font-weight:600}.loc__info span{color:var(--color-text-muted)}.loc__history{flex-direction:column;max-height:calc(62vh + 64px);display:flex}.loc__history .app-list{overscroll-behavior:contain;overflow-y:auto}.loc__place{text-align:left;width:100%;font:inherit;color:inherit;border:0;border-bottom:1px solid var(--color-divider);cursor:pointer;background:0 0;gap:3px;padding:12px 20px;display:grid}.loc__place:hover{background:color-mix(in srgb, var(--color-text) 4%, var(--color-bg))}.loc__place[aria-current=true]{background:color-mix(in srgb, var(--color-accent) 10%, var(--color-bg))}li:last-child>.loc__place{border-bottom:0}.loc__place-top{align-items:baseline;gap:12px;display:flex}.loc__place-name{overflow-wrap:anywhere;flex:1;min-width:0;font-size:14px;font-weight:600;line-height:1.35}.loc__place-date{color:var(--color-text-muted);white-space:nowrap;font-size:12px}.loc__coords{font-family:var(--font-mono);color:var(--color-text-muted);font-variant-numeric:tabular-nums;font-size:11.5px}@media (width<=900px){.loc{grid-template-columns:minmax(0,1fr)}.loc__map{height:clamp(280px,50vh,460px)}.loc__history{max-height:none}}.wip{background:var(--color-bg);min-height:100svh;color:var(--color-text);font-family:var(--font-body);justify-content:center;align-items:center;padding:40px 24px;display:flex}.app-main .wip{justify-content:flex-start;min-height:0;padding:56px 8px}.wip__inner{max-width:52ch}.wip__kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent-700);margin-bottom:16px;font-size:13px;display:block}.wip__title{font-family:var(--font-heading);letter-spacing:-.02em;margin:0 0 20px -.05em;font-size:clamp(34px,5vw,56px);font-weight:400;line-height:1.05}.wip__body{color:color-mix(in srgb, var(--color-text) 78%, transparent);margin:0 0 32px;font-size:16.5px;line-height:28px}.wip__back{text-decoration:none}@font-face{font-family:Gambarino;src:url(/fonts/gambarino/Gambarino-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:#ece7dd;--color-surface:#e4ddd0;--color-text:#1a1714;--color-accent:#d2452a;--color-accent-700:#a8341f;--color-on-accent:#fff;--color-signal:#b3241c;--color-divider:#1a17142e;--color-text-muted:color-mix(in srgb, var(--color-text) 70%, var(--color-bg));--font-heading:"Gambarino", "Archivo", Georgia, serif;--font-body:"Archivo", system-ui, -apple-system, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", monospace;--mordi-noise:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMDAiIGhlaWdodD0iMjAwIj48ZmlsdGVyIGlkPSJuIj48ZmVUdXJidWxlbmNlIHR5cGU9ImZyYWN0YWxOb2lzZSIgYmFzZUZyZXF1ZW5jeT0iMC43IiBudW1PY3RhdmVzPSIzIiBzdGl0Y2hUaWxlcz0ic3RpdGNoIiByZXN1bHQ9Im5vaXNlIi8+PGZlQ29sb3JNYXRyaXggaW49Im5vaXNlIiB0eXBlPSJzYXR1cmF0ZSIgdmFsdWVzPSIwIi8+PGZlQ29tcG9uZW50VHJhbnNmZXI+PGZlRnVuY1IgdHlwZT0ibGluZWFyIiBzbG9wZT0iMy4yIiBpbnRlcmNlcHQ9Ii0xLjEiLz48ZmVGdW5jRyB0eXBlPSJsaW5lYXIiIHNsb3BlPSIzLjIiIGludGVyY2VwdD0iLTEuMSIvPjxmZUZ1bmNCIHR5cGU9ImxpbmVhciIgc2xvcGU9IjMuMiIgaW50ZXJjZXB0PSItMS4xIi8+PC9mZUNvbXBvbmVudFRyYW5zZmVyPjwvZmlsdGVyPjxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbHRlcj0idXJsKCNuKSIvPjwvc3ZnPg==)}*{box-sizing:border-box}html,body{min-height:100%;margin:0;padding:0}body{font-family:var(--font-body);color:var(--color-text);-webkit-font-smoothing:antialiased}#root{min-height:100svh}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:2px}::selection{background:color-mix(in srgb, var(--color-accent) 24%, var(--color-bg));color:var(--color-text)}input,select,textarea{caret-color:var(--color-accent)}
