.calendar-meals{width:100%;min-width:0}.menu-week{background:linear-gradient(120deg,#fff8e8,#fff0e7);border:1px solid #ebd7c4;border-radius:24px;padding:25px 28px;box-shadow:0 5px 15px #8b543509}.menu-week-heading{display:flex;justify-content:space-between;gap:16px;align-items:center}.menu-week-heading>svg{color:#bd765b}.menu-week-heading h2{font-size:24px;margin-top:8px}.menu-week-heading p{font-size:12px;color:#88695e;margin-top:5px}.menu-date-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:22px}.menu-date-shortcuts{display:flex;gap:8px}.menu-date-shortcuts button{border:1px solid #e4c8ba;border-radius:14px;min-height:44px;min-width:62px;background:#fffdf9;font-size:13px}.menu-date-shortcuts button.active{background:#ffd447;border-color:#d3ae31;color:#4e382e}.menu-date-picker{display:flex;align-items:center;gap:10px;font-size:12px;color:#785c55}.menu-date-picker input{width:166px;background:#fffdf9;font-size:13px;padding:10px;min-height:44px}.menu-week-navigation{display:flex;align-items:center;justify-content:space-between;margin-top:14px;color:#7c615d}.menu-week-navigation>span{font-size:12px;font-weight:600;letter-spacing:1px}.menu-week-navigation .icon-button{width:44px;min-width:44px;height:44px}.menu-week-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:9px;margin-top:5px}.menu-week-days>button{display:flex;flex-direction:column;align-items:center;gap:8px;border-radius:17px;min-height:106px;padding:13px 4px 10px;background:#fffdf6;border:1px solid #ecd9c8;color:#795d56;position:relative}.menu-week-days>button.selected{background:#ffcfda;border-color:#de7791;color:#633447;box-shadow:0 3px #e79eb057}.menu-week-days>button.is-today:not(.selected){border-color:#bf8b4b;background:#fff3ca}.menu-week-days span{font-size:12px}.menu-week-days strong{font-size:22px;line-height:1.2}.menu-week-days small{font-size:11px;min-height:16px}.calendar-day-summary{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:29px 0 16px}.calendar-day-summary h2{font-size:20px}.calendar-day-summary .text-button{min-height:44px}.calendar-meal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.calendar-meal-card{border:1px solid #e9d4c6;background:#fffdf9;border-radius:24px;padding:21px;min-width:0;box-shadow:0 5px 14px #76524607}.calendar-meal-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.calendar-meal-top>div{display:flex;gap:10px;align-items:center}.calendar-meal-top h3{font-size:18px}.meal-slot-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:13px;background:#fff0b4;color:#70552e}.meal-slot-icon.slot-1{background:#ffd9bd;color:#8b5034}.meal-slot-icon.slot-2{background:#ffd6e1;color:#9c4b65}.meal-slot-icon.slot-3{background:#d5efe4;color:#406b59}.calendar-meal-meta{font-size:12px;color:#80675f;margin-top:14px}.calendar-dishes{margin-top:9px}.calendar-dish{display:flex;align-items:center;gap:11px;padding:13px 0;border-bottom:1px dashed #eadbce;min-width:0}.calendar-dish-cover{width:68px;height:68px;border-radius:14px;flex-shrink:0;padding:0;overflow:hidden;background:#fbefd9}.calendar-dish-cover>.recipe-cover-image,.calendar-dish-cover>.recipe-cover-placeholder,.calendar-dish-cover>img{width:100%;height:100%;min-height:0;object-fit:cover}.calendar-dish>div{flex:1;min-width:0}.calendar-dish .plain-title{min-height:44px;text-align:left;font-size:15px;line-height:1.5;overflow-wrap:anywhere;display:flex;align-items:center}.calendar-dish p{font-size:11px;line-height:1.6;color:#836c64}.calendar-dish small{font-size:11px;color:#9b5e6b;line-height:1.6;display:block;overflow-wrap:anywhere}.calendar-dish>.icon-button{width:44px;min-width:44px;height:44px;color:#987268}.meal-supply-progress{margin-top:17px;width:100%;min-height:46px;border:1px solid #ebd5a9;background:#fff5d8;border-radius:13px;padding:10px 11px;display:flex;align-items:center;gap:8px;font-size:12px;text-align:left}.meal-supply-progress>span{font-size:11px;color:#7c674c;margin-left:auto}.meal-supply-progress.ready{border-color:#bedcce;background:#e8f5ef;color:#375f4d}.calendar-empty-meal{padding:27px 0 18px;min-height:115px}.calendar-empty-meal p{font-size:14px;color:#785b56}.calendar-empty-meal small{display:block;font-size:11px;color:#897568;margin-top:5px;line-height:1.8}.calendar-meal-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:18px;padding-top:16px;border-top:1px solid #ede0d4}.calendar-meal-actions>.button{font-size:12px;min-height:44px;padding:9px 13px}.calendar-meal-actions>.icon-button{width:44px;min-width:44px;height:44px}.calendar-meal-actions>.text-button{font-size:12px;min-height:44px;margin-left:auto}.calendar-meal-actions>span{font-size:12px;display:flex;align-items:center;gap:8px;color:#4e795f}.calendar-meal-editor{margin-top:18px;padding:16px 13px;border:1px solid #e4d5c7;border-radius:16px;background:#fff8ee}.calendar-meal-editor .form-grid{gap:12px}.calendar-meal-editor .field{font-size:12px;min-width:0;margin-bottom:10px}.calendar-meal-editor input,.calendar-meal-editor select{font-size:13px;min-height:44px;padding:10px}.calendar-meal-editor .inline-actions{justify-content:flex-end;flex-wrap:wrap;margin-top:12px}.calendar-meal-editor .button{font-size:12px;min-height:44px;padding:8px 12px}.calendar-meal-editor .text-button,.calendar-legacy-note .text-button{min-height:44px}.calendar-legacy-note{padding:12px 13px;border-radius:14px;background:#fff1da;border:1px solid #ead3a7;margin-top:16px;font-size:12px}.calendar-legacy-note p{line-height:1.8}.calendar-legacy-note .inline-actions{flex-wrap:wrap}.calendar-legacy-note .button{font-size:12px;padding:8px 12px;min-height:44px}.menu-sync-note{display:flex;align-items:flex-start;justify-content:center;gap:8px;font-size:12px;color:#7f6a61;margin-top:23px;line-height:1.8}.menu-sync-note svg{margin-top:3px}.order-recipe-summary{display:flex;align-items:center;gap:15px;padding:13px;border:1px solid #edd7c8;background:#fff8ee;border-radius:18px;margin-bottom:23px}.order-recipe-summary>.recipe-cover-image,.order-recipe-summary>.recipe-cover-placeholder,.order-recipe-summary>img{width:88px;height:88px;min-height:0;object-fit:cover;border-radius:13px;flex-shrink:0}.order-recipe-summary>div{min-width:0}.order-recipe-summary h3{font-size:19px;overflow-wrap:anywhere}.order-recipe-summary p{font-size:12px;color:#82665e;margin-top:5px}.order-legacy-consent{display:flex;align-items:flex-start;gap:12px;background:#fff0d8;border:1px solid #e9c995;border-radius:15px;padding:15px;margin:17px 0;font-size:12px;line-height:1.9;cursor:pointer}.order-legacy-consent input{margin-top:4px}.order-recipe-panel .form-grid>.field{min-width:0}.order-recipe-panel .notice small{line-height:1.8}@media(max-width:850px){.calendar-meal-grid{grid-template-columns:1fr}.calendar-meal-card{padding:20px}.menu-week{padding:22px}.calendar-dish-cover{width:70px;height:70px}}@media(max-width:480px){.menu-week{padding:19px 12px;border-radius:21px}.menu-week-heading{padding:0 4px}.menu-week-heading h2{font-size:22px}.menu-week-heading p{font-size:11px}.menu-week-heading>svg{width:23px}.menu-date-toolbar{gap:8px;margin-top:17px}.menu-date-shortcuts{gap:5px}.menu-date-shortcuts button{font-size:12px;min-width:48px}.menu-date-picker{gap:5px;flex-direction:column;align-items:flex-start;font-size:10px}.menu-date-picker input{width:150px;font-size:13px}.menu-week-navigation{margin-top:8px}.menu-week-days{gap:3px}.menu-week-days>button{border-radius:12px;min-height:91px;padding:11px 0;gap:7px}.menu-week-days strong{font-size:19px}.menu-week-days span,.menu-week-days small{font-size:10px}.calendar-day-summary{margin-top:21px;gap:6px}.calendar-day-summary h2{font-size:18px}.calendar-day-summary .text-button{font-size:11px;gap:4px}.calendar-day-summary .text-button svg:last-child{display:none}.calendar-meal-card{padding:18px 15px;border-radius:21px}.calendar-dish{gap:9px}.calendar-dish-cover{width:59px;height:59px}.calendar-dish .plain-title{font-size:14px}.calendar-dish small,.calendar-dish p{font-size:10px}.calendar-meal-editor .form-grid{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:9px}.calendar-meal-editor select{font-size:13px}.calendar-meal-actions{gap:6px}.menu-sync-note{font-size:11px;justify-content:flex-start}.order-recipe-summary{gap:12px}.order-recipe-summary h3{font-size:17px}.order-recipe-summary>.recipe-cover-image,.order-recipe-summary>.recipe-cover-placeholder,.order-recipe-summary>img{width:72px;height:72px}.order-recipe-panel>.form-grid{grid-template-columns:1fr}.order-recipe-panel .field{margin-bottom:13px}}.calendar-dish-cover>.recipe-cover{min-height:0!important}.calendar-dish-cover .recipe-cover-placeholder{font-size:9px!important;gap:3px!important}.calendar-dish-cover .recipe-cover-placeholder svg{width:21px;height:21px}.order-recipe-summary>.order-recipe-cover{width:88px;height:88px;border-radius:13px;flex-shrink:0;overflow:hidden}.order-recipe-summary>div:last-child{flex:1}.calendar-meal-card .chip{white-space:nowrap}@media(max-width:480px){.order-recipe-summary>.order-recipe-cover{width:72px;height:72px}}.menu-week-days{grid-template-columns:repeat(7,minmax(44px,1fr));overflow-x:auto;padding-bottom:4px}.calendar-meals .icon-button,.calendar-meals .text-button{min-height:44px}.menu-add-actions{display:flex;gap:10px;flex-wrap:wrap}.calendar-dish .meal-withdraw{flex-shrink:0;color:#985465;padding:0 6px;gap:4px;font-size:12px;min-width:58px}.meal-withdraw-confirm{margin-top:14px;font-size:12px;line-height:1.8}.meal-withdraw-confirm strong{overflow-wrap:anywhere}.meal-withdraw-confirm .inline-actions{justify-content:flex-end;flex-wrap:wrap}.recipe-extra-fields{margin-top:16px}.recipe-extra-fields>summary{cursor:pointer;min-height:44px;line-height:1.7;padding:12px 0;color:#805364}.recipe-extra-fields[open]>summary{margin-bottom:12px}@media(max-width:480px){.menu-add-actions{width:100%;gap:8px}.menu-add-actions>.button{flex:1;padding:11px 12px;font-size:13px}.calendar-dish .meal-withdraw{padding:0 3px;min-width:54px}}.todo-filter{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:20px 0}.todo-filter .filter-chips{margin:0}.todo-filter label{display:flex;align-items:center;gap:10px;font-size:13px}.todo-filter input{width:170px}.todo-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.todo-group{border:1px solid #ecdacf;background:#fffcf7;border-radius:24px;overflow:hidden;box-shadow:0 5px #e8b79b12;min-width:0}.todo-group-head{display:flex;align-items:center;gap:12px;padding:18px 20px 8px}.todo-group-head>div{flex:1;min-width:0}.todo-group-head strong{font-size:18px;overflow-wrap:anywhere}.todo-group-head small{display:block;font-size:12px;color:#76585c;margin-top:5px;line-height:1.5}.todo-group-head>b{max-width:35%;font-size:17px;overflow-wrap:anywhere}.todo-group-head>b>small{display:inline}.todo-group-tools{padding:0 20px 4px;display:flex;justify-content:flex-end}.todo-group .text-button{min-height:44px;white-space:normal;text-align:left}.todo-group details{border-top:1px dashed #ebd7c7}.todo-group summary{cursor:pointer;min-height:48px;display:flex;align-items:center;justify-content:space-between;padding:8px 20px;font-size:13px;color:#755360}.todo-group summary span{border-radius:20px;background:#fff0ce;padding:4px 10px}.todo-source{padding:14px 20px;border-top:1px solid #f0e5dc;display:grid;grid-template-columns:1fr auto;gap:8px;background:#fffaf1}.todo-source strong{font-size:13px}.todo-source p,.todo-source small{display:block;font-size:12px;color:#785861;line-height:1.7;overflow-wrap:anywhere;margin:4px 0}.todo-source>span{font-size:13px;max-width:120px;overflow-wrap:anywhere}.todo-source-actions{grid-column:1/-1;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.todo-source-actions .text-button{padding:0 6px}.todo-source-actions .icon-button{margin-left:auto}.todo-done{margin-top:24px}.todo-done>.completed-toggle{width:100%}.todo-done>.todo-group{margin-top:10px}.todo-complete-icon{color:#367e66}.menu-section-tabs{margin-bottom:24px}.menu-section-tabs button{min-height:46px!important}.recipe-card .round-add{min-width:44px;min-height:44px}.recipe-card .recipe-cover{width:100%}.batch-conflict-items{font-size:13px;line-height:1.8;padding:12px;border-radius:14px;background:#fff4e3}.batch-conflict-items p{margin:6px 0}.todo-group .checkbox{min-width:44px;min-height:44px}@media(max-width:720px){.todo-groups{grid-template-columns:1fr;gap:13px}.todo-group-head{padding:16px 16px 8px;gap:10px}.todo-group-head strong{font-size:17px}.todo-group-head>b{font-size:16px}.todo-group summary,.todo-source{padding-left:16px;padding-right:16px}.todo-filter{gap:10px}.todo-filter label{flex-basis:100%;justify-content:space-between}.todo-filter input{flex:1;max-width:230px}.todo-source-actions{gap:4px}.todo-source-actions .text-button{font-size:12px}.menu-section-tabs{width:100%}.menu-section-tabs button{flex:1}}.recipe-cover-editor{display:grid;grid-template-columns:110px 1fr;align-items:center;gap:12px;margin:20px 0}.recipe-cover-editor>.recipe-cover{height:100px!important;border-radius:16px}.recipe-cover-editor>.text-button{grid-column:2;justify-self:start}.recipe-cover-editor .upload-button{font-size:12px;min-height:44px;margin:0}.recipe-card>button.recipe-cover{aspect-ratio:4/3;min-height:0;overflow:hidden}.recipe-card>button.recipe-cover>.recipe-cover{position:absolute;inset:0}.recipe-detail-art{overflow:hidden}.recipe-detail-art>.chip{position:absolute;left:18px;top:16px}.todo-composer{padding:22px;margin-bottom:22px;border:1px solid #edcfbc;background:#fff6df;border-radius:24px}.todo-composer>label{display:flex;align-items:center;gap:8px;font-weight:700;margin-bottom:12px}.todo-composer textarea{width:100%;min-height:88px;resize:vertical;background:#fffdfa}.todo-composer-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px}.todo-composer-actions p{font-size:13px;line-height:1.7;margin:0;color:#70565d}.todo-composer-actions .button{flex-shrink:0}.todo-done .todo-group-head strong{text-decoration:line-through;color:#796268}@media(max-width:600px){.todo-composer{padding:18px}.todo-composer-actions{align-items:stretch;flex-direction:column}.todo-composer-actions .button{justify-content:center}}.admin-app{min-height:100vh;background:#f7f7f2;color:#342f35;font-family:Inter,-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif}.admin-app button,.admin-app input,.admin-app select,.admin-app textarea{font:inherit}.admin-app button:focus-visible,.admin-app a:focus-visible{outline:3px solid #B84A70;outline-offset:3px}.admin-sidebar{position:fixed;inset:0 auto 0 0;width:232px;background:#fffefa;border-right:1px solid #EAE8DF;padding:30px 18px;display:flex;flex-direction:column}.admin-logo{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none;padding:0 10px 38px;font-weight:750;font-size:17px}.admin-logo>span{display:grid;place-items:center;width:40px;height:40px;background:#f8c9d5;border-radius:13px}.admin-logo small{display:block;font-size:8px;letter-spacing:1.1px;font-weight:600;margin-top:5px;color:#837b7c}.admin-sidebar-label{font-size:11px;color:#7b7478;margin:0 14px 12px;letter-spacing:2px}.admin-sidebar nav{display:grid;gap:8px}.admin-sidebar nav button{border:0;background:transparent;min-height:48px;padding:12px 14px;display:flex;gap:12px;align-items:center;border-radius:12px;color:#655b62;text-align:left;font-size:14px;cursor:pointer}.admin-sidebar nav button.selected{background:#fbe0e7;color:#673247;font-weight:700}.admin-sidebar nav small{font-size:9px;margin-left:auto;opacity:.8}.admin-sidebar-bottom{margin-top:auto;display:flex;gap:12px;padding:18px 10px 0;border-top:1px solid #EFEAE4;color:#6f6768;font-size:12px}.admin-sidebar-bottom small{display:block;font-size:10px;margin-top:5px}.admin-sidebar-bottom p{margin:0}.admin-main{margin-left:232px;padding:0 34px 40px;max-width:1800px}.admin-header{display:flex;align-items:center;justify-content:space-between;min-height:104px;border-bottom:1px solid #E7E5DD}.admin-header>div:last-child{display:flex;align-items:center;gap:15px}.admin-header h1{font-size:25px;margin:8px 0 0;letter-spacing:0}.admin-header span{font-size:11px;color:#817a7c}.admin-header .admin-account{font-size:13px;color:#494048}.admin-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;border:1px solid #E4E0D8;background:#fffdf8;color:#66555f;cursor:pointer;flex-shrink:0}.admin-icon:disabled{opacity:.4;cursor:not-allowed}.admin-toolbar{display:flex;justify-content:space-between;align-items:center;padding:22px 0;gap:12px;font-size:12px;color:#6f656b}.admin-toolbar>div{display:flex;align-items:center;gap:8px}.admin-live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#48977c;margin-right:7px}.admin-toolbar select,.admin-search select{border:1px solid #E4E0D8;background:#fffdf8;border-radius:10px;min-height:44px;padding:8px 30px 8px 12px;color:#4d444b}.admin-insight{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:27px 30px;margin-bottom:20px;background:#f9e8d5;border:1px solid #EEDDC9;border-radius:20px}.admin-kicker{font-size:9px;font-weight:650;letter-spacing:2px;color:#7d6054}.admin-insight h2{font-size:25px;margin:11px 0;letter-spacing:.3px}.admin-insight p{font-size:13px;color:#786b61;margin:0;max-width:690px;line-height:1.8}.admin-insight-art{position:relative;background:#fff9e6;display:grid;place-items:center;width:87px;height:87px;border-radius:28px;transform:rotate(8deg);flex-shrink:0}.admin-insight-art svg:first-child{width:44px;height:44px;color:#967350;stroke-width:1.5}.admin-insight-art svg:last-child{position:absolute;right:-7px;bottom:9px;width:32px;height:32px;color:#bf5a77;fill:#f4bdca;background:#f9e8d5;border-radius:50%;padding:4px}.admin-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.admin-metric{background:#fffefb;border:1px solid #E8E5DD;border-radius:16px;padding:20px;min-width:0}.admin-metric>span{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#746a70}.admin-metric>strong{display:block;font-size:32px;font-weight:680;letter-spacing:-1px;margin:12px 0}.admin-metric>small{display:block;font-size:10px;color:#7d7478;line-height:1.8}.admin-metric.pink{border-top:3px solid #ECAFC0}.admin-metric.mint{border-top:3px solid #8EC6B3}.admin-metric.yellow{border-top:3px solid #EACD7E}.admin-metric.blue{border-top:3px solid #9BB9D1}.admin-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:20px;margin-bottom:20px}.admin-panel{min-width:0;background:#fffefb;border:1px solid #E8E5DD;border-radius:17px;padding:24px;margin-bottom:20px}.admin-grid>.admin-panel{margin-bottom:0}.admin-panel h3{font-size:16px;line-height:1.5;margin:0 0 12px;font-weight:650}.admin-panel-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:8px}.admin-panel-title h3{margin:0}.admin-panel-title>span{font-size:11px;color:#81757c}.admin-description{color:#7a7077;font-size:12px;line-height:1.9;margin:8px 0 18px}.admin-legend{display:flex;align-items:center;gap:7px}.admin-legend i{width:7px;height:7px;border-radius:2px;background:#da8ba5}.admin-legend i:nth-child(2){background:#90baaa;margin-left:8px}.admin-chart{height:172px;display:flex;align-items:end;gap:3px;border-bottom:1px solid #EDE9E2;background:repeating-linear-gradient(to top,transparent 0,transparent 42px,#F2EEE7 43px)}.admin-chart-day{height:100%;flex:1;min-width:0}.admin-chart-day>div{height:100%;display:flex;gap:1px;align-items:end}.admin-chart-day i{width:50%;background:#d99ab0;border-radius:3px 3px 0 0;min-height:1px}.admin-chart-day i:nth-child(2){background:#95c2b2}.admin-axis{display:flex;justify-content:space-between;color:#81777d;font-size:10px;margin-top:12px}.admin-chart-table summary{cursor:pointer;font-size:11px;margin-top:16px;color:#806574}.admin-facts{margin:0}.admin-facts>div{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid #F0EDE6;align-items:center}.admin-facts>div:last-child{border:0;padding-bottom:0}.admin-facts dt{font-size:12px;color:#766c73}.admin-facts dd{margin:0;font-size:19px;font-weight:650;text-align:right}.admin-facts dd small{display:block;font-weight:400;font-size:10px;color:#8a7a84;margin-top:4px}.admin-funnel{display:grid;gap:13px}.admin-funnel-label{display:flex;justify-content:space-between;font-size:12px;margin-bottom:7px}.admin-funnel-label span{display:flex;align-items:center;gap:10px}.admin-funnel-label b{font-size:9px;color:#a18d98}.admin-funnel-label strong{font-size:17px}.admin-track{height:10px;border-radius:6px;background:#f3ece8;overflow:hidden}.admin-track span{display:block;height:100%;background:#dda4b7;border-radius:6px}.admin-funnel>div:nth-child(2) .admin-track span{background:#c2b8a1}.admin-funnel>div:nth-child(3) .admin-track span{background:#94bdac}.admin-funnel small{font-size:10px;color:#8c7e85;margin-top:4px;display:block}.admin-notes{padding-left:18px;font-size:12px;color:#6b6068;line-height:2.5}.admin-data-foot{font-size:10px;color:#8c8089;text-align:right;margin:24px 0 0}.admin-stage-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:20px}.admin-stage-strip>span{display:flex;gap:9px;align-items:center;background:#fffdf9;border:1px solid #E8E5DD;padding:12px;border-radius:12px;font-size:10px}.admin-stage-strip b{background:#f5d8e1;color:#754455;width:27px;height:27px;display:grid;place-items:center;border-radius:8px;font-size:14px}.admin-big-number{font-size:36px;margin:20px 0}.admin-big-number small{font-size:11px;color:#80727b;display:block;margin-top:7px}.admin-table-wrap{overflow-x:auto}.admin-app table{width:100%;border-collapse:collapse;text-align:left;font-size:12px;line-height:1.65}.admin-app th{font-size:11px;color:#8b7c85;font-weight:500;background:#f8f5ef;padding:12px}.admin-app td{padding:15px 12px;border-bottom:1px solid #F0ECE4;vertical-align:middle;max-width:260px;overflow-wrap:anywhere}.admin-app td small{display:block;color:#8b7d85;font-size:10px;margin-top:4px}.admin-app td strong{font-weight:600}.admin-app td code{font-size:10px;white-space:normal}.admin-cohort td{min-width:120px}.admin-revenue{background:#fcf6eb}.admin-revenue>svg{color:#b2966c;margin:15px 0 5px}.admin-revenue h2{font-size:22px}.admin-revenue p{font-size:12px;line-height:1.9;color:#827265}.admin-empty{text-align:center;color:#968a90;padding:32px 12px;font-size:12px}.admin-empty svg{margin:auto;color:#bca9b2}.admin-pagination{display:flex;align-items:center;justify-content:flex-end;gap:8px;font-size:12px;color:#80717b}.admin-pagination>span{margin-right:14px}.admin-search{display:flex;gap:10px;margin:0 0 20px}.admin-search label{display:flex;align-items:center;gap:8px;flex:1;background:#fffdf9;padding:0 12px;border:1px solid #E6E0D8;border-radius:12px}.admin-search input{border:0;background:transparent;min-height:44px;outline:none;width:100%;color:#4b4249;font-size:13px}.admin-search .button{min-height:44px;font-size:12px}.admin-pill{display:inline-block;font-size:10px;padding:3px 8px;background:#f4e9e8;border-radius:12px;color:#875d66}.admin-pill.good{color:#426e5f;background:#e3f0e8}.admin-date-form{display:flex;gap:12px;align-items:end;margin-bottom:20px}.admin-date-form label{display:grid;gap:6px;font-size:12px;color:#7e6c77}.admin-date-form input{min-height:44px;border:1px solid #E2DCD2;border-radius:10px;padding:8px;background:#fffdf9}.admin-medium-number{font-size:21px!important;letter-spacing:0!important}.admin-loading{padding:80px 20px;display:flex;justify-content:center;gap:12px;color:#8b7786;font-size:14px}.admin-login{max-width:620px;margin:auto;padding:45px 24px 70px}.admin-login>section{margin-top:45px;padding:40px;background:#fffefb;border:1px solid #E8E0D5;border-radius:24px;box-shadow:0 16px 70px #69485a08}.admin-login h1{font-size:32px;line-height:1.5;margin:18px 0}.admin-login>section>p{font-size:13px;line-height:1.9;color:#8a737f}.admin-login form{margin-top:26px}.admin-login .field>span{font-size:13px}.admin-login .form-actions{margin-top:22px}.admin-login-note{display:flex;gap:10px;color:#7c7276;font-size:11px;line-height:1.9;padding:18px;background:#f8f2e7;border-radius:12px;margin:24px 0}.admin-login-note svg{flex-shrink:0}.admin-login-note code{overflow-wrap:anywhere}.admin-login>section>a{font-size:12px;color:#90586e}.admin-login small{font-size:11px;color:#8b7d85;font-weight:400}.admin-modal-backdrop{position:fixed;inset:0;background:#36273555;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}.admin-confirm{position:relative;background:#fffcf7;border-radius:22px;padding:30px;width:530px;max-width:100%;max-height:90vh;overflow:auto}.admin-confirm h2{font-size:20px;padding-right:35px;margin:12px 0}.admin-confirm p{color:#82717a;font-size:13px;line-height:1.9}.admin-confirm .close{position:absolute;right:15px;top:15px}.admin-check{display:flex;align-items:center;gap:8px;line-height:1.7;font-size:12px;margin-top:15px}.admin-check input{width:18px;height:18px;accent-color:#BD6B87}.auth-link-page{min-height:100vh;padding:42px 20px;background:#fff7ed}.auth-brand{display:flex;align-items:center;justify-content:center;gap:10px;font-weight:700;font-size:20px;text-decoration:none;color:#63404f}.auth-link-card{max-width:510px;margin:36px auto;padding:32px;background:#fff;border:1px solid #F1DFD4;border-radius:24px}.auth-link-card h1{font-size:25px;margin:18px 0}.auth-link-card .muted{font-size:13px;line-height:1.9}.email-binding{border-top:1px solid #EEDFD8;padding-top:20px;margin-top:22px}.email-binding h3{font-size:16px;display:flex;align-items:center;gap:8px}.email-binding .chip{margin-left:8px}.email-binding>p{overflow-wrap:anywhere;font-size:13px}.email-binding .field span{font-size:13px}@media(max-width:1100px){.admin-sidebar{width:195px}.admin-main{margin-left:195px;padding:0 22px 32px}.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-stage-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-grid{grid-template-columns:1fr}.admin-insight h2{font-size:23px}}@media(max-width:720px){.admin-sidebar{position:static;width:100%;padding:18px 16px 10px;border-right:0;border-bottom:1px solid #E7E2D8}.admin-logo{padding:0 0 15px}.admin-sidebar-label,.admin-sidebar-bottom{display:none}.admin-sidebar nav{display:flex;overflow-x:auto;gap:5px}.admin-sidebar nav button{white-space:nowrap;font-size:12px;padding:9px 10px;gap:7px;flex-shrink:0}.admin-sidebar nav small{display:none}.admin-main{margin:0;padding:0 16px 28px}.admin-header{min-height:88px}.admin-header h1{font-size:22px}.admin-toolbar{align-items:flex-start;font-size:10px}.admin-toolbar>span{max-width:130px;line-height:1.8}.admin-metrics{gap:10px}.admin-metric{padding:15px}.admin-metric>strong{font-size:26px}.admin-panel{padding:18px}.admin-insight{padding:21px}.admin-insight h2{font-size:20px}.admin-insight-art{display:none}.admin-stage-strip{grid-template-columns:1fr 1fr}.admin-date-form,.admin-search{flex-wrap:wrap}.admin-search label{min-width:100%}.admin-search select{flex:1}.admin-login{padding:28px 18px}.admin-login>section{padding:25px;margin-top:28px}.admin-login h1{font-size:28px}.auth-link-page{padding:28px 16px}.auth-link-card{padding:24px 20px}.admin-main table{min-width:580px}.admin-main td{max-width:220px}.admin-facts dd{font-size:16px}}.profile-preview>div{min-width:0}.profile-preview p{overflow-wrap:anywhere}.admin-account-actions{display:flex;gap:12px;white-space:nowrap}.admin-account-actions button{min-height:44px}.admin-logo>span{overflow:hidden;padding:0;background:#fff7ed}.admin-logo>span img{width:100%;height:100%;object-fit:cover}:root{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;color:#3a2535;background:#fffaf3;font-synthesis:none;font-weight:400;--pink:#ff5c8a;--orange:#ff9854;--yellow:#ffd447;--mint:#62d8b5;--cream:#fff7ed;--cocoa:#3a2535;--muted:#826b73;--border:#eaded6;--shadow:0 5px 20px #78492b06}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{cursor:not-allowed;opacity:.58}button{border:0;background:none}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--cocoa);outline-offset:3px}button:not(:disabled):active{transform:translateY(1px)}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:650}h1{font-size:34px;letter-spacing:-1.2px;line-height:1.5}h2{font-size:22px;letter-spacing:-.6px}h3{font-size:17px;line-height:1.5}p{line-height:1.8}svg{flex-shrink:0}small{font-size:12px}img{max-width:100%;object-fit:cover}input,textarea,select{width:100%;border:1px solid #dfd2c9;border-radius:13px;background:#fffdf8;color:var(--cocoa);padding:13px 14px;min-height:46px;line-height:1.5}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#ad9799}input[type=checkbox]{width:18px;min-height:18px;accent-color:var(--pink);padding:0;flex-shrink:0}input[type=file]{position:absolute;width:1px;height:1px;opacity:0;padding:0;min-height:0}input[type=date],input[type=time]{min-width:0}select{appearance:auto}input:disabled,select:disabled{background:#f4eee8;color:#76646c}dialog::backdrop{background:#392f365b;backdrop-filter:blur(5px)}.app-shell{min-height:100vh}.app-header{height:98px;max-width:1280px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 42px;gap:28px}.brand{display:flex;align-items:center;gap:12px;text-align:left;white-space:nowrap}.brand img{width:43px;height:43px}.brand>span{font-size:21px;font-weight:750;letter-spacing:.6px}.brand small{display:block;font-size:10px;font-weight:500;color:#997e83;letter-spacing:1.2px;margin-top:3px}.desktop-nav{display:flex;gap:8px;padding:6px;background:#fff2e6;border-radius:99px;border:1px solid #f6e9db}.desktop-nav button{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 19px;min-height:44px;font-size:14px;border-radius:99px;color:#927679;position:relative}.desktop-nav button.active{background:var(--pink);color:var(--cocoa);box-shadow:0 4px 8px #ed799827}.desktop-nav b{font-size:10px;background:#fff7ed;border-radius:8px;padding:1px 5px}.header-right{display:flex;align-items:center;gap:17px}.local-label{color:#957d81;font-size:11px;letter-spacing:1px;white-space:nowrap}.header-profile{padding:0;display:flex}.avatar{border-radius:50%;display:inline-flex;overflow:hidden;border:2px solid #fff7ed;background:#ffe4e8;flex-shrink:0}.avatar.orange{background:#fdb}.avatar.mint{background:#def2d9}.avatar.yellow{background:#fff1b9}.avatar svg{width:100%;height:100%;margin-top:5px}.page{max-width:1196px;margin:0 auto;padding:36px 42px 40px;animation:page-in .22s ease}.home-page{padding-top:25px}.page-heading,.home-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:30px}.page-heading p,.home-heading p{color:var(--muted);font-size:14px;margin-top:7px}.page-heading .eyebrow{display:block;margin-bottom:9px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#9d7b73}.greeting{display:flex;align-items:center;gap:7px;font-size:12px;color:#997866;margin-bottom:12px}.greeting svg{color:#df9451}.home-heading h1{font-size:36px;letter-spacing:-1.3px}.pink-heart{color:var(--pink);display:inline-block;font-size:28px;margin-left:10px;transform:rotate(12deg)}.mobile-break{display:none}.today-badge{width:76px;min-width:76px;padding:8px 0;text-align:center;background:#fff1d9;border:1px solid #f1dabc;border-radius:16px;transform:rotate(5deg);box-shadow:3px 4px #f2e1ca}.today-badge span{font-size:10px;letter-spacing:2px;color:#977751}.today-badge strong{display:block;font-size:29px;line-height:1.25}.today-badge small{font-size:10px;color:#977751}.home-grid{display:grid;grid-template-columns:minmax(0,1.72fr) minmax(285px,1fr);gap:24px}.home-house-card{border:1px solid #ecd4be;background:#fff1dc;border-radius:27px;overflow:hidden;box-shadow:var(--shadow);position:relative}.house-card-top{display:flex;align-items:center;justify-content:space-between;padding:25px 28px 0;position:relative;z-index:2}.house-card-top h2{font-size:19px;margin-top:7px}.members-stack{display:flex;align-items:center}.members-stack .avatar+.avatar{margin-left:-10px}.members-stack button{height:35px;width:35px;display:grid;place-items:center;border:1px dashed #dba897;border-radius:50%;background:#fff7ed;margin-left:5px}.house-scene{position:relative;max-width:625px;margin:-5px auto -4px}.house-scene>svg{width:100%;height:auto;display:block}.room-label{position:absolute;font-size:10px;line-height:1.3;border-radius:30px;background:#fff9eeed;box-shadow:0 3px 12px #9d623a12;border:1px solid #dfbf9c;padding:8px 13px;color:#79593d;display:flex;align-items:center;gap:10px;min-height:35px}.room-label:hover{background:#fff;box-shadow:0 4px 14px #a8642c22}.room-label span{font-size:14px}.kitchen-label{top:39%;left:53%}.memo-label{top:52%;right:2%}.table-label{top:81%;left:52%}.scene-caption{position:absolute;font-size:8px;letter-spacing:2px;bottom:3%;left:6%;color:#b18a6b;transform:rotate(-16deg)}.house-status{display:flex;align-items:center;gap:7px;padding:14px 23px;border-top:1px solid #ebd4ba;background:#fff6e8;font-size:11px;color:#896b60;min-height:51px}.house-status>span:nth-child(2){flex:1}.house-status button{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#fff}.status-dot{height:7px;width:7px;border-radius:50%;background:#e5b764;flex-shrink:0}.status-dot.green{background:#4bab84;box-shadow:0 0 0 3px #66c49816}.home-aside{display:flex;flex-direction:column;gap:17px}.tonight-card{background:#ffa36e;border:1px solid #f49b65;border-radius:25px;padding:23px;position:relative;overflow:hidden;flex:1;min-height:230px}.tonight-card h2{font-size:26px;line-height:1.5;white-space:pre-line;margin-top:17px;position:relative;z-index:1;max-width:90%}.tonight-card p{font-size:12px;color:#6c473d;white-space:pre-line;margin-top:8px;max-width:72%;position:relative;z-index:1}.tonight-card .button{margin-top:20px;position:relative;z-index:2;font-size:12px;min-height:40px;padding:10px 14px}.mini-spark{font-size:27px;color:#fff8e5;line-height:1}.plate-doodle{position:absolute;right:-10px;bottom:7px;width:108px;height:110px;border-radius:50%;transform:rotate(-13deg);background:#ffe3bdbb;display:grid;place-items:center;outline:2px solid #fff0d744;outline-offset:6px}.plate-doodle span{font-size:60px;filter:drop-shadow(0 3px 0 #bd703022)}.plate-doodle i{font-size:17px;color:#d56862;position:absolute;right:13px;top:-8px}.memo-card,.pet-shortcut{display:flex;align-items:center;gap:14px;background:#ffe783;border:1px solid #f0d273;border-radius:21px;padding:18px;text-align:left;width:100%;min-height:95px}.memo-card>div:nth-child(2),.pet-shortcut>div{flex:1}.memo-card h3,.pet-shortcut h3{font-size:15px}.memo-card p,.pet-shortcut p{font-size:11px;color:#897052;margin-top:3px}.memo-icon{height:49px;width:46px;background:#fff7d6;border:1px solid #e2c666;border-radius:12px;display:grid;place-items:center;transform:rotate(-6deg)}.pet-shortcut{background:#e3f2de;border-color:#c8dfc3;min-height:84px}.pet-icon{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#cae7b8;color:#5e8052}.pet-shortcut p{color:#77866b}.welcome-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px;border:1px dashed #e6cebc;padding:17px 23px;border-radius:18px;background:#fff7ed}.welcome-strip>div{display:flex;align-items:center;gap:10px;color:#99736d;font-size:12px}.welcome-strip>div>svg{color:#da7991}.welcome-strip .button{font-size:12px;white-space:nowrap}.section-heading{display:flex;align-items:center;justify-content:space-between;margin:37px 0 21px}.section-heading h2{margin-top:7px}.section-heading p{font-size:12px;color:var(--muted);margin-top:7px}.small-flower{display:inline-block;color:var(--pink);font-size:26px;margin-left:9px;vertical-align:middle}.section-heading .text-button{font-size:12px}.recipe-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px}.recipe-card{background:#fff;border:1px solid #ecdccf;border-radius:22px;overflow:hidden;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s}.recipe-card:hover{transform:translateY(-3px);box-shadow:0 7px 20px #8052380c}.recipe-cover{width:100%;background:#ffe4c7;position:relative;display:block;overflow:hidden;padding:0}.tone-1 .recipe-cover{background:#e4eed0}.tone-2 .recipe-cover{background:#ffdfda}.tone-3 .recipe-cover{background:#f7edc8}.dish-art{width:100%;height:100%;display:block;max-height:210px}.recipe-category{position:absolute;left:13px;top:13px;border-radius:12px;background:#fff8eaef;font-size:10px;padding:4px 10px;color:#876451}.draft-sticker{position:absolute;right:13px;top:13px;background:#ffd447;padding:4px 9px;font-size:10px;border-radius:9px}.recipe-card-body{padding:17px 17px 13px}.recipe-card h3{font-size:16px}.recipe-card-body>p{font-size:11px;color:#9a8280;margin-top:7px}.recipe-card-body>p span{margin:0 8px}.recipe-card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:15px;font-size:10px;color:#a08580}.round-add{width:32px;height:32px;display:grid;place-items:center;border:1px solid #e8c9c5;border-radius:50%;background:#fff1ef;color:#a56d75}.add-recipe-tile{border:1.5px dashed #e1cabb;border-radius:22px;min-height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:#fff7ed}.add-recipe-tile>span{width:49px;height:49px;border-radius:50%;display:grid;place-items:center;background:#ffe2dc;color:#c88880}.add-recipe-tile strong{font-size:13px;font-weight:600}.add-recipe-tile small{font-size:10px;color:#a3897b}.first-recipe{border:1px solid #e7dbcd;border-radius:23px;background:#fffdf7;display:flex;align-items:center;gap:25px;padding:20px 30px;position:relative;overflow:hidden;min-height:192px}.first-recipe-art{width:190px;background:#f2edcf;border-radius:100px;flex-shrink:0;transform:rotate(-6deg)}.first-recipe h3{margin:8px 0 5px;font-size:20px}.first-recipe p{font-size:12px;color:var(--muted);margin-bottom:15px}.first-recipe .button{font-size:12px;min-height:39px}.first-recipe-flower{position:absolute;right:40px;bottom:30px;color:#ffcec8;font-size:67px;transform:rotate(12deg)}.home-journal{margin:27px 0 0;border-radius:22px;border:1px solid #e8dcd2;background:#fcf4ea;padding:24px 27px;display:flex;justify-content:space-between;align-items:center;gap:20px}.home-journal h2{font-size:19px;margin-top:6px}.home-journal p{font-size:12px;color:var(--muted);margin-top:7px}.button{display:inline-flex;gap:10px;align-items:center;justify-content:center;min-height:46px;border-radius:15px;font-size:14px;font-weight:600;padding:12px 20px;border:1px solid transparent;transition:background .16s,transform .12s;line-height:1.5}.button.primary{background:var(--pink);color:var(--cocoa);border-color:#e94c79}.button.primary:hover{background:#ff749a}.button.secondary{background:#fffcf7;border-color:#d6bfb3}.button.yellow{background:var(--yellow);border-color:#e1bd44}.button.cocoa{background:var(--cocoa);color:#fff7ed;border-color:var(--cocoa)}.button.small{min-height:36px;font-size:12px;padding:9px 14px;border-radius:13px}.button.full{width:100%}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:6px 0;font-size:13px;color:#775c63;text-decoration:none}.text-button:hover{text-decoration:underline}.text-button.danger{color:#a52a42}.subtle{margin-top:17px;font-size:12px}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;border-radius:12px;color:#7f6465}.icon-button:hover{background:#f4e7dd}.chip{display:inline-flex;align-items:center;gap:5px;font-size:10px;line-height:1.4;padding:5px 10px;border-radius:99px;background:#fff0e2;white-space:nowrap;font-weight:500}.chip.cream{background:#fff7e8}.chip.yellow{background:#ffe080}.chip.mint{background:#cff0d8}.title-dot{font-size:10px;color:var(--pink);margin-left:9px;vertical-align:middle}.heading-icon{height:62px;width:62px;border-radius:20px;display:grid;place-items:center;transform:rotate(7deg);background:#ffe5c7;color:#a9673c}.heading-icon.pink{background:#ffdae1;color:#ae5267}.menu-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:34px}.search-box{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--border);border-radius:16px;padding-left:15px;color:#9a7c7d;flex:1}.search-box input{border:0;background:none;font-size:13px;min-height:47px}.search-box input:focus-visible{outline-offset:-5px}.segmented{display:flex;align-items:center;border:1px solid var(--border);background:#f5ece2;padding:4px;border-radius:13px;gap:3px}.segmented button{min-height:38px;border-radius:10px;flex:1;padding:8px 14px;font-size:12px;white-space:nowrap;display:flex;gap:7px;align-items:center;justify-content:center;color:#8e7278}.segmented button.active{background:#fffdf8;box-shadow:0 2px 4px #8963430c;color:var(--cocoa);font-weight:600}.filter-chips{display:flex;gap:9px;flex-wrap:wrap;margin:22px 0}.filter-chips button{padding:10px 18px;border-radius:99px;min-height:39px;background:#fff6ed;border:1px solid #f1e5d9;font-size:12px;color:#886e70}.filter-chips button.active{background:var(--cocoa);color:#fff7ed;border-color:var(--cocoa)}.little-note{display:flex;gap:8px;align-items:flex-start;justify-content:center;font-size:11px;color:#9a8079;margin:33px auto 5px;line-height:1.8}.little-note svg{margin-top:1px;color:#bb9294}.empty-state{text-align:center;padding:52px 24px}.empty-art{width:82px;height:75px;border-radius:28px;margin:0 auto 18px;background:#f3ebd3;color:#a1af78;display:grid;place-items:center;position:relative;transform:rotate(-6deg)}.empty-spark{position:absolute;right:-10px;top:-5px;color:#e7b879;font-size:23px}.empty-state h3{font-size:18px;line-height:1.6}.empty-state p{font-size:13px;color:var(--muted);margin:10px auto 20px;max-width:370px}.empty-state .button{font-size:12px}.site-footer{display:flex;align-items:center;justify-content:center;gap:8px;color:#b39a90;margin:20px auto 0;padding:22px 25px 34px;font-size:10px;letter-spacing:2px}.site-footer svg{color:#dca3a3}.site-footer small{font-size:9px;color:#bbaa9d;letter-spacing:1px;margin-left:8px}.mobile-nav{display:none}.connection-banner,.archive-banner{max-width:1112px;margin:8px auto;background:#ffe7b5;padding:11px 20px;border-radius:12px;display:flex;align-items:center;gap:9px;font-size:12px}.connection-banner button,.archive-banner button{margin-left:auto;font-size:12px;font-weight:600;text-decoration:underline;min-height:30px;display:flex;align-items:center;gap:6px}.archive-banner{background:#dcecdc}.global-error{max-width:1112px;margin:auto}.toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%);z-index:1000;background:var(--cocoa);color:#fff7ed;box-shadow:0 8px 24px #35212b33;border-radius:16px;padding:14px 22px;display:flex;align-items:center;gap:10px;font-size:13px;max-width:calc(100vw - 35px);width:max-content}.notice{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.8;background:#fff0d1;border:1px solid #e8d5af;border-radius:14px;padding:14px 16px;margin:15px 0}.notice>svg{margin-top:3px}.notice>span{flex:1}.notice.error{background:#fff0ef;border-color:#ecc6cc;color:#a52a42}.notice.mint{background:#e9f4e4;border-color:#cfe0c6;color:#4d6d51}.notice.cream{background:#fff8ee;border-color:#e5d7c7;color:#826b67}.notice.column{display:flex;flex-direction:column;gap:12px}.notice h3{font-size:15px}.notice .button{font-size:12px}.muted{color:var(--muted);font-size:13px}.plain-title{text-align:left;padding:0;font:inherit;font-weight:inherit;line-height:inherit;overflow-wrap:anywhere}.plain-title:hover{color:#b34f6d}.section-mini{display:flex;align-items:center;justify-content:space-between;gap:10px}.section-mini h3{font-size:16px}.section-mini h2{display:flex;align-items:center;gap:8px}.modal{border:1px solid #ecd8c9;border-radius:26px;padding:0;background:#fffcf7;width:560px;max-width:calc(100vw - 32px);max-height:90dvh;color:var(--cocoa);box-shadow:0 25px 90px #3118202e;overflow:auto}.modal.wide{width:700px}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:25px 27px 20px;border-bottom:1px solid #efdfd2;position:sticky;top:0;background:#fffcf7f5;backdrop-filter:blur(5px);z-index:5}.modal-header h2{font-size:23px;margin-top:8px;line-height:1.4}.modal-header p{font-size:12px;color:var(--muted);margin-top:8px}.modal-header>.icon-button{margin-top:-5px;margin-right:-8px}.modal-body{padding:24px 27px 28px}.modal .segmented{margin-bottom:24px}.field{display:flex;flex-direction:column;gap:9px;font-size:13px;margin-bottom:19px;min-width:0}.field>span:first-child{font-weight:600}.field small,.form-hint{font-size:11px;color:#91777a;line-height:1.7;font-weight:400}.form-hint{margin:7px 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid #ecdfd4}.form-actions .button{flex:1}.form-section+.form-section{margin-top:30px;border-top:1px solid #e5d6ca;padding-top:25px}.privacy-note{font-size:11px;color:#8b747a;display:flex;align-items:center;gap:7px;margin-top:22px}.ingredients-editor{margin:10px 0 22px;display:flex;flex-direction:column;gap:11px}.ingredient-inputs{display:grid;grid-template-columns:2fr 1fr 1fr 38px;gap:8px}.ingredient-inputs input{font-size:12px;padding:10px;min-width:0}.ingredient-inputs .icon-button{width:38px;min-width:38px}.evidence{color:#95776e;display:block;margin:5px 0 0}.check-label{display:flex;gap:9px;align-items:center;font-size:12px;line-height:1.7;margin:8px 0;min-height:32px}.source-details{font-size:12px;color:#8c716d;border:1px solid #eaded1;border-radius:13px;padding:13px}.source-details summary{cursor:pointer;min-height:23px}.source-details .field{margin-top:15px;margin-bottom:5px}.upload-button{display:inline-flex;align-items:center;gap:8px;border:1px dashed #d8b9a4;border-radius:12px;padding:13px;cursor:pointer;background:#fff6e9;font-size:12px}.upload-preview{display:flex;align-items:center;gap:20px;margin:15px 0}.upload-preview img{width:100px;height:100px;border-radius:12px;object-fit:contain}.recipe-detail-art{height:210px;background:#ffe2c5;border-radius:20px;position:relative;display:flex;align-items:center;justify-content:center}.recipe-detail-art .dish-art{width:320px;max-width:100%}.recipe-detail-art .chip{position:absolute;top:15px;left:15px}.recipe-meta{display:flex;gap:20px;margin:20px 0 28px;font-size:12px;color:#947278}.recipe-meta span{display:flex;gap:6px;align-items:center}.ingredient-list{border:1px solid #efdfcf;background:#fffbf2;border-radius:15px;padding:5px 15px;margin:14px 0 28px}.ingredient-list>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px dashed #e5d7c9;font-size:13px}.ingredient-list>div:last-child{border:0}.ingredient-list b{font-weight:500;color:#897368}.steps-list{padding:0;margin:18px 0 24px;list-style:none}.steps-list li{display:flex;gap:15px;margin:18px 0;align-items:flex-start}.steps-list li>span{width:29px;height:29px;background:#ffe3cf;display:grid;place-items:center;border-radius:10px;flex-shrink:0;font-size:11px;font-weight:700;color:#9b6751}.steps-list p{font-size:14px}.source-buttons{display:flex;align-items:center;gap:16px}.meal-page{max-width:1000px}.meal-controls{display:flex;align-items:center;gap:18px;margin-bottom:25px}.meal-controls>input{width:180px;background:#fff;font-size:13px}.meal-sheet{background:#fff;border:1px solid var(--border);border-radius:24px;padding:28px;box-shadow:var(--shadow)}.meal-sheet>.section-mini{margin-bottom:24px}.meal-people{display:grid;grid-template-columns:140px 1fr;gap:24px}.stepper{display:flex;align-items:center;justify-content:space-between;border:1px solid #dfd2c9;border-radius:13px;min-height:48px;background:#fffdf8}.stepper button{width:44px;height:44px;font-size:20px}.stepper strong{font-size:15px}.meal-dishes{margin:10px 0 20px}.meal-dish{display:flex;align-items:center;gap:17px;padding:15px 0;border-bottom:1px solid #f0e5dc}.small-dish-art{width:85px;height:65px;background:#fff0dd;border-radius:13px;padding:0;overflow:hidden;flex-shrink:0}.meal-dish>div{flex:1}.meal-dish>div>button{font-size:15px;font-weight:600}.meal-dish>div>span{display:block;font-size:11px;color:#a18680;margin-top:8px}.add-dish-actions{display:flex;gap:14px}.add-dish-actions .button{flex:1}.meal-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid #e9dbce;margin-top:26px;padding-top:23px}.cook-hint{display:flex;align-items:center;gap:8px;font-size:11px;color:#96767c}.done-meal{display:flex;justify-content:space-between;align-items:center;gap:20px;width:100%}.done-meal>span{display:flex;align-items:center;gap:10px;color:#527357}.random-result{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}.random-card{border:1px solid #ecd8c6;border-radius:18px;position:relative;overflow:hidden;background:#fff4df}.random-card.locked{border:2px solid var(--pink)}.random-card strong{display:block;padding:0 12px 15px;font-size:13px;text-align:center}.lock-button{position:absolute;right:5px;top:5px;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#fff7ed}.locked .lock-button{background:#ffc4d3}.purchase-row{padding:18px 0;border-bottom:1px dashed #dbc7b8}.purchase-row strong{font-size:15px}.purchase-controls{display:flex;align-items:center;gap:14px;margin-top:12px;flex-wrap:wrap}.purchase-controls input[type=number]{max-width:130px;font-size:12px}.purchase-controls .check-label{font-size:11px}.warning-text{font-size:12px;color:#9c6346}.shopping-page{max-width:1040px}.shopping-summary{display:flex;align-items:center;gap:20px;background:#ffedaa;border:1px solid #e5d28d;border-radius:22px;padding:24px;position:relative;overflow:hidden}.shopping-summary-icon{width:65px;height:65px;border-radius:18px;background:#fff5ce;display:grid;place-items:center;transform:rotate(-7deg);border:1px solid #e7d794}.shopping-summary strong{font-size:33px}.shopping-summary strong span{font-size:14px;font-weight:500}.shopping-summary p{font-size:11px;color:#937657;margin-top:3px}.shopping-summary-sticker{margin-left:auto;color:#a98851;font-size:11px;letter-spacing:3px;font-weight:750;line-height:1.5;transform:rotate(8deg);opacity:.7}.shopping-list{background:#fff;border:1px solid var(--border);border-radius:22px;overflow:hidden;padding:0 22px}.shopping-row{display:flex;gap:15px;align-items:center;min-height:85px;border-bottom:1px solid #f0e7dd;padding:15px 0}.shopping-row:last-child{border:0}.checkbox{width:44px;height:44px;min-width:44px;border:1.5px solid #d6c6ba;border-radius:13px;display:grid;place-items:center;background:#fffcf7}.checkbox.on{background:#b9eacb;border-color:#88c8a1}.shopping-description{display:flex;flex-direction:column;gap:6px;flex:1;align-items:flex-start;text-align:left;min-width:0}.shopping-description strong{font-size:15px;line-height:1.5;overflow-wrap:anywhere}.shopping-description span{font-size:11px;line-height:1.5;color:#9b8183;overflow-wrap:anywhere}.shopping-row.checked .shopping-description strong{text-decoration:line-through;color:#7d7b71}.shopping-quantity{font-size:15px;font-weight:600;max-width:28%;overflow-wrap:anywhere}.shopping-quantity small{color:#9b8382;font-weight:400}.sync-label{color:#9f6f24;font-size:10px}.delete-item{color:#b09899}.completed-list{background:#f7f3e8;border:1px solid #e3dccd;border-radius:20px;margin-top:20px;padding:0 22px}.completed-toggle{width:100%;display:flex;align-items:center;gap:10px;padding:19px 0;font-size:13px;color:#7e7968}.completed-toggle>span{margin-left:auto;font-size:11px}.quantity-input{display:flex;gap:8px}.quantity-input input:first-child{width:60%}.quantity-input input:last-child{width:40%}.timeline-tabs{max-width:300px;margin-bottom:20px}.diary-page{max-width:940px}.timeline{margin:26px 0 0 12px;padding-left:29px;border-left:1px solid #e4cab9}.timeline-event{background:#fff;border:1px solid #e6d9cc;border-radius:20px;padding:20px 23px;margin-bottom:20px;position:relative}.timeline-dot{position:absolute;left:-36px;top:29px;width:12px;height:12px;border-radius:50%;border:3px solid #fffaf3;background:#efb08d;box-shadow:0 0 0 1px #e5bc9e}.event-ai .timeline-dot{background:var(--pink)}.event-real .timeline-dot{background:var(--mint)}.event-top{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:13px}.event-top time{font-size:11px;color:#a38b81}.timeline-event h3{font-size:16px}.timeline-event p{font-size:13px;color:#897177;margin-top:10px;white-space:pre-line}.event-ai{background:#fff7f1}.event-real .chip{background:#e0f2de}.event-system .chip{background:#ffe5b8}.profile-preview{display:flex;align-items:center;gap:20px;margin-bottom:25px}.profile-preview h3,.profile-preview h2{font-size:21px}.profile-preview p{font-size:12px;color:var(--muted);margin-top:5px}.consent-box{display:flex;align-items:flex-start;gap:12px;background:#fff2dc;border:1px solid #e8d2ad;border-radius:16px;padding:17px;font-size:13px;margin:20px 0}.consent-box input{margin-top:4px}.consent-box strong{font-size:13px;display:block}.consent-box small{display:block;font-size:11px;color:#8a7265;line-height:1.8;margin-top:7px}.invitation-card{border-radius:20px;background:#fff0e8;border:1px solid #edcdbd;padding:24px;text-align:center}.invitation-card>h3{font-size:20px;margin-top:12px}.invitation-card>p{font-size:12px;color:#986e70;margin:9px 0 22px}.invite-hearts{display:flex;gap:2px;color:var(--pink);align-items:center;justify-content:center}.invite-hearts svg{fill:#ffbbcf}.invite-hearts svg:last-child{transform:rotate(18deg);margin-top:15px}.invitation-card .check-label{text-align:left;margin:16px 0;font-size:11px}.generated-invite{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px;align-items:center}.generated-invite input{flex:1;width:0;font-size:11px}.generated-invite small{font-size:10px;color:#9b7370;flex-basis:100%;text-align:left}.invitation-card+.form-section{margin-top:25px}.pet-upload{display:flex;align-items:center;justify-content:center;gap:15px;min-height:115px;background:#e8f1dc;border:1px dashed #b8caa5;border-radius:18px;cursor:pointer;color:#789164;margin-bottom:25px;font-size:13px}.pet-upload img{width:85px;height:85px;border-radius:15px}.pet-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.pet-card{background:#fff;border:1px solid #dddfc9;border-radius:24px;overflow:hidden}.pet-photo{height:190px;background:#e5f1d4;display:grid;place-items:center;color:#a5c38d}.pet-photo img{width:100%;height:100%;object-fit:cover}.pet-card>div:last-child{padding:25px}.pet-card h2{margin:10px 0}.pet-card p{font-size:13px;color:var(--muted);margin-bottom:14px}.inline-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.settings-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:24px;align-items:start}.settings-card{border:1px solid var(--border);border-radius:24px;background:#fff;padding:27px}.settings-row{width:100%;display:flex;justify-content:space-between;align-items:center;padding:18px 0;min-height:60px;border-bottom:1px solid #f0e7dd;font-size:13px;text-align:left}.settings-row small{display:block;font-size:11px;color:#998181;margin-top:6px}.family-members{display:flex;gap:16px;margin:22px 0}.family-members>div{display:flex;align-items:center;gap:7px;font-size:11px;color:#927276}.rename-form{border-top:1px solid #eee2d6;padding-top:20px}.rename-form .button{min-height:39px;font-size:12px}.settings-card>.muted{margin:18px 0}.model-status{display:flex;align-items:flex-start;gap:10px;background:#fff8ee;border:1px solid #e9dbc9;padding:16px;border-radius:15px}.model-status>.status-dot{margin-top:6px}.model-status strong{font-size:13px}.model-status p{font-size:11px;color:#9b8077;margin-top:4px;line-height:1.8}.simulation-stats{display:grid;grid-template-columns:1fr 1fr;margin:23px 0;gap:15px}.simulation-stats strong{display:block;font-size:28px}.simulation-stats strong small{font-size:14px;color:#a38d85;font-weight:400}.simulation-stats span{display:block;font-size:10px;color:#a38d85;margin-top:7px}.settings-card>.inline-actions{justify-content:space-between;gap:12px;margin-top:14px}.settings-card .inline-actions .text-button{font-size:11px}.archives{margin-top:25px}.pick-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.spin{animation:spin 1s linear infinite}.is-living .little-person{animation:breathe 4s ease-in-out infinite}.is-living .steam{animation:steam 3s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes breathe{0%,to{opacity:1}50%{opacity:.94}}@keyframes steam{0%,to{opacity:.3}50%{opacity:.9}}@keyframes page-in{0%{opacity:0;translate:0 5px}to{opacity:1;translate:0 0}}@media(min-width:1440px){.page{padding-top:45px}.home-page{padding-top:30px}.home-house-card{min-height:480px}.house-scene{max-width:640px}.home-aside{gap:19px}.tonight-card{padding:27px}.tonight-card h2{font-size:29px}.tonight-card p{font-size:13px}.tonight-card .button{margin-top:25px}.section-heading{margin-top:42px}}@media(max-width:1000px){.app-header{padding:0 26px;gap:15px}.desktop-nav button{padding:9px 14px}.local-label{display:none}.page{padding-left:26px;padding-right:26px}.home-grid{grid-template-columns:minmax(0,1.5fr) minmax(255px,1fr);gap:18px}.tonight-card{padding:20px;min-height:225px}.tonight-card h2{font-size:23px}.plate-doodle{width:85px;height:85px}.plate-doodle span{font-size:46px}.memo-card,.pet-shortcut{padding:14px;gap:10px}.memo-card h3,.pet-shortcut h3{font-size:13px}.memo-card p,.pet-shortcut p{font-size:10px}.house-card-top{padding:24px 22px 5px}.house-card-top h2{font-size:16px}.home-house-card{display:flex;flex-direction:column;justify-content:space-between}.house-scene{margin:auto 0;width:100%}.house-status{padding:12px 18px;font-size:10px}.room-label{font-size:9px;padding:7px 10px;min-height:33px}.recipe-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.home-recipes .add-recipe-tile{display:none}.first-recipe-flower{right:15px}.first-recipe-art{width:150px}.first-recipe{gap:22px}.page-heading h1,.home-heading h1{font-size:30px}.settings-card{padding:23px}.connection-banner,.archive-banner{margin:8px 26px}.pick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.app-header{height:80px;padding:0 20px}.brand img{width:36px;height:36px}.brand>span{font-size:18px;letter-spacing:.2px}.brand small{font-size:8px;letter-spacing:.8px}.desktop-nav{display:none}.header-right .button.small{font-size:11px;min-height:35px;padding:8px 11px}.header-profile .avatar{width:34px!important;height:34px!important}.page{padding:25px 20px}.home-page{padding-top:14px}.page-heading,.home-heading{margin-bottom:23px;gap:13px;align-items:flex-start}.home-heading{align-items:center}.home-heading h1{font-size:28px;line-height:1.5;letter-spacing:-.8px}.mobile-break{display:block}.home-heading p{font-size:11px;max-width:250px;line-height:1.8;margin-top:9px}.greeting{font-size:10px;margin-bottom:11px}.greeting svg{width:14px}.pink-heart{font-size:21px;margin-left:7px}.today-badge{width:61px;min-width:61px;margin-top:8px;border-radius:13px;padding:9px 0}.today-badge strong{font-size:25px}.today-badge small,.today-badge span{font-size:8px}.home-grid{grid-template-columns:1fr;gap:17px}.home-house-card{border-radius:24px;min-height:0}.house-card-top{padding:22px 21px 0}.house-card-top h2{font-size:17px;margin-top:6px}.eyebrow{font-size:8px;letter-spacing:1.5px}.house-scene{margin:-1px 0 -2px}.room-label{font-size:10px;min-height:44px;padding:8px 11px}.kitchen-label{top:33%;left:51%}.memo-label{right:0;top:53%}.table-label{top:81%;left:47%}.scene-caption{font-size:6px;left:4%;bottom:7%}.house-status{padding:10px 17px;min-height:48px;font-size:9px}.house-status>span:nth-child(2){line-height:1.6}.home-aside{display:grid;grid-template-columns:1fr 1fr;gap:13px}.tonight-card{grid-column:1/-1;min-height:200px;padding:21px 22px}.tonight-card h2{font-size:24px;white-space:normal;max-width:83%;margin-top:14px}.tonight-card p{font-size:11px;white-space:normal;margin-top:8px;max-width:80%}.tonight-card .button{margin-top:20px;min-height:42px;font-size:12px}.plate-doodle{width:104px;height:104px;right:13px;bottom:17px}.plate-doodle span{font-size:59px}.tonight-card .mini-spark{font-size:25px}.memo-card,.pet-shortcut{display:flex;flex-wrap:wrap;align-items:flex-start;padding:16px 14px;gap:13px;min-height:159px;border-radius:19px;position:relative}.memo-icon,.pet-icon{width:39px;height:39px;flex-shrink:0;border-radius:12px}.memo-icon svg,.pet-icon svg{width:22px}.memo-card>div:nth-child(2),.pet-shortcut>div{flex-basis:100%}.memo-card>svg,.pet-shortcut>svg{position:absolute;right:13px;top:24px;width:16px}.memo-card h3,.pet-shortcut h3{font-size:13px}.memo-card p,.pet-shortcut p{font-size:10px;margin-top:5px;line-height:1.7;max-width:125px}.welcome-strip{padding:15px 17px;flex-direction:column;align-items:stretch;gap:12px;margin-top:18px;border-radius:17px}.welcome-strip>div{font-size:11px;line-height:1.7}.welcome-strip .button{min-height:42px}.section-heading{margin-top:31px;margin-bottom:17px;gap:10px;align-items:flex-start}.section-heading h2{font-size:21px;margin-top:7px}.section-heading p{font-size:10px;line-height:1.8}.section-heading .text-button{font-size:10px;margin-top:18px;white-space:nowrap}.small-flower{font-size:22px;margin-left:6px}.first-recipe{padding:21px 18px;gap:12px;min-height:200px;align-items:center}.first-recipe-art{width:98px;margin-left:-24px;transform:rotate(-15deg)}.first-recipe h3{font-size:16px;line-height:1.6;margin:7px 0}.first-recipe p{font-size:10px;max-width:200px}.first-recipe .eyebrow{font-size:6px;letter-spacing:1px}.first-recipe .button{font-size:10px;padding:8px 10px;min-height:37px}.first-recipe-flower{font-size:40px;right:10px;bottom:18px;opacity:.4}.home-journal{padding:20px;align-items:flex-start;gap:12px;margin-top:18px}.home-journal h2{font-size:17px}.home-journal p{font-size:10px}.home-journal .button{font-size:10px;min-height:37px;padding:8px 10px;white-space:nowrap;margin-top:20px}.site-footer{font-size:8px;letter-spacing:1px;padding:20px 15px calc(99px + env(safe-area-inset-bottom));margin-top:5px;flex-wrap:wrap;gap:7px}.site-footer small{font-size:8px;margin-left:3px}.site-footer svg{width:11px}.mobile-nav{position:fixed;z-index:30;bottom:0;left:0;right:0;height:calc(70px + env(safe-area-inset-bottom));padding:7px 15px calc(7px + env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-around;border-top:1px solid #eadbd0;background:#fffaf6f5;backdrop-filter:blur(10px);box-shadow:0 -4px 20px #8c614308}.mobile-nav button{font-size:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#9d8487;min-width:66px;min-height:54px;border-radius:16px}.mobile-nav button>span{height:28px;min-width:49px;display:flex;align-items:center;justify-content:center;position:relative}.mobile-nav button.active>span{background:#ffdae3;border-radius:12px;color:#a83d5c}.mobile-nav button.active{color:#a83d5c;font-weight:600}.mobile-nav b{position:absolute;right:0;top:0;background:var(--pink);color:var(--cocoa);font-size:8px;border-radius:10px;padding:1px 4px}.toast{bottom:calc(84px + env(safe-area-inset-bottom));font-size:12px;padding:12px 16px;line-height:1.6}.page-heading h1{font-size:26px;letter-spacing:-.7px}.page-heading p{font-size:12px;max-width:260px}.page-heading .button{font-size:11px;padding:10px 12px;white-space:nowrap;min-height:42px}.page-heading .eyebrow{margin-bottom:11px}.heading-icon{width:46px;height:46px;border-radius:16px;margin-top:10px}.heading-icon svg{width:23px}.title-dot{font-size:8px;margin-left:7px}.menu-toolbar{flex-direction:column;align-items:stretch;gap:15px;margin-top:28px}.search-box{width:100%}.segmented button{font-size:11px;padding:8px 11px;min-height:37px}.filter-chips{gap:7px;margin:18px 0}.filter-chips button{font-size:10px;padding:9px 13px;min-height:37px}.recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.recipe-card{border-radius:18px}.recipe-card-body{padding:13px 12px 11px}.recipe-card h3{font-size:14px}.recipe-card-body>p{font-size:10px;margin-top:5px}.recipe-card-body>p span{margin:0 5px}.recipe-card-footer{font-size:9px;margin-top:11px}.recipe-category{font-size:8px;padding:4px 8px;left:9px;top:9px}.round-add{width:30px;height:30px}.recipe-cover{min-height:108px}.dish-art{max-height:180px}.recipe-card .dish-art{min-height:115px}.home-recipes .recipe-card:nth-child(3){display:none}.little-note{font-size:10px;justify-content:flex-start;margin-top:25px}.little-note svg{width:15px}.empty-state{padding:38px 13px}.empty-state h3{font-size:16px}.empty-state p{font-size:12px}.empty-art{width:72px;height:65px}.connection-banner,.archive-banner{margin:5px 20px;border-radius:11px;font-size:11px;padding:11px 13px;line-height:1.7}.global-error{margin:0 20px}.modal{max-width:calc(100vw - 22px);max-height:90dvh;border-radius:22px}.modal-header{padding:21px 20px 16px}.modal-header h2{font-size:21px;margin-top:8px}.modal-header>.icon-button{margin-right:-9px;min-width:38px;width:38px;height:38px}.modal-body{padding:19px 20px 24px}.field{font-size:12px;gap:8px;margin-bottom:16px}.field small,.form-hint{font-size:10px}input,select,textarea{font-size:16px;padding:11px 12px;min-height:45px}.ingredient-inputs input{font-size:13px;padding:9px 7px}.ingredient-inputs{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr) minmax(0,.8fr) 32px;gap:5px}.ingredient-inputs .icon-button{width:32px;min-width:32px}.form-grid{gap:11px}.form-actions{gap:10px;margin-top:19px;padding-top:18px}.form-actions .button{font-size:12px;padding:11px 12px;min-height:45px}.notice{font-size:11px;padding:12px;margin:14px 0;gap:8px}.notice>svg{width:17px}.privacy-note{font-size:10px;line-height:1.7}.source-buttons .button{font-size:12px}.recipe-detail-art{height:183px}.recipe-detail-art .dish-art{width:280px}.recipe-meta{font-size:11px;margin:17px 0 24px}.steps-list p{font-size:14px}.meal-controls{gap:10px;flex-wrap:wrap}.meal-controls>input{width:100%;font-size:14px}.meal-controls>.segmented{width:100%}.meal-sheet{padding:21px 17px;border-radius:22px}.meal-sheet h2{font-size:19px}.meal-people{grid-template-columns:105px minmax(0,1fr);gap:15px}.meal-people select{font-size:13px}.stepper button{width:35px}.meal-dish{gap:12px;padding:13px 0}.small-dish-art{width:70px;height:58px}.meal-dish>div>button{font-size:14px}.meal-dish>div>span{font-size:10px}.meal-dish>.icon-button{min-width:34px;width:34px}.add-dish-actions{gap:10px}.add-dish-actions .button{font-size:11px;padding:10px 9px}.meal-footer{flex-direction:column;align-items:stretch;gap:12px}.cook-hint{font-size:10px}.meal-footer>.button{font-size:12px}.done-meal{flex-direction:column;gap:8px;font-size:13px}.random-result{gap:9px;grid-template-columns:repeat(2,minmax(0,1fr))}.random-card strong{font-size:12px;padding:0 9px 12px}.lock-button{width:37px;height:37px}.purchase-controls{gap:8px}.purchase-controls input[type=number]{max-width:110px;font-size:13px}.purchase-controls .check-label{font-size:10px}.shopping-summary{padding:20px 17px;gap:15px}.shopping-summary-icon{width:53px;height:53px;border-radius:15px}.shopping-summary-icon svg{width:26px}.shopping-summary strong{font-size:30px}.shopping-summary strong span{font-size:12px}.shopping-summary p{font-size:10px}.shopping-summary-sticker{font-size:8px;letter-spacing:1px}.shopping-list,.completed-list{padding:0 15px;border-radius:20px}.shopping-row{gap:10px;min-height:80px;padding:13px 0}.shopping-description strong{font-size:14px}.shopping-description span{font-size:10px}.shopping-quantity{font-size:13px;max-width:24%}.checkbox{width:37px;min-width:37px;height:44px;border-radius:12px}.delete-item{width:28px;min-width:28px;height:44px}.delete-item svg{width:14px}.completed-toggle{font-size:11px;gap:7px}.profile-preview{gap:16px;margin-bottom:22px}.consent-box{font-size:12px;padding:14px;gap:10px}.consent-box strong{font-size:12px}.consent-box small{font-size:10px}.invitation-card{padding:19px 16px}.invitation-card>h3{font-size:19px}.timeline{margin-left:6px;padding-left:21px}.timeline-event{padding:18px 16px;border-radius:18px}.timeline-dot{left:-28px}.event-top{gap:8px}.event-top time{font-size:9px}.timeline-event h3{font-size:14px}.timeline-event p{font-size:12px}.event-top .chip{font-size:9px}.pet-grid{grid-template-columns:1fr;gap:20px}.pet-card>div:last-child{padding:22px}.settings-grid{grid-template-columns:1fr;gap:20px}.settings-card{padding:23px 21px}.settings-card .section-mini h2{font-size:19px}.settings-row{font-size:13px}.simulation-stats span{font-size:10px}.pick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.recipe-detail>.form-actions{position:sticky;bottom:-24px;background:#fffcf7;padding-bottom:16px}.settings-card .rename-form input{font-size:16px}}@media(max-width:370px){.app-header,.page{padding-left:16px;padding-right:16px}.home-heading h1{font-size:26px}.home-heading p{font-size:10px}.today-badge{width:53px;min-width:53px}.brand>span{font-size:17px}.header-right .button.small{font-size:10px}.page-heading h1{font-size:23px}.memo-card,.pet-shortcut{padding:14px 12px;min-height:163px}.memo-card h3,.pet-shortcut h3{font-size:12px}.scene-caption{font-size:5px}.house-card-top{padding-left:17px;padding-right:17px}.house-card-top h2{font-size:16px}.first-recipe-art{width:85px}.shopping-summary-sticker{display:none}.modal-body,.modal-header{padding-left:16px;padding-right:16px}.shopping-list,.completed-list{padding-left:12px;padding-right:12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.recipe-card:hover{transform:none}button:not(:disabled):active{transform:none}}button.icon-button,.round-add,.checkbox,.delete-item,.lock-button,.members-stack button,.house-status button,.header-profile{min-width:44px;min-height:44px}.button.small,.text-button,.check-label,.room-label,.segmented button,.filter-chips button{min-height:44px}.steps-list p,.ingredient-list,.shopping-description strong{font-size:16px}.plain-title,.shopping-description strong,.pet-card h2,.house-card-top h2{overflow-wrap:anywhere}@media(max-width:720px){.ingredient-inputs{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr) minmax(0,.8fr) 44px}.meal-people{grid-template-columns:125px minmax(0,1fr)}.stepper button{width:44px}.shopping-row{gap:7px}.shopping-list,.completed-list{padding:0 10px}.recipe-card-footer{flex-wrap:wrap;gap:4px}.room-label{padding:7px 10px}.steps-list p{font-size:16px}}.resident-activities{display:flex;flex-wrap:wrap;gap:8px;padding:0 22px 14px}.resident-activities>span{font-size:11px;padding:8px 12px;border-radius:13px;background:#fff9ed;color:#77575e;line-height:1.5}.resident-activities b{margin-right:9px;color:#3a2535}.timeline-event p{white-space:pre-line}.brand,.page-heading .button,.tonight-card .button,.first-recipe .button,.plain-title{min-height:44px}.auth-brand .brand-icon{width:36px;height:36px;border-radius:11px;box-shadow:0 3px 12px #63404f22}.brand img{object-fit:cover}.theme-forest.home-house-card,.theme-forest.decor-preview{background:#edf0de;border-color:#c8d5b5}.theme-sunset.home-house-card,.theme-sunset.decor-preview{background:#fff0d7}.theme-forest .house-status{background:#f2f3e7}.theme-sunset .house-status{background:#fff4e1}.decor-preview{background:#fff1dc;border-radius:22px;overflow:hidden;margin-bottom:25px;border:1px solid #ecd4be}.decor-preview .house-scene{max-width:470px;margin:auto}.decor-heading{margin:22px 0 12px}.theme-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:15px}.theme-options>button{position:relative;text-align:left;border:1.5px solid #ded2c1;border-radius:17px;padding:15px;background:#fffcf7;min-height:135px}.theme-options>button.selected,.sofa-options>button.selected{border-color:#926f54;box-shadow:0 0 0 2px #d7b69a55;background:#fff3df}.theme-options strong{display:block;font-size:15px;margin:11px 0 6px}.theme-options small{display:block;font-size:12px;line-height:1.6;color:#826a63}.theme-options>button>svg{position:absolute;top:15px;right:12px}.theme-colors{display:flex}.theme-colors i{width:25px;height:25px;border-radius:50%;border:2px solid #fff9ed;margin-right:-5px}.sofa-options{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:17px}.sofa-options>button{display:flex;align-items:center;gap:8px;border:1px solid #ded2c1;min-height:46px;padding:8px 13px;border-radius:13px;font-size:13px}.sofa-options i{width:21px;height:21px;border-radius:7px}.career-settings{border:1px solid #e5d5bd;border-radius:19px;background:#fbf3e3;padding:18px;margin:22px 0}.career-settings>h3{margin:6px 0}.career-settings>p{font-size:12px;color:#82675d;margin-bottom:13px}.career-settings>.field:last-child{margin-bottom:0}.travel-consent{background:#f0f3e6;border-color:#ccd8b7}.travel-teaser{display:grid;grid-template-columns:66px minmax(0,1fr) auto;gap:22px;align-items:center;margin-top:24px;padding:25px 28px;background:#f4f0df;border:1px solid #ddd8bb;border-radius:24px}.travel-teaser-mark{position:relative;background:#fff9e9;display:grid;place-items:center;width:63px;height:68px;border:1px solid #dacbaa;border-radius:15px;transform:rotate(-7deg);color:#8e9877}.travel-teaser-mark i{position:absolute;right:-6px;top:-7px;background:#d87970;color:#fff7ed;border:3px solid #f4f0df;min-width:26px;min-height:26px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-style:normal}.travel-teaser h2{font-size:20px;margin-top:7px}.travel-teaser p{font-size:12px;color:#7c685a;margin-top:6px}.travel-teaser-actions{display:flex;flex-direction:column;align-items:center;gap:3px}.mail-count{display:grid;place-items:center;border-radius:50%;background:#ffdfc9;min-width:22px;height:22px;font-size:11px}.travel-teaser .button{font-size:13px}.journey-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.journey-member{display:flex;gap:17px;padding:23px;background:#faf4e9;border:1px solid #e4d8c6;border-radius:22px}.journey-member.away{background:#eaf0df;border-color:#c9d7bc}.journey-icon{width:46px;height:46px;border-radius:50%;background:#fff9e9;display:grid;place-items:center;flex-shrink:0;color:#7d8a66}.journey-member>div{min-width:0}.journey-member strong{font-size:14px;display:flex;flex-wrap:wrap;gap:9px;align-items:center}.journey-member strong small{font-size:11px;color:#7c6a59;background:#fff8e6;border-radius:7px;padding:3px 7px;font-weight:400}.journey-member h3{font-size:18px;margin:9px 0 5px;overflow-wrap:anywhere}.journey-member p{color:#6f6957;font-size:13px;line-height:1.7}.journey-member>div>small{font-size:11px;color:#6f6957;display:block;margin-top:9px}.postcard-total{font-size:26px;color:#657c61;font-weight:600;white-space:nowrap}.postcard-total small{font-size:12px;font-weight:400;color:#82725e}.postcard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.postcard-card{padding:12px;text-align:left;background:#fffcf2;border:1px solid #e3d6bd;box-shadow:0 6px #ead9bd33;border-radius:7px;transition:transform .2s}.postcard-card:hover{transform:translateY(-3px) rotate(-.5deg)}.postcard-cover{position:relative;overflow:hidden;border:1px solid #e4d7be;border-radius:3px}.postcard-art{display:block;width:100%;height:auto}.postcard-stamp{position:absolute;bottom:13px;right:13px;width:39px;height:43px;border:2px dotted #fef8e9;outline:2px solid #a2756680;outline-offset:2px;display:grid;place-items:center;color:#7b7567;background:#f8edd2d9;transform:rotate(8deg)}.postcard-card-copy{padding:17px 10px 8px}.postcard-card-copy>small{font-size:10px;letter-spacing:1.7px;color:#7a8665}.postcard-card-copy h3{font-size:22px;margin:7px 0 5px;overflow-wrap:anywhere}.postcard-card-copy p{font-size:12px;color:#816c5e}.postcard-card-copy>span{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#836a60;border-top:1px dashed #e2d6c1;padding-top:12px;margin-top:12px}.first-postcard{display:grid;grid-template-columns:1.12fr 1fr;gap:35px;align-items:center;background:#f7f1e2;border:1px dashed #d1c4ab;border-radius:23px;padding:29px}.sample-postcard{padding:10px;background:#fffcf3;border:1px solid #ddcfb6;transform:rotate(-3deg);box-shadow:4px 5px #cab69925}.sample-postcard>span{font-size:11px;color:#7e7160;display:block;text-align:center;padding:11px 4px 4px}.first-postcard h3{font-size:24px;line-height:1.6;margin:10px 0 12px}.first-postcard p{font-size:14px;color:#7f6b5f;line-height:1.9;margin-bottom:21px}.first-postcard .eyebrow{font-size:9px;letter-spacing:1.4px}.first-postcard .button{font-size:13px}.postcard-picture{position:relative;border:1px solid #d7c7ad;border-radius:5px;overflow:hidden}.postmark{position:absolute;right:15px;top:15px;width:81px;height:81px;border:2px solid #a67561;border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;font-size:11px;line-height:2;color:#90674f;transform:rotate(15deg);background:#fff3d999;outline:1px solid #a67561;outline-offset:-6px}.postcard-letter{padding:25px 6px 5px}.postcard-letter .event-top{margin-bottom:18px}.postcard-letter h3{display:flex;gap:8px;align-items:center;font-size:23px}.letter-caption{font-size:16px;line-height:2.1;margin-top:17px;white-space:pre-line}.letter-signature{text-align:right;margin:20px 0;font-size:16px;color:#687e5c}.letter-signature>span{display:block;font-size:12px;color:#827262;margin-top:7px}.travel-log{margin-top:33px;padding:24px;border:1px solid #e4d7c2;border-radius:22px;background:#fffbf1}.travel-log>h3{margin-bottom:15px}.travel-log>div{display:flex;align-items:flex-start;gap:13px;padding:15px 0;border-top:1px dashed #e6dbc6}.travel-log>div>div{flex:1;min-width:0}.travel-log strong{font-size:14px}.travel-log p{font-size:12px;color:#826c61;margin-top:4px}.travel-log time{font-size:11px;color:#87735f;white-space:nowrap}.travel-log-dot{width:8px;height:8px;flex-shrink:0;border-radius:50%;background:#a1b691;margin-top:7px}@media(max-width:720px){.theme-options{grid-template-columns:1fr;gap:9px}.theme-options>button{min-height:75px;display:grid;grid-template-columns:63px 1fr;gap:3px 10px;padding:12px 16px}.theme-options strong{margin:0;font-size:14px}.theme-options small{grid-column:2;font-size:11px}.theme-colors{grid-row:span 2;align-items:center}.theme-options>button>svg{top:15px;right:14px}.decor-preview{margin-bottom:20px}.travel-teaser{grid-template-columns:47px minmax(0,1fr);gap:13px;padding:20px;margin-top:18px}.travel-teaser-mark{width:45px;height:51px}.travel-teaser-mark>svg{width:25px}.travel-teaser h2{font-size:17px;line-height:1.65}.travel-teaser .eyebrow{font-size:8px;letter-spacing:1.5px}.travel-teaser p{font-size:11px;line-height:1.8}.travel-teaser-actions{grid-column:1/-1;flex-direction:row;justify-content:space-between}.travel-teaser-actions .button{font-size:12px;min-height:44px}.journey-strip{grid-template-columns:1fr;gap:12px}.journey-member{padding:18px;gap:13px}.journey-member h3{font-size:17px}.journey-member p{font-size:12px}.journey-member strong{font-size:13px}.journey-member>div>small{font-size:10px}.journey-member strong small{font-size:10px}.travel-page .page-heading{align-items:flex-start;flex-wrap:wrap}.travel-page .page-heading h1{font-size:26px}.travel-page .page-heading .button{font-size:12px}.postcard-grid{grid-template-columns:1fr;gap:22px}.first-postcard{grid-template-columns:1fr;gap:28px;padding:22px}.first-postcard h3{font-size:21px}.first-postcard p{font-size:13px}.sample-postcard{margin:5px;transform:rotate(-2deg)}.postcard-total{font-size:22px}.postcard-card-copy h3{font-size:21px}.postcard-letter{padding:21px 0 2px}.postcard-letter h3{font-size:21px}.postcard-letter .event-top{flex-wrap:wrap}.postmark{width:63px;height:63px;right:10px;top:10px;font-size:9px}.travel-log{padding:20px 16px}.travel-log>div{flex-wrap:wrap;gap:10px}.travel-log time{margin-left:18px}.letter-caption{font-size:16px}.career-settings{padding:16px}.career-settings>.field{margin-top:12px}}@media(prefers-reduced-motion:reduce){.postcard-card:hover{transform:none}}.home-house-card,.decor-preview{border:1px solid #f0d8a5;background:#fff8dc;box-shadow:0 7px 20px #ae81350a;border-radius:26px}.home-house-card.theme-forest,.decor-preview.theme-forest{background:#f6f9dd;border-color:#d5e39e}.home-house-card.theme-sunset,.decor-preview.theme-sunset{background:#fff0d6;border-color:#f0c993}.home-house-card .house-card-top h2{color:#6f5140;font-weight:750}.home-house-card .house-status{background:#fffae9;border-color:#eeddb9;color:#795738}.storybook-house{padding:0 8px 12px;margin:4px auto 0;width:100%;max-width:640px}.storybook-house>svg{overflow:visible}.storybook-house .room-shortcuts{display:flex;gap:8px;padding:0 14px;margin-top:-3px}.storybook-house .room-label{position:static;flex:1;justify-content:center;gap:6px;min-width:0;min-height:44px;padding:9px 6px;background:#fffdf4;border:1px solid #e8cd94;border-radius:14px;box-shadow:none;font-size:12px;font-weight:650;color:#76563d;white-space:nowrap}.storybook-house .room-label:hover{background:#ffecac;border-color:#e9be58}.storybook-house .scene-caption{position:static;display:block;transform:none;text-align:center;letter-spacing:1.5px;font-size:10px;color:#806540;margin:16px 6px 0;line-height:1.6}.decor-preview .storybook-house{max-width:520px;padding-bottom:13px}.avatar{border-color:#fff3d8;background:#f4e4c7}.avatar.mint{background:#e3e7c6}.avatar.orange{background:#f4dfb5}.avatar.yellow{background:#f5e8b3}.avatar svg{margin-top:0}.is-living .little-person{animation:none}.person-squish{transform-box:fill-box;transform-origin:50% 100%}.is-bouncy .person-squish{animation:soft-squish 6.8s ease-in-out infinite}.person-eyes{transform-box:fill-box;transform-origin:center;animation:soft-blink 6.8s linear infinite}@keyframes soft-squish{0%,65%,84%,to{transform:translateY(0) scale(1)}70%{transform:translateY(1px) scale(1.045,.955)}75%{transform:translateY(-3px) scale(.975,1.035)}80%{transform:translateY(0) scale(1.015,.985)}}@keyframes soft-blink{0%,40%,44%,to{transform:scaleY(1)}42%{transform:scaleY(.12)}}@media(max-width:1000px){.storybook-house{margin:4px auto 0}.storybook-house .room-label{font-size:11px;gap:3px}.storybook-house .room-shortcuts{gap:6px;padding:0 10px}}@media(max-width:720px){.storybook-house{padding:0 3px 10px}.storybook-house .room-shortcuts{padding:0 12px;gap:5px}.storybook-house .room-label{font-size:11px;min-height:44px;padding:8px 3px}.storybook-house .room-label span{font-size:12px}.storybook-house .scene-caption{font-size:9px;letter-spacing:1px;margin-top:13px}.home-house-card .house-card-top{padding-top:19px}.decor-preview .storybook-house .scene-caption{font-size:9px}}@media(max-width:370px){.storybook-house .room-label{font-size:10px;gap:2px}.storybook-house .room-label span{font-size:11px}}.flat-house .room-label:last-child{background:#ffda38;border-color:#ffda38;color:#67412d}.flat-house .room-label:last-child:hover{background:#ffce0b}.avatar.purple{background:#eadff8}.avatar.classic{background:#f8baac}.storybook-app{--pink:#F17BAB;--orange:#FFAD6C;--yellow:#FFDA79;--mint:#80D7BF;--cream:#FFF8EE;--cocoa:#4D3B58;--muted:#78657C;--border:#EDD9E8;--shadow:0 8px 25px #B888A90C;background:#fffaf4;color:var(--cocoa)}.storybook-app body{background:radial-gradient(ellipse at 5% 14%,#FFEAF099,transparent 40%),radial-gradient(ellipse at 100% 54%,#FFF0CA77,transparent 45%),#fffaf4}.storybook-app .app-header{height:90px;border-bottom:1px solid #F1E4E5}.storybook-app .brand img{background:#fff7ed;border-radius:14px;padding:0;box-shadow:0 3px 12px #7d5a5822}.storybook-app .brand>span{color:#6b506c}.storybook-app .brand small{color:#a88899}.storybook-app .desktop-nav{background:#f8ebf1;border-color:#f0dfe9;box-shadow:none}.storybook-app .desktop-nav button.active{background:#eba2c2;color:#563d5f;box-shadow:0 3px 8px #d8a2c433}.storybook-app .local-label{color:#917f91}.storybook-app .home-heading h1{color:#624761}.storybook-app .home-heading{margin-bottom:28px}.storybook-app .greeting{color:#9a7c85}.storybook-app .eyebrow{color:#a17d91}.storybook-app .today-badge{background:#ffedc4;border-color:#f1dfaf;box-shadow:3px 4px #f3deb2;color:#7c6355}.storybook-app .home-house-card,.storybook-app .decor-preview{background:linear-gradient(160deg,#fff7e7,#fff0eb 65%,#f3e9fa);border:1px solid #F0D7DF;border-radius:29px;box-shadow:0 10px 28px #b387a614;overflow:hidden}.storybook-app .home-house-card.theme-forest,.storybook-app .decor-preview.theme-forest{background:linear-gradient(150deg,#f7fbea,#e5f5f0);border-color:#cde4d8}.storybook-app .home-house-card.theme-sunset,.storybook-app .decor-preview.theme-sunset{background:linear-gradient(150deg,#fff1dc,#fbe0df);border-color:#edcbbe}.storybook-app .house-card-top{padding:24px 25px 15px}.storybook-app .house-card-top h2{font-size:20px;color:#73546f}.storybook-app .house-status{background:#fff7;border-color:#eadbe4;color:#826a7e;font-size:11px}.storybook-app .resident-activities{background:#fffbf780;color:#856b83}.storybook-app .avatar{border-color:#fff8ee;background:#f1ddf6;box-shadow:none}.storybook-app .avatar.pink{background:#ffe0ea}.storybook-app .avatar.orange{background:#ffe6c9}.storybook-app .avatar.mint{background:#d8f0e5}.storybook-app .avatar.yellow{background:#fff0be}.storybook-app .avatar.classic{background:#e9ddf4}.storybook-app .avatar svg{margin:0}.storybook-app .candy-house{max-width:none;margin:0;padding:0 0 17px}.candy-house>svg{width:100%;height:auto;display:block;overflow:visible}.room-instruction{text-align:center;padding:7px 8px 0}.room-instruction>span{display:block;font-weight:650;font-size:12px;color:#ad769d}.room-instruction small{display:block;font-size:10px;color:#957f93;margin-top:5px}.demo-residents{display:flex;gap:7px;justify-content:center;margin:11px 0 -15px;position:relative;z-index:1}.demo-residents button{font-size:11px;border:1px solid #EACBDC;padding:7px 14px;min-height:35px;border-radius:99px;background:#fffbf7;color:#886784}.demo-residents button[aria-pressed=true]{background:#eedaf5;border-color:#d1abd9;color:#74527e}.floor-target,.resident-target{cursor:pointer;outline:none}.floor-target>ellipse:first-of-type{transition:fill .2s,stroke .2s}.floor-target:hover>ellipse:first-child,.floor-target:focus-visible>ellipse:first-child{fill:#e7c6f6;fill-opacity:.65;stroke:#ac77c7;stroke-width:3}.floor-target[aria-disabled=true]{cursor:not-allowed}.resident-target:focus-visible>rect,.resident-target:hover>rect{stroke:#b187c9;stroke-width:2;stroke-dasharray:4 4}.resident-bubble,.resident-target .little-person{pointer-events:none}.is-walking .person-squish{animation:room-walk .4s ease-in-out infinite}.writing-pen{transform-box:fill-box;transform-origin:bottom}.is-bouncy .writing-pen{animation:pen-write 1.1s ease-in-out infinite}.room-action-status{font-size:11px;text-align:center;color:#8b7389;line-height:1.8;padding:0 17px;min-height:24px;margin-top:-8px}@keyframes room-walk{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-3px) rotate(2deg)}}@keyframes pen-write{0%,to{transform:rotate(-5deg)}50%{transform:rotate(8deg)}}.storybook-app .candy-house .room-shortcuts{position:static;display:flex;gap:8px;padding:12px 17px 0}.storybook-app .candy-house .room-label{position:static;min-height:44px;flex:1;justify-content:center;white-space:nowrap;border-radius:13px;border:1px solid #EDD3E3;background:#fffbf7;box-shadow:0 3px #eaccd82b;color:#865d7f;font-size:11px;padding:10px 5px}.storybook-app .candy-house .room-label:last-child{background:#e3c5ef;border-color:#dab7e8;color:#6c497d}.storybook-app .candy-house .scene-caption{position:static;display:block;text-align:center;margin:10px 0 0;font-size:10px;transform:none;color:#977f96}.storybook-app .tonight-card{background:#ffdfad;border:1px solid #F1CFA8;border-radius:24px}.storybook-app .tonight-card h2{color:#7d5a58}.storybook-app .tonight-card p{color:#916c65}.storybook-app .button{border-radius:14px;min-height:44px}.storybook-app .button.primary{background:#eb9abb;color:#563c58;box-shadow:0 3px #d883a222}.storybook-app .button.cocoa{background:#8f709a;color:#fff9f5}.storybook-app .button.secondary{background:#fffaf2;border-color:#e7d6dc;color:#83617b}.storybook-app .button.danger{background:#ffe5e6;color:#a23d51}.storybook-app .memo-card{border:1px solid #D7EADC;background:#eaf5df;border-radius:21px}.storybook-app .memo-icon{background:#d5e9c5;color:#6c895e}.storybook-app .pet-shortcut{border:1px solid #E4D6F0;background:#f2e9fa;border-radius:21px}.storybook-app .pet-icon{background:#e5d5f3;color:#9373b2}.storybook-app .chip.cream{background:#fff4d7;color:#8b705c}.storybook-app .recipe-card,.storybook-app .settings-card,.storybook-app .meal-sheet,.storybook-app .pet-card{background:#fffdfa;border-color:#efdfe5;border-radius:23px}.storybook-app .first-recipe{background:#f6f2e5;border-color:#e8e0ca}.storybook-app .welcome-strip{background:#f8eaf2;border-color:#eed6e5}.storybook-app .shopping-summary{background:#e9f2da;border-color:#d8e7c2}.storybook-app .shopping-summary-icon{background:#d5e7bd;color:#6c885b}.storybook-app .shopping-list{border-color:#ecdfd6;background:#fffdfa}.storybook-app .checkbox.on{background:#a2d7bb;border-color:#96c8ab}.storybook-app .round-add{background:#f3d5e8;color:#8c5f86}.storybook-app .filter-chips button.active{background:#eaceea;border-color:#e0bee2;color:#735376}.storybook-app .segmented{background:#f4eaf1}.storybook-app .segmented button.active{background:#fffdfc;color:#855e81}.storybook-app .search-box,.storybook-app input,.storybook-app textarea,.storybook-app select{border-color:#e8d8e3;background:#fffdfa;color:#624d62}.storybook-app .search-box input{background:transparent}.storybook-app .empty-art{background:#f3eaf8;color:#ab85b4}.storybook-app .text-button{color:#9f7097}.storybook-app .modal{background:#fff9f2;border:1px solid #EBD4E4;border-radius:24px}.storybook-app .modal-header{border-color:#eedde5;background:#fcf0f6}.storybook-app .modal-header h2{color:#76526f}.storybook-app dialog::backdrop{background:#5c486257;backdrop-filter:blur(4px)}.storybook-app .notice.error{background:#fff0ef;color:#a14350}.storybook-app .auth-link-card{background:#fff9f4;border:1px solid #EACFDF;border-radius:23px}.storybook-app .auth-brand{color:#9f7097}.storybook-app .toast{background:#8b6a92;color:#fff9f1}.storybook-app .profile-preview{background:#f7eaf3;border-radius:19px}.moment-person{display:flex;align-items:center;gap:14px;margin-bottom:23px}.moment-person strong{font-size:17px;color:#775875}.moment-person small{display:block;font-size:11px;color:#9c8194;margin-top:8px}.moment-letter{padding:25px;background:#fff3d8;border:1px solid #EFDCB7;border-radius:15px;position:relative}.moment-letter.is-letter{background:repeating-linear-gradient(transparent 0,transparent 31px,#EEDACC55 31px,#EEDACC55 32px),#fff6e5}.moment-letter h3{font-size:21px;line-height:1.6;color:#8b6676;margin:12px 0 20px}.moment-letter p{white-space:pre-wrap;line-height:2;font-size:15px;color:#725c66;overflow-wrap:anywhere}.moment-letter footer{border-top:1px dashed #E3CCB7;padding-top:17px;margin-top:22px;font-size:10px;color:#a28a82}.moment-letter .eyebrow{font-size:9px;letter-spacing:1.2px}@media(max-width:1000px){.storybook-app .home-grid{grid-template-columns:minmax(0,1.5fr) minmax(255px,1fr);gap:20px}}@media(max-width:720px){.storybook-app .app-header{height:77px}.storybook-app .page{padding-top:24px}.storybook-app .home-grid{grid-template-columns:minmax(0,1fr)}.storybook-app .home-heading h1{font-size:28px}.storybook-app .house-card-top{padding:21px 19px 12px}.storybook-app .house-card-top h2{font-size:17px}.storybook-app .candy-house .room-shortcuts{padding-inline:11px;gap:5px}.storybook-app .candy-house .room-label{font-size:10px}.room-instruction small{font-size:9px}.room-action-status{font-size:10px;padding:4px 13px;min-height:28px;margin-top:0}.moment-letter{padding:21px 19px}.moment-letter p{font-size:14px}.moment-letter h3{font-size:19px}.storybook-app .mobile-nav{background:#fff8f6f5;border-color:#f0dde9}.storybook-app .mobile-nav button.active>span{background:#f2d7e8;color:#945a88}.storybook-app .mobile-nav button.active{color:#945a88}.storybook-app .page-heading{flex-wrap:wrap;gap:14px}.storybook-app .page-heading>div:first-child{flex:1 1 100%}.storybook-app .page-heading h1{font-size:25px}.storybook-app .page-heading>.button{margin-left:auto}}@media(prefers-reduced-motion:reduce){.person-squish,.person-eyes,.writing-pen{animation:none!important}.floor-target>ellipse{transition:none}}@media(min-width:721px){.storybook-app .home-grid{align-items:start}.storybook-app .home-aside{position:sticky;top:22px}.storybook-app .tonight-card{min-height:306px;flex:none}}.storybook-app .home-house-card,.storybook-app .decor-preview{background:radial-gradient(ellipse at 24% 35%,#FFF7D8 0,transparent 60%),linear-gradient(145deg,#fff6eb,#f3eafb);box-shadow:0 14px 35px #9877af14,inset 0 1px #fff;border-color:#e9d6e8}.storybook-app .desktop-nav button.active,.storybook-app .button.primary{background:linear-gradient(155deg,#ffa8cc,#ef85b2);color:#54334e;box-shadow:inset 0 1px #ffd8e9,0 3px 8px #c87fad20}.storybook-app .home-heading h1{color:#51415f}.storybook-app .home-house-card h2{color:#625070}.storybook-app .house-status{color:#715c79}.room-instruction>span{color:#91649b}.room-instruction small{color:#7d6c89}.storybook-app .demo-residents button{min-height:44px;background:#fffdf6;color:#756080;border-color:#ddc7e7;box-shadow:inset 0 2px 1px #fff}.storybook-app .demo-residents button[aria-pressed=true]{background:linear-gradient(#e9deff,#d4c1f0);color:#594472;border-color:#c4abe0}.storybook-app .avatar{background:radial-gradient(circle at 35% 20%,#fff7e6,#d7c5f5);box-shadow:0 2px 7px #8871991f}.storybook-app .profile-preview{background:radial-gradient(ellipse at 30% 20%,#fff7d9,#eadcf8);box-shadow:inset 0 0 0 1px #fff}.storybook-app .tonight-card{background:linear-gradient(135deg,#ffe8b5,#ffd395);box-shadow:inset 0 1px #fff5d6}.storybook-app .moment-person .avatar{border-radius:22px}.storybook-app .room-action-status{color:#796583}.floor-target:hover>ellipse,.floor-target:focus-visible>ellipse{fill:#e7c6f6;fill-opacity:.65;stroke:#9c73b9;stroke-width:3}.resident-target:focus-visible>rect,.resident-target:hover>rect{fill:#fff;fill-opacity:.1}.chibi-person .person-squish{transform-box:fill-box;transform-origin:50% 100%}.chibi-person .person-eyes{transform-box:fill-box;transform-origin:50% 50%}
