:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#24231f;background:#f5f1e8;font-synthesis:none;--ink: #24231f;--paper: #f5f1e8;--card: #fffdf8;--red: #d5523e;--muted: #77736a;--line: #ddd7ca}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input{font:inherit}button{color:inherit}.splash{min-height:100vh;min-height:100dvh;display:grid;place-items:center;font:4rem Georgia,serif}.auth-shell{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:1.15fr .85fr}.auth-copy{position:relative;overflow:hidden;padding:8vh 9vw;background:var(--ink);color:var(--paper)}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border:1px solid #f5f1e877;border-radius:50%;font-family:Georgia,serif;margin-bottom:11vh}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.7rem;font-weight:600}.auth-copy h1,.board-shell h1{margin:.5rem 0 1.25rem;font:400 clamp(3rem,6vw,6rem)/.95 Georgia,serif;letter-spacing:-.035em}.lede{max-width:32rem;color:#d7d2c8;font-size:1.1rem;line-height:1.7}.phone-preview{position:absolute;width:230px;height:420px;right:8%;bottom:-160px;padding:24px 18px;border:5px solid #625f58;border-radius:44px;background:linear-gradient(160deg,#8d8a81,#45443f);transform:rotate(6deg);box-shadow:0 30px 80px #0008}.dynamic-island{width:72px;height:18px;border-radius:10px;margin:auto;background:#161616}.preview-time{text-align:center;font:2.8rem Georgia,serif;margin:28px 0 42px}.widget-preview{padding:12px 14px;border-radius:16px;background:#ebe7decc;color:#24231f}.widget-preview span{font-size:.55rem;font-weight:600;color:#6c685f}.widget-preview p{margin:.45rem 0;font-size:.8rem}.auth-panel{display:grid;place-items:center;padding:3rem}.auth-card{width:min(100%,400px)}.auth-card>svg{color:var(--red)}.auth-card h2{margin:1rem 0 .5rem;font:2.3rem Georgia,serif}.auth-card>p{color:var(--muted);line-height:1.6;margin-bottom:2rem}label{display:block;margin-bottom:.5rem;font-size:.8rem;font-weight:600}input{width:100%;border:1px solid var(--line);border-radius:8px;background:var(--card);padding:.9rem 1rem;outline:none;transition:border .15s,box-shadow .15s}input:focus{border-color:var(--ink);box-shadow:0 0 0 3px #24231f20}button:focus-visible,input:focus-visible{outline:3px solid #2f68bd;outline-offset:2px}.primary{border:0;border-radius:8px;padding:.9rem 1.3rem;background:var(--red);color:#fff;font-weight:600;cursor:pointer}.auth-card .primary{width:100%;margin-top:.75rem}.primary:disabled{opacity:.45;cursor:default}.text-button{border:0;padding:0;background:none;color:var(--red);cursor:pointer;font-weight:600}.error{color:#a72819!important;font-size:.85rem;margin:.5rem 0 0!important}.board-shell{width:min(1040px,calc(100% - 2rem));margin:0 auto;padding:4rem 0 2rem}.board-shell header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:2.5rem}.board-shell h1{font-size:clamp(3rem,6vw,5rem);margin-bottom:0}.account{display:flex;gap:.8rem;align-items:center;color:var(--muted);font-size:.8rem}.icon-button,.actions button,.edit-form button,.check-button{border:0;background:none;min-width:40px;min-height:40px;padding:.45rem;border-radius:6px;cursor:pointer;display:grid;place-items:center}.icon-button:hover,.actions button:hover,.edit-form button:hover{background:#e8e2d6}.board{background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 55px #5b503018;overflow:hidden}.add-form{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;padding:1.2rem}.add-form>svg{color:var(--red)}.add-form input{border:0;background:transparent;box-shadow:none;padding-left:0;font-size:1.05rem}.board-meta{display:flex;justify-content:space-between;padding:.7rem 1.25rem;border-block:1px solid var(--line);color:var(--muted);font-size:.72rem}.reminder-list{margin:0;padding:0;list-style:none}.reminder-list li{display:flex;align-items:center;min-height:64px;padding:.65rem 1rem;border-bottom:1px solid #ebe6db}.reminder-list li:last-child{border:0}.check-button{flex:none;color:var(--red);margin-right:.6rem}.reminder-text{flex:1;min-width:0;line-height:1.45;overflow-wrap:anywhere}.done .reminder-text{color:#a09c93;text-decoration:line-through}.actions{display:flex;opacity:0;transition:opacity .15s}li:hover .actions,li:focus-within .actions{opacity:1}.actions button:disabled{opacity:.2;cursor:default}.edit-form{display:flex;flex:1;min-width:0;align-items:center;gap:.2rem}.edit-form input{padding:.55rem .7rem}.empty{min-height:240px;display:grid;place-content:center;text-align:center;color:var(--muted)}.empty svg{margin:0 auto .6rem;color:var(--red)}.empty h2{margin:0;color:var(--ink);font:1.7rem Georgia,serif}.empty p{margin:.4rem 0}.error-banner{display:flex;justify-content:space-between;margin:1rem;padding:.8rem 1rem;border-radius:8px;background:#fae2dd;color:#822516;font-size:.85rem}.error-banner span{min-width:0;overflow-wrap:anywhere}.error-banner button{border:0;background:none;cursor:pointer}footer{display:flex;gap:.5rem;justify-content:center;margin-top:1.5rem;color:var(--muted);font-size:.75rem}.fatal-error{width:min(34rem,calc(100% - 2rem));min-height:100vh;min-height:100dvh;margin:auto;display:grid;place-content:center;justify-items:start}.fatal-error h1{margin-bottom:0;font:2.3rem Georgia,serif}.fatal-error p{color:var(--muted);overflow-wrap:anywhere}@media(max-width:760px){.auth-shell{grid-template-columns:1fr}.auth-copy{min-height:46vh;padding:2rem}.brand-mark{margin-bottom:3rem}.phone-preview{display:none}.auth-panel{padding:3rem 1.5rem}.board-shell{padding-top:2rem}.board-shell header{align-items:flex-start}.account span,.board-meta span:last-child{display:none}.actions{opacity:1}.add-form{grid-template-columns:auto 1fr}.add-form .primary{grid-column:1 / -1}.reminder-list li{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center}.check-button{grid-row:1 / span 2}.actions{grid-column:2;margin-left:-.45rem}.edit-form{grid-column:2}}@media(max-width:420px){.auth-copy{min-height:40vh}.auth-copy h1{font-size:2.7rem}.auth-panel{padding-inline:1rem}.board-shell{width:min(100% - 1rem,1040px)}.board-shell h1{font-size:2.8rem}.board-meta{padding-inline:1rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
