:root{color-scheme:light;font-family:Georgia,serif;background:#f7f4ec;color:#1f1a17}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at top,#fffaf0 0,#f7f4ec 55%,#efe7d7)}button,input{font:inherit}.app{width:min(100%,38rem);margin:0 auto;padding:1rem .85rem 2rem}.picker-app{padding-top:1.15rem}.wordmark{margin:0;font-size:1.6rem;font-weight:500;line-height:1;text-align:left}.wordmark-button{padding:0;border:0;background:transparent;color:inherit}.wordmark-char{font-style:normal}.wordmark-lista{font-family:Snell Roundhand,Brush Script MT,cursive;font-style:italic;font-weight:500;font-size:1.42em}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.55rem}.list-badge{padding-top:.18rem;color:#6f645a;font-size:.9rem;text-align:right}.list-title-area{min-width:0}.list-badge-button{padding:.18rem 0 0;border:0;background:transparent;cursor:text}.list-code{margin-top:.08rem;color:#9a8f84;font-size:.72rem;letter-spacing:.04em;text-align:right}.list-rename{min-width:min(12rem,46vw)}.list-rename-input{min-height:2rem;padding:.3rem .5rem;text-align:right}.list-rename-error{margin:.18rem 0 0;color:#8e3127;font-size:.76rem;text-align:right}.picker-section{margin-top:.95rem}.picker-heading{margin:0 0 .45rem;color:#6f645a;font-size:.92rem;font-weight:600}.saved-lists{list-style:none;margin:0;padding:0;display:grid;gap:.35rem}.saved-list-button{width:100%;padding:.8rem .9rem;border:1px solid #d8cdbd;background:#fffcf5fa;color:#1f1a17;text-align:left}.saved-list-button:hover,.saved-list-button:focus-visible{background:#f1e9dc;outline:none}.saved-list-shell{position:relative;width:100%;-webkit-user-select:none;user-select:none;touch-action:pan-y}.saved-list-hint-layer{position:absolute;inset:0;display:flex;overflow:hidden;border-radius:.5rem;background:#c84b3d}.saved-list-delete-hint{flex:1;display:flex;align-items:center;justify-content:flex-end;padding-right:.8rem;color:#fffef8;font-weight:700}.saved-list-content{position:relative;z-index:1;transition:transform .16s ease;will-change:transform}.saved-list-content.dragging{transition:none}.auth-toggle{display:inline-grid;grid-template-columns:repeat(2,auto);gap:.2rem;padding:.2rem;border-radius:999px;background:#e2d7c7b3}.auth-toggle-button{min-width:5.2rem;padding:.45rem .8rem;border-radius:999px;background:transparent;color:#6f645a}.auth-toggle-button.is-active{background:#fffaf0;color:#1f1a17}.auth-form{display:grid;gap:.45rem;margin-top:.55rem}.auth-submit-button{width:100%}.picker-error{margin-top:.45rem}.unlock-copy{margin:0 0 .55rem;color:#6f645a;font-size:.9rem;line-height:1.35}.add-form{display:grid;grid-template-columns:1fr auto;gap:.45rem;margin-bottom:.55rem;align-items:start;position:relative}.input-with-suggestions{min-width:0}input[type=text]{width:100%;min-height:2.6rem;padding:.55rem .75rem;border:1px solid #c9bdab;border-radius:.5rem;background:#fffcf5f2}.add-button{min-width:2.6rem;min-height:2.6rem;padding:0;font-size:1.4rem;line-height:1}.suggestions{list-style:none;margin:.2rem 0 0;padding:.25rem;position:absolute;top:calc(100% - .1rem);left:0;right:0;grid-column:1 / -1;z-index:2;border:1px solid #d8cdbd;border-radius:.6rem;background:#fffcf5fa;box-shadow:0 .45rem 1.2rem #3a29181a;display:grid;gap:.1rem}.suggestion-button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.45rem .55rem;background:transparent;color:#1f1a17;border-radius:.45rem;text-align:left}.suggestion-main{display:flex;align-items:center;gap:.35rem;min-width:0}.suggestion-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggestion-emoji,.item-emoji{flex:0 0 auto}.suggestion-meta{display:flex;align-items:center;justify-content:flex-end;gap:.45rem;min-width:0;flex:0 0 auto}.suggestion-note{color:#8a7f73;font-size:.74rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:16rem}.suggestion-age{color:#8a7f73;font-size:.76rem}.suggestion-button:hover,.suggestion-button:focus-visible{background:#efe5d5;outline:none}.suggestion-button.is-disabled{background:#f1ece3;color:#8a7f73;cursor:not-allowed}.suggestion-button.is-disabled:hover,.suggestion-button.is-disabled:focus-visible{background:#f1ece3}.suggestion-count{color:#8a7f73;font-size:.82rem}.form-error{margin:-.15rem 0 .55rem;color:#8e3127;font-size:.88rem}input[type=checkbox]{width:auto;margin:0}button{padding:.65rem .85rem;border:0;border-radius:.5rem;background:#1f1a17;color:#fffaf0;cursor:pointer}.list{list-style:none;padding:0;margin:0 0 .7rem;display:grid;gap:.35rem}.grouped-list{display:grid;gap:.8rem}.group-section{display:grid;gap:.35rem}.group-header{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;padding:.1rem .15rem 0;width:100%;border:0;background:transparent;color:#6f645a;font-size:.92rem;font-weight:600;letter-spacing:0;text-align:left;cursor:pointer}.group-header:hover,.group-header:focus-visible{color:#4f453b;outline:none}.group-label{min-width:0}.group-header-right{display:inline-flex;align-items:center;gap:.45rem;flex:0 0 auto}.group-count{flex:0 0 auto;color:#9a8f84;font-size:.74rem}.group-chevron{display:inline-block;color:#9a8f84;font-size:.9rem;line-height:1;transform:rotate(0);transition:transform .14s ease}.group-chevron.is-collapsed{transform:rotate(-90deg)}.group-items{margin-bottom:0}.group-items[hidden]{display:none}.item-row{list-style:none;position:relative;z-index:0}.item-row:has(.item-note-input),.item-row:has(.item-name-input),.item-row:has(.item-emoji-input-inline),.item-row.is-expanded{z-index:4}.item-shell{display:grid}.item{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.45rem;padding:.55rem .75rem;border-radius:.55rem;background:#fffaf0;border:1px solid #ddd3c4}.item.is-expanded{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom-color:transparent}.item-toggle-surface{position:absolute;inset:0;z-index:0;padding:0;border:0;border-radius:inherit;background:transparent}.item-emoji-area{position:relative;z-index:1;width:1.5rem;min-width:1.5rem;height:1.5rem;min-height:1.5rem}.item-emoji-button{width:1.5rem;min-width:1.5rem;height:1.5rem;padding:0;display:grid;place-items:center;background:transparent;color:#8a7f73}.item-emoji-button.has-emoji{color:inherit}input.item-emoji-input{height:2rem;min-height:2rem;padding:.1rem .3rem;border:1px solid #d8cdbd;border-radius:.45rem;background:#fffcf5f2;text-align:center;font-size:1.2rem;line-height:1.2}input.item-emoji-input-inline{position:absolute;top:50%;left:50%;width:2.6rem;transform:translate(-50%,-50%);z-index:2}.item-name-button{width:auto;min-width:0;display:inline-flex;align-items:center;gap:.3rem;padding:0;background:transparent;color:inherit;text-align:left;justify-self:start}.item-name-area{position:relative;z-index:1;min-width:0}.item-name{line-height:1.2;overflow-wrap:anywhere}.item-name-input{width:auto;max-width:min(14rem,100%);min-height:2rem;padding:.35rem .45rem;border:1px solid #d8cdbd;border-radius:.45rem;background:#fffcf5f2;line-height:1.2}.item-note-area{position:relative;z-index:1;min-width:8rem;display:flex;justify-content:flex-end}.item-note-button{max-width:14rem;padding:0;background:transparent;color:#8a7f73;text-align:right}.item-note-button.has-note{color:#6f645a}.item-note{font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right}.item-note-input{width:12rem;min-height:2rem;padding:.4rem .55rem;border:1px solid #d8cdbd;border-radius:.45rem;background:#fffcf5f2;text-align:right;font-size:16px}.item.checked .item-name{color:#7c7269}.item-detail-inline{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.45rem .6rem;padding:0 .75rem .75rem;border:1px solid #ddd3c4;border-top:0;border-radius:0 0 .55rem .55rem;background:#fffaf0}.item-detail-category{position:relative;min-width:0;grid-column:1}.item-detail-category-button{padding:0;background:transparent;color:#6f645a;font-size:1rem;line-height:1.2;text-align:left;white-space:normal;overflow-wrap:anywhere}.item-detail-category-input{width:100%;min-height:0;padding:0;border:0;border-radius:0;background:transparent;color:#6f645a;font-size:1rem;line-height:1.2}.item-detail-category-input:focus{outline:none}.item-detail-category-suggestions{list-style:none;margin:.3rem 0 0;padding:.25rem;position:absolute;top:calc(100% + .1rem);left:0;right:auto;min-width:10rem;max-width:min(14rem,100vw - 3rem);z-index:5;border:1px solid #d8cdbd;border-radius:.6rem;background:#fffcf5fa;box-shadow:0 .45rem 1.2rem #3a29181a;display:grid;gap:.1rem}.item-detail-category-option{width:100%;padding:.45rem .55rem;background:transparent;border-radius:.45rem;color:#1f1a17;text-align:left}.item-history-list{display:grid;gap:.4rem;justify-items:end;align-content:start;grid-column:2;grid-row:1 / span 2}.item-history-entry{display:flex;justify-content:flex-end}.item-history-meta{display:flex;align-items:baseline;justify-content:flex-end;gap:.45rem;min-width:0;flex:0 0 auto}.item-history-meta .suggestion-note{max-width:16rem}.item-history-meta .suggestion-count{text-align:right}.swipe-shell{position:relative;width:100%;overflow:hidden;-webkit-user-select:none;user-select:none;touch-action:pan-y}.item-row.is-expanded .swipe-shell,.item-row.is-expanded .swipe-content{overflow:visible}.swipe-hint-layer{position:absolute;inset:0;display:flex;overflow:hidden;border-radius:.55rem;background:#c84b3d}.swipe-delete-hint,.swipe-complete-hint{display:flex;align-items:center;color:#fffef8;font-weight:700}.swipe-delete-hint{flex:1;justify-content:flex-end;padding-right:.8rem;background:#c84b3d}.swipe-complete-hint{width:2.25rem;min-width:2.25rem;justify-content:flex-start;padding-left:.65rem;background:#2f8a53}.swipe-shell.checked-state .swipe-hint-layer{background:#2f8a53}.swipe-shell.checked-state .swipe-delete-hint{background:transparent}.swipe-content{position:relative;z-index:1;width:100%;transition:transform .16s ease,margin-left .16s ease,width .16s ease;will-change:transform,margin-left,width;overflow:hidden}.swipe-content.dragging{transition:none}.checkout-button{width:100%;min-height:2.7rem;margin-top:.7rem;border:1px solid #d7c5b4;border-radius:999px;background:#c65635;color:#fffaf0;font:inherit;font-size:.9rem;letter-spacing:.01em}.checkout-button:disabled{background:#ddd1c1;border-color:#d7c9b8;color:#877b6f;cursor:default}.empty{padding:.8rem .9rem;border-radius:.55rem;background:#fffcf5bf;border:1px dashed #d4c8b8;color:#6c625a;font-size:.92rem}@media(max-width:560px){.app{padding-top:.75rem}.suggestions{position:static;margin-top:.35rem;grid-column:1 / -1}}
