:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#f6f8f6;--surface:#ffffffe6;--surface-solid:#fff;--surface-muted:#edf4f1;--line:#1423221a;--line-strong:#14232229;--text:#10211f;--muted:#657370;--muted-strong:#42504d;--accent-rgb:0, 200, 179;--teal:#00c8b3;--teal-dark:#008f80;--teal-soft:rgba(var(--accent-rgb), .14);--green:#2f9c5d;--red:#d94b3d;--yellow:#d5a90e;--purple:#8465c5;--blue:#3478c6;--shadow:0 18px 50px #12242114;--radius-lg:24px;--radius-md:18px;--radius-sm:12px;--font:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", sans-serif}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--background);color:var(--text);font-family:var(--font);letter-spacing:0;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}.app-shell{grid-template-columns:316px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:#ffffffc7;flex-direction:column;gap:18px;min-height:100vh;padding:24px 18px;display:flex}.brand{align-items:center;gap:12px;padding:4px 8px 10px;display:flex}.brand-icon{border-radius:14px;flex:none;place-items:center;width:46px;height:46px;display:grid;overflow:hidden}.brand-icon img{width:100%;height:100%;display:block}.brand strong{font-size:21px;line-height:1.1;display:block}.brand span:not(.brand-icon){color:var(--muted);margin-top:3px;font-size:13px;display:block}.new-list-button,.add-button,.sheet-submit{background:var(--teal);color:#fff;min-height:45px;box-shadow:0 12px 24px rgba(var(--accent-rgb), .22);border:0;border-radius:16px;justify-content:center;align-items:center;gap:8px;font-weight:700;transition:transform .16s,background .16s,box-shadow .16s;display:inline-flex}.new-list-button:hover,.add-button:hover,.sheet-submit:hover{background:var(--teal-dark);box-shadow:0 15px 28px rgba(var(--accent-rgb), .28);transform:translateY(-1px)}.list-nav{flex-direction:column;gap:8px;min-height:0;padding:2px;display:flex;overflow:auto}.list-row{width:100%;min-height:64px;color:var(--text);text-align:left;background:0 0;border:1px solid #0000;border-radius:18px;grid-template-columns:14px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;transition:background .16s,border-color .16s,transform .16s;display:grid}.list-row:hover{border-color:var(--line);background:#ffffffb8}.list-row.active{background:var(--teal-soft);border-color:rgba(var(--accent-rgb), .24)}.list-dot{background:var(--teal);border-radius:50%;width:12px;height:12px}.list-dot.mint{background:var(--green)}.list-dot.tomato{background:var(--red)}.list-dot.lemon{background:var(--yellow)}.list-dot.berry{background:var(--purple)}.list-dot.ocean{background:var(--blue)}.list-copy{min-width:0}.list-copy>span{text-overflow:ellipsis;white-space:nowrap;font-weight:700;display:block;overflow:hidden}.list-copy small{color:var(--muted);align-items:center;gap:5px;margin-top:4px;font-size:12px;display:inline-flex}.list-count{min-width:29px;color:var(--muted-strong);text-align:center;background:#14232212;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:800}.list-nav-empty{border:1px dashed var(--line-strong);border-radius:var(--radius-md);min-height:138px;color:var(--muted);align-content:center;gap:8px;padding:18px 14px;display:grid}.list-nav-empty svg{color:var(--teal)}.list-nav-empty strong{color:var(--text);font-size:14px}.list-nav-empty span{font-size:13px;line-height:1.35}.sidebar-footer{border-top:1px solid var(--line);flex-direction:column;gap:12px;margin-top:auto;padding:14px 8px 0;display:flex}.sync-badge{border:1px solid var(--line);width:fit-content;color:var(--muted-strong);background:#ffffffbf;border-radius:999px;align-items:center;gap:7px;padding:7px 10px;font-size:12px;font-weight:800;display:inline-flex}.sync-badge.synced{color:var(--teal);background:var(--teal-soft);border-color:rgba(var(--accent-rgb), .2)}.sync-badge.error,.sync-badge.missing-token{color:#a23a30;background:#fff0ed;border-color:#d94b3d29}.auth-buttons{flex-direction:column;gap:8px;min-height:40px;display:flex}.apple-auth-control{border:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);font:inherit;cursor:pointer;background:#ffffffd1;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:13px;font-weight:800;text-decoration:none;transition:transform .18s,border-color .18s,background .18s,opacity .18s;display:inline-flex}.apple-auth-control.primary{color:#fff;background:#111;border-color:#111}.apple-auth-control:hover:not(:disabled){transform:translateY(-1px)}.apple-auth-control:disabled,.apple-auth-control[aria-disabled=true],.apple-auth-control.waiting{cursor:wait;opacity:.68}.cloudkit-auth-controls{display:none}#apple-sign-in-button,#apple-sign-out-button{width:100%}#apple-sign-out-button,#apple-sign-in-button:empty{display:none}#apple-sign-in-button button,#apple-sign-in-button div[role=button],#apple-sign-in-button a{overflow:hidden;border-radius:14px!important;width:100%!important;min-height:40px!important}.workspace{flex-direction:column;gap:18px;width:min(100%,1160px);margin:0 auto;padding:28px clamp(20px,4vw,48px) 40px;display:flex}.topbar{justify-content:space-between;align-items:center;gap:18px;display:flex}.eyebrow{color:var(--teal);align-items:center;gap:7px;font-size:13px;font-weight:800;display:inline-flex}h1{letter-spacing:0;margin:5px 0 0;font-size:38px;line-height:1.05}.topbar-actions{gap:10px;display:flex}.icon-button{border:1px solid var(--line);width:42px;height:42px;color:var(--muted-strong);background:#ffffffd1;border-radius:15px;place-items:center;transition:background .16s,transform .16s;display:inline-grid}.icon-button:hover{background:#fff;transform:translateY(-1px)}.setup-notice{border:1px solid rgba(var(--accent-rgb), .2);background:var(--teal-soft);color:var(--teal-dark);border-radius:18px;grid-template-columns:auto minmax(0,1fr);gap:12px;padding:14px 16px;display:grid}.setup-notice.error{color:#a23a30;background:#fff2ef;border-color:#d94b3d2b}.setup-notice strong{font-size:14px;display:block}.setup-notice p{color:var(--muted-strong);margin:3px 0 0;font-size:13px;line-height:1.45}.overview-band{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);grid-template-columns:repeat(3,minmax(0,120px)) minmax(130px,1fr);align-items:center;gap:14px;padding:16px;display:grid}.metric-value,.metric-label{display:block}.metric-value{font-size:25px;font-weight:850}.metric-label{color:var(--muted);margin-top:2px;font-size:12px;font-weight:800}.progress-meter{background:#14232214;border-radius:999px;height:12px;overflow:hidden}.progress-meter span{border-radius:inherit;background:var(--teal);height:100%;transition:width .22s;display:block}.quick-add{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-solid);box-shadow:var(--shadow);grid-template-columns:minmax(230px,1fr) minmax(140px,180px) minmax(150px,210px) auto;align-items:end;gap:12px;padding:16px;display:grid}.quick-add label,.sheet label{flex-direction:column;gap:7px;min-width:0;display:flex}.quick-add label>span,.sheet label>span{color:var(--muted);font-size:12px;font-weight:850}.quick-add input,.quick-add select,.sheet input{border:1px solid var(--line-strong);width:100%;min-height:45px;color:var(--text);background:#fbfdfc;border-radius:15px;outline:none;padding:0 13px;transition:border-color .16s,box-shadow .16s,background .16s}.quick-add input:focus,.quick-add select:focus,.sheet input:focus{border-color:rgba(var(--accent-rgb), .52);box-shadow:0 0 0 4px rgba(var(--accent-rgb), .12);background:#fff}.name-field input{min-height:53px;font-size:18px;font-weight:700}.item-groups{flex-direction:column;gap:12px;display:flex}.store-group,.completed-group,.empty-state{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-solid);overflow:hidden;box-shadow:0 12px 34px #1224210d}.store-group>header,.completed-group>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:56px;padding:0 16px;display:flex}.store-group>header>div,.completed-group>header>div{align-items:center;gap:9px;display:inline-flex}.store-group>header span,.completed-group>header span{color:var(--muted);background:#14232212;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:850}.item-list{flex-direction:column;display:flex}.item-row{border:0;border-bottom:1px solid var(--line);width:100%;min-height:54px;color:var(--text);text-align:left;background:0 0;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:0 16px;transition:background .14s;display:grid}.item-row:hover{background:rgba(var(--accent-rgb), .06)}.item-row:last-child{border-bottom:0}.checkmark{color:var(--teal);place-items:center;display:grid}.item-title{text-overflow:ellipsis;white-space:nowrap;font-weight:750;overflow:hidden}.item-row.done .item-title{color:var(--muted);text-decoration:line-through}.quantity-pill,.tag-pill{text-overflow:ellipsis;white-space:nowrap;border-radius:999px;max-width:160px;padding:5px 9px;font-size:12px;font-weight:850;overflow:hidden}.quantity-pill{background:var(--teal-soft);color:var(--teal-dark)}.tag-pill{color:var(--muted-strong);background:#14232212}.compact .item-row{min-height:48px}.empty-state{min-height:210px;color:var(--muted);text-align:center;place-items:center;gap:7px;padding:24px;display:grid}.empty-state strong{color:var(--text);font-size:18px}.empty-state p{margin:0}.cloud-access-state{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-solid);min-height:420px;box-shadow:var(--shadow);color:var(--muted);text-align:center;place-items:center;gap:10px;padding:28px;display:grid}.cloud-access-icon{background:var(--teal-soft);width:58px;height:58px;color:var(--teal-dark);border-radius:20px;place-items:center;display:grid}.cloud-access-state strong{color:var(--text);font-size:20px}.cloud-access-state p{max-width:420px;margin:0;line-height:1.5}.callback-shell{background:radial-gradient(circle at 50% 20%, rgba(var(--accent-rgb), .14), transparent 34%), var(--background);place-items:center;min-height:100dvh;padding:28px;display:grid}.callback-card{border:1px solid var(--line);width:min(100%,380px);box-shadow:var(--shadow);text-align:center;background:#ffffffe6;border-radius:24px;flex-direction:column;align-items:center;gap:12px;padding:30px;display:flex}.callback-icon{background:var(--teal-soft);width:52px;height:52px;color:var(--teal);border-radius:18px;place-items:center;display:grid}.callback-card.error .callback-icon{color:#a23a30;background:#fff0ed}.callback-card h1{margin:4px 0 0;font-size:28px}.callback-card p{color:var(--muted-strong);margin:0;line-height:1.5}.callback-card a{color:var(--teal);margin-top:6px;font-weight:800;text-decoration:none}.sheet-backdrop{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:20;background:#10211f42;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.sheet{background:#fffffff2;border:1px solid #ffffffb8;border-radius:28px;flex-direction:column;gap:16px;width:min(100%,460px);padding:18px;display:flex;box-shadow:0 30px 80px #1224213b}.sheet header{justify-content:space-between;align-items:center;gap:14px;display:flex}.sheet header span{color:var(--teal);font-size:12px;font-weight:850;display:block}.sheet header strong{margin-top:3px;font-size:22px;display:block}.sheet small{color:var(--muted)}.sheet-submit{width:100%}.sheet-error{color:#a23a30;margin:0;font-size:13px}.spin{animation:.9s linear infinite spin}.app-version{right:max(10px, env(safe-area-inset-right));bottom:max(8px, env(safe-area-inset-bottom));z-index:30;color:#10211f94;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffbd;border:1px solid #10211f14;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:750;line-height:1;position:fixed}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line);min-height:auto}.list-nav{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid;overflow:visible}.quick-add{grid-template-columns:1fr 1fr}.name-field,.add-button{grid-column:1/-1}}@media (max-width:620px){.workspace{padding:22px 14px 28px}.topbar{align-items:flex-start}h1{font-size:31px}.overview-band{grid-template-columns:repeat(3,1fr)}.progress-meter{grid-column:1/-1}.quick-add{grid-template-columns:1fr}.quantity-field,.store-field{grid-column:1}.item-row{grid-template-columns:auto minmax(0,1fr) auto}.tag-pill{display:none}}
