*{box-sizing:border-box} html{background:var(--paper);-webkit-text-size-adjust:100%;text-size-adjust:100%} body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased} button{font:inherit;touch-action:manipulation} button:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.app-shell{max-width:1060px;margin:auto;padding:max(20px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(36px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left))}.topbar{display:flex;align-items:center;justify-content:space-between;margin:0 2px 24px}.brand{font-size:1.12rem;font-weight:800;letter-spacing:-.05em}.brand i{color:var(--orange);font-style:normal}.quiet-icon{min-width:44px;min-height:44px;padding:9px;border:1px solid var(--line);border-radius:13px;background:transparent;color:var(--ink);font-weight:750}.eyebrow{margin:0 0 5px;color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.section-title{margin:0;font-size:clamp(1.3rem,4vw,1.75rem);letter-spacing:-.055em}.meta-row{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;margin:24px 2px 16px;color:var(--muted);font-size:.82rem;font-weight:750}.meta-row time:last-of-type{text-align:center;color:var(--ink);font-size:.97rem;letter-spacing:-.02em}.weather{text-align:right}.routine-header{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:27px 2px 14px}.routine-copy{margin:4px 0 0;color:var(--muted);font-size:.88rem}.point-summary{text-align:right;font-size:.78rem;color:var(--muted)}.point-summary strong{display:block;color:var(--ink);font-size:1.45rem;letter-spacing:-.06em;line-height:1}.task-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.toast{position:fixed;z-index:5;right:16px;bottom:18px;max-width:calc(100vw - 32px);padding:11px 15px;border-radius:13px;background:var(--ink);color:var(--paper);font-size:.88rem;font-weight:700;opacity:0;pointer-events:none;transform:translateY(8px);transition:.18s}.toast.show{opacity:1;transform:translateY(0)}dialog{max-width:calc(100vw - 32px);padding:0;border:0;border-radius:var(--radius);color:var(--ink);background:transparent;box-shadow:var(--shadow)}dialog::backdrop{background:rgba(17,18,17,.5);backdrop-filter:blur(3px)}.dialog-card{padding:24px;background:var(--paper)}.dialog-card h2{margin:0;letter-spacing:-.055em}.dialog-card p:not(.eyebrow){color:var(--muted);line-height:1.5}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.button{padding:11px 14px;border:1px solid var(--line);border-radius:12px;background:var(--ink);color:var(--paper);font-weight:800}.button.quiet{background:transparent;color:var(--ink)}.button.danger{background:var(--danger);border-color:var(--danger);color:white}.update-banner{position:fixed;z-index:4;bottom:12px;left:50%;padding:10px 14px;border-radius:99px;background:var(--ink);color:var(--paper);font-size:.82rem;transform:translateX(-50%)}.update-banner button{margin-left:7px;border:0;background:none;color:var(--blue);font-weight:800}@media(min-width:640px){.app-shell{padding-top:max(36px,env(safe-area-inset-top))}.task-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}}@media(min-width:900px){.task-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.topbar{margin-bottom:32px}}
.meta-row{gap:16px;margin:0 2px 28px;font-size:clamp(1rem,2.15vw,1.55rem);font-weight:800;letter-spacing:-.045em;line-height:1.1}.meta-row time:last-of-type{font-size:clamp(1.2rem,2.55vw,1.85rem);letter-spacing:-.06em}@media(max-width:520px){.meta-row{grid-template-columns:1fr 1fr;row-gap:10px;margin-bottom:22px}.meta-row time:last-of-type{text-align:right}.weather{grid-column:1/-1;text-align:left}}
.quiet-icon,.update-banner button{cursor:pointer}
.topbar{display:grid;grid-template-columns:1fr auto 1fr}.topbar .quiet-icon{justify-self:end}.selected-profile{color:var(--ink);font-size:clamp(2rem,4vw,2.6rem);font-weight:850;letter-spacing:-.06em;line-height:1}
.topbar-actions{display:flex;justify-self:end;gap:8px}.topbar-actions .quiet-icon{justify-self:auto}
