:root{color:#252127;font-synthesis:none;text-rendering:optimizelegibility;background:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button{cursor:pointer}button:focus-visible{outline-offset:3px;outline:3px solid #fc3d90}.app-shell{width:min(100%,520px);min-height:100svh;margin:0 auto;padding:18px 16px 104px}.profile-screen{place-items:center;padding-bottom:18px;display:grid}.profile-choice{text-align:center;background:#fff7fb;border:1px solid #ffd7e8;border-radius:26px;width:100%;padding:30px 22px}.profile-choice .wordmark{text-align:left;width:fit-content;margin:0 auto 42px}.profile-choice h1{color:#252127;margin-top:8px;font-size:2.7rem}.profile-choice>p:not(.wordmark):not(.eyebrow){color:#756c72;margin-top:12px;font-size:.88rem}.profile-options{gap:11px;margin-top:28px;display:grid}.profile-options button{color:#fff;font:inherit;background:#fc3d90;border:0;border-radius:999px;padding:14px;font-weight:850}.topbar,.week-heading,.cheesecake-card{align-items:center;display:flex}.topbar,.week-heading{justify-content:space-between}.eyebrow,.section-label{color:#fd3e91;letter-spacing:.13em;margin:0;font-size:.67rem;font-weight:900}h1,h2,h3,p{margin:0}h1,h2,h3,.wordmark{color:#252127;font-family:Arial Rounded MT Bold,Trebuchet MS,Arial,sans-serif}.wordmark{letter-spacing:-.08em;font-size:1rem;line-height:.75}.profile-button{color:#fff;background:#fc3d90;border:0;border-radius:50%;place-items:center;width:40px;height:40px;font-weight:800;display:grid}.hero-card{color:#fff;isolation:isolate;background:#fc3d90;border-radius:27px;min-height:265px;margin-top:18px;padding:26px;display:flex;position:relative;overflow:hidden}.hero-card:after{z-index:-1;content:"";background:#f92d84;border-radius:50%;width:290px;height:290px;position:absolute;bottom:-115px;right:-90px}.hero-copy{z-index:2;position:relative}.hero-card .eyebrow{color:#fff}h1{color:#fff;letter-spacing:-.08em;margin-top:6px;font-size:3.35rem;line-height:.82}.hero-text{width:165px;margin-top:17px;font-size:.86rem;font-weight:650;line-height:1.25}.hero-button{color:#fb3b8e;font:inherit;background:#fff;border:0;border-radius:999px;align-items:center;gap:16px;margin-top:18px;padding:10px 14px;font-size:.75rem;font-weight:850;display:flex}.hero-button span{font-size:1.1rem}.hero-cake{width:165px;height:170px;position:absolute;bottom:26px;right:18px;transform:rotate(-9deg)}.cake-top,.cake-body,.cake-base{border-radius:50%;width:140px;position:absolute;left:13px}.cake-top{background:#fff3e4;height:42px;top:40px;box-shadow:inset 0 -12px #ffe0c7}.cake-body{background:#ffecdc;border-radius:8px 8px 36px 36px;height:75px;top:63px}.cake-base{background:#c9815b;height:23px;top:126px;box-shadow:inset 0 -9px #9e5339}.cherry{z-index:2;color:#c22047;font-size:1.7rem;position:absolute;top:19px;left:76px}.week-heading{margin:28px 2px 15px}h2{letter-spacing:-.04em;font-size:1.35rem}h2 span{color:#9f9a9e;letter-spacing:0;vertical-align:middle;font-size:.76rem}.cheesecake-list{gap:12px;display:grid}.cheesecake-card{background:#fff;border:1px solid #f0edf0;border-radius:17px;gap:14px;min-height:82px;padding:12px;box-shadow:0 5px 16px #3922310d}.cake-illustration{border-radius:14px;flex:0 0 56px;place-items:center;width:56px;height:56px;font-size:1.65rem;display:grid}.pistachio{background:#d9efcf}.lotus{background:#ffe0bf}.lemon{background:#fff29d}.cake-details{flex:1;min-width:0}.week-photo-slider{max-width:180px;margin-top:10px}.week-photo-slider img{object-fit:cover;border-radius:10px;width:100%;height:92px;display:block}.slider-controls{color:#9f8f98;justify-content:space-between;align-items:center;margin-top:3px;font-size:.64rem;display:flex}.slider-controls button{color:#fc3d90;background:#fff7fb;border:1px solid #ffd0e4;border-radius:50%;width:22px;height:22px;padding:0;font-size:1rem;line-height:1}.slider-controls button:disabled{opacity:.35;cursor:default}h3{font-size:1.1rem}.score,.unrated{margin-top:5px;font-size:.84rem}.score{color:#fc3d90;font-weight:800}.unrated{color:#a19ba0}.status{color:#a19ba0;justify-items:center;gap:4px;font-size:.68rem;font-weight:700;display:grid}.status-dot{color:#fff;border:1.5px solid #ccb9aa;border-radius:50%;place-items:center;width:20px;height:20px;font-size:.72rem;display:grid}.status.done{color:#fc3d90}.status.done .status-dot{background:#fc3d90;border-color:#fc3d90}.add-button{color:#fff;width:100%;font:inherit;background:#fc3d90;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;margin-top:22px;padding:15px;font-weight:850;display:flex;box-shadow:0 8px 18px #fc3d903d}.add-button span{font-size:1.25rem;line-height:.8}.bottom-nav{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border-top:1px solid #f0e9ee;justify-content:space-around;max-width:520px;margin:0 auto;padding:11px 12px 18px;display:flex;position:fixed;bottom:0;left:0;right:0}.nav-item{color:#a19ba0;font:inherit;background:0 0;border:0;gap:3px;font-size:.72rem;display:grid}.nav-item span{font-size:1.25rem;line-height:1}.nav-item.active{color:#fc3d90;font-weight:850}.text-button,.settings-button,.try-button,.add-row,.remove-row{font:inherit;cursor:pointer;background:0 0;border:0}.text-button,.settings-button{color:#fc3d90;font-size:.75rem;font-weight:850}.setup-heading{margin:44px 4px 26px}.setup-heading h1{color:#252127;font-size:2.65rem}.setup-heading>p:last-child{color:#756c72;max-width:310px;margin-top:15px;font-size:.9rem;line-height:1.35}.source-field{color:#3d3439;gap:7px;margin-bottom:23px;font-size:.77rem;font-weight:800;display:grid}.source-field em{color:#a39ba0;font-style:normal;font-weight:500}.source-field input,.draft-inputs input,.criteria input{color:#282127;width:100%;font:inherit;background:#fff;border:1px solid #e7e0e4;border-radius:12px}.source-field input{padding:13px;font-size:.8rem}.list-editor{border-top:1px solid #eee7eb;padding-top:20px}.editor-title{justify-content:space-between;align-items:baseline;margin-bottom:12px;display:flex}.editor-title h2{font-size:1.18rem}.editor-title span{color:#a39ba0;font-size:.68rem}.draft-row{background:#fff;border:1px solid #eee7eb;border-radius:16px;padding:12px}.draft-row+.draft-row{margin-top:9px}.draft-inputs{grid-template-columns:1fr 88px;gap:9px;display:grid}.draft-inputs input{min-width:0;padding:10px;font-size:.86rem}.draft-inputs label{position:relative}.draft-inputs label input{padding-right:26px}.draft-inputs label span{color:#887b82;font-size:.82rem;position:absolute;top:10px;right:11px}.match-row{justify-content:space-between;align-items:center;margin-top:8px;display:flex}.match{font-size:.7rem;font-weight:800}.match.known{color:#3b9d71}.match.new{color:#fc3d90}.remove-row{color:#aa9fa5;font-size:1.2rem;line-height:.7}.add-row{color:#fc3d90;margin:13px 0 8px;font-size:.8rem;font-weight:850}.confirm-button{margin-top:20px}.try-button{color:#fff;background:#fc3d90;border-radius:999px;padding:8px 11px;font-size:.7rem;font-weight:850}.modal-backdrop{z-index:5;background:#21131d70;align-items:end;display:flex;position:fixed;inset:0}.rating-modal{background:#fff;border-radius:26px 26px 0 0;width:min(100%,520px);max-height:89svh;margin:0 auto;padding:28px 20px 32px;overflow:auto}.rating-modal h2{margin-top:4px;font-size:1.7rem}.close-modal{float:right;color:#81767c;background:0 0;border:0;font-size:1.6rem}.rating-help{color:#756c72;margin:9px 0 18px;font-size:.8rem;line-height:1.35}.criteria{grid-template-columns:1fr 1fr;gap:10px;display:grid}.criteria label{color:#4f454b;gap:5px;font-size:.75rem;font-weight:800;display:grid}.criteria input{padding:9px;font-size:.85rem}.note-field,.photo-field{color:#4f454b;gap:6px;margin-top:14px;font-size:.75rem;font-weight:800;display:grid}.note-field em,.photo-field em{color:#a19ba0;font-style:normal;font-weight:500}.note-field textarea{resize:vertical;min-height:68px;font:inherit;border:1px solid #e7e0e4;border-radius:12px;padding:10px;font-size:.8rem}.photo-field input{padding:9px 0;font-size:.75rem}.photo-preview,.detail-photo{object-fit:cover;border-radius:13px;width:100%;max-height:230px}.photo-preview{margin-top:10px}.photo-error{color:#c43d65;margin-top:8px;font-size:.74rem;font-weight:700}.detail-note{color:#75616b;background:#fff;border-radius:10px;margin-top:14px;padding:11px;font-size:.78rem;line-height:1.35}.detail-photo{margin-top:12px}.rating-modal .add-button{margin-top:20px}.rating-modal .add-button:disabled{cursor:not-allowed;opacity:.45}.detail-screen .topbar{margin-bottom:24px}.detail-screen .topbar .text-button{padding:0}.detail-hero{color:#fff;background:#fc3d90;border-radius:25px;padding:28px 22px 24px;position:relative;overflow:hidden}.detail-hero h1{margin:7px 0 8px;font-size:2.6rem}.detail-hero .eyebrow{color:#fff}.detail-score{font-size:1.1rem;font-weight:850}.detail-cake{float:right;margin:6px 6px 0 12px;font-size:4.3rem}.detail-grid{grid-template-columns:1fr 1fr;gap:10px;margin:18px 0;display:grid}.detail-grid div{background:#fff;border-radius:15px;gap:4px;padding:14px;display:grid;box-shadow:0 4px 14px #3922310f}.detail-grid span{color:#a19ba0;font-size:.64rem;font-weight:800}.detail-grid strong{color:#252127;font-size:1.2rem}.history-panel{background:#fff;border-radius:18px;padding:18px}.history-panel h2{margin-bottom:13px;font-size:1.15rem}.latest-rating{background:#fff7fb;border:1px solid #ffd7e8;border-radius:18px;margin:18px 0;padding:18px}.latest-rating h2{margin-bottom:13px;font-size:1.15rem}.latest-grid{padding-bottom:0}.history-row{color:#80757d;border-top:1px solid #f0e9ee;justify-content:space-between;padding:11px 0;font-size:.78rem;display:flex}.history-row strong{color:#fc3d90}.history-row{text-align:left;width:100%}.history-row small{color:#a19ba0;margin-left:6px}.criteria-history{grid-template-columns:1fr 1fr;gap:8px;padding:0 0 12px;display:grid}.criteria-history div{color:#80757d;background:#fff4f8;border-radius:9px;justify-content:space-between;padding:8px 9px;font-size:.72rem;display:flex}.criteria-history strong{color:#fc3d90}.page-title{color:#252127;margin-top:5px;font-size:2rem}.catalog-search{width:100%;font:inherit;border:1px solid #e7e0e4;border-radius:12px;margin:28px 0 15px;padding:13px;font-size:.82rem}.ranking-field{color:#81757c;gap:6px;margin-bottom:15px;font-size:.7rem;font-weight:800;display:grid}.ranking-field select{color:#352b32;font:inherit;background:#fff;border:1px solid #e7e0e4;border-radius:12px;padding:11px;font-size:.8rem}.ranking-controls{align-items:end;gap:9px;margin-bottom:15px;display:flex}.ranking-scope{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:15px;display:grid}.ranking-scope button{color:#81757c;font:inherit;background:#fff;border:1px solid #e7e0e4;border-radius:11px;padding:10px;font-size:.72rem;font-weight:800}.ranking-scope button.scope-active{color:#fc3d90;background:#fff7fb;border-color:#ffd0e4}.ranking-controls .ranking-field{flex:1;margin-bottom:0}.invert-button{color:#fc3d90;font:inherit;white-space:nowrap;cursor:pointer;background:#fff7fb;border:1px solid #ffd0e4;border-radius:12px;padding:11px 10px;font-size:.7rem;font-weight:850}.catalog-list{gap:9px;display:grid}.catalog-card{text-align:left;width:100%;font:inherit;background:#fff;border:1px solid #eee7eb;border-radius:15px;align-items:center;gap:12px;padding:11px;display:flex}.catalog-icon{background:#ffe2ef;border-radius:12px;place-items:center;width:43px;height:43px;font-size:1.25rem;display:grid}.catalog-info{flex:1;gap:3px;display:grid}.catalog-info strong{color:#31282e;font-size:.86rem}.catalog-info small{color:#9b9198;font-size:.68rem}.catalog-score{color:#fc3d90;font-size:.78rem;font-weight:850}.history-week-card{color:#fff;background:#fc3d90;border-radius:20px;margin:30px 0 18px;padding:21px}.history-week-card .eyebrow{color:#fff}.history-week-card h2{color:#fff;margin:7px 0}.history-week-card p:last-child{font-size:.8rem}.history-catalog-row{text-align:left;width:100%;font:inherit;color:#4f454b;background:0 0;border:0;border-top:1px solid #f0e9ee;justify-content:space-between;padding:13px 0;font-size:.8rem;display:flex}.history-catalog-row strong{color:#fc3d90}.history-catalog-row small{color:#a19ba0;margin-left:7px;font-size:.65rem;font-weight:500}.history-week-list{border-top:1px solid #ffffff59;margin-top:15px}.history-week-list button{color:#fff;text-align:left;width:100%;font:inherit;background:0 0;border:0;border-bottom:1px solid #ffffff40;justify-content:space-between;padding:10px 0;font-size:.78rem;display:flex}.history-week-list small{opacity:.82;font-size:.68rem}.history-week-list .tried{color:#fff;font-weight:800}.history-week-list .tried small{color:#ffe0ef;opacity:1}.history-week-list .pending{color:#ffffffc2}.history-week-list .pending small{color:#ffffffa8}
