:root{color-scheme:light;--c-bg: #f4f7fb;--c-surface: #ffffff;--c-surface-2: #eef3f9;--c-ink: #172334;--c-ink-muted: #64748b;--c-line: #dce5ef;--c-primary: #7aa6ea;--c-primary-dark:#5d89d2;--c-on-primary: #10233d;--c-danger: #f06b61;--c-danger-dark: #d9554b;--c-on-danger: #1c0c0b;--c-err-bg: #fff0ed;--c-err-ink: #8c332a;--c-err-line: #f3c9c3;--c-ok-bg: #eaf7ef;--c-ok-ink: #24613c;--c-ok-line: #316046;--i-gear: url(data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2216%22%20height=%2216%22%20viewBox=%220%200%2016%2016%22%3E%3Cpath%20fill=%22black%22%20fill-rule=%22evenodd%22%20d=%22M6.46%200.76L9.54%200.76L9.04%203.11A5%205%200%200%201%2011.72%204.65L13.50%203.05L15.04%205.71L12.76%206.45A5%205%200%200%201%2012.76%209.55L15.04%2010.29L13.50%2012.95L11.72%2011.35A5%205%200%200%201%209.04%2012.89L9.54%2015.24L6.46%2015.24L6.96%2012.89A5%205%200%200%201%204.28%2011.35L2.50%2012.95L0.96%2010.29L3.24%209.55A5%205%200%200%201%203.24%206.45L0.96%205.71L2.50%203.05L4.28%204.65A5%205%200%200%201%206.96%203.11ZM10.60%208A2.6%202.6%200%201%200%205.40%208A2.6%202.6%200%201%200%2010.6%208Z%22/%3E%3C/svg%3E);--i-lock: url(data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2216%22%20height=%2216%22%20viewBox=%220%200%2016%2016%22%3E%3Cpath%20fill=%22black%22%20fill-rule=%22evenodd%22%20d=%22M4%207V5a4%204%200%201%201%208%200v2h1a1%201%200%200%201%201%201v7a1%201%200%200%201-1%201H3a1%201%200%200%201-1-1V8a1%201%200%200%201%201-1zm2%200h4V5a2%202%200%201%200-4%200z%22/%3E%3C/svg%3E);--i-cart: url(data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2216%22%20height=%2216%22%20viewBox=%220%200%2016%2016%22%3E%3Cpath%20fill=%22black%22%20fill-rule=%22evenodd%22%20d=%22M1.4%201.6h2.2l.2.1%202%2010.4c.06.3.4.5.66.5h8.9a.66.66%200%200%200%20.65-.5l1.4-7a.66.66%200%200%200-.65-.8H4.9l-.3-1.9a.66.66%200%200%200-.65-.55z%22/%3E%3Ccircle%20cx=%226.2%22%20cy=%2214.3%22%20r=%221.25%22/%3E%3Ccircle%20cx=%2213%22%20cy=%2214.3%22%20r=%221.25%22/%3E%3C/svg%3E);--i-offline: url(data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2216%22%20height=%2216%22%20viewBox=%220%200%2016%2016%22%3E%3Cpath%20fill=%22black%22%20fill-rule=%22evenodd%22%20d=%22M5.2%208.2A4.2%204.2%200%200%201%2010.8%208.2M2.8%205.4A8%208%200%200%201%2013.2%205.4M6.7%2012.2a1.3%201.3%200%201%201%202.6%200a1.3%201.3%200%201%201-2.6%200ZM1%2013.5L13.5%201L15%202.5L2.5%2015Z%22/%3E%3C/svg%3E);--i-save: url(data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2224%22%20height=%2224%22%20viewBox=%220%200%2024%2024%22%3E%3Cpath%20fill=%22black%22%20fill-rule=%22evenodd%22%20d=%22M17%203H5a2%202%200%200%200-2%202v14a2%202%200%200%200%202%202h14a2%202%200%200%200%202-2V7l-4-4zm-5%2016a3%203%200%201%201%200-6%203%203%200%200%201%200%206zm3-10H5V5h10v4z%22/%3E%3C/svg%3E);--c-lock: #e0b25a;--sp-1: 8px;--sp-2: 12px;--sp-3: 16px;--sp-4: 24px}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.45;color:var(--c-ink);background:var(--c-bg)}a{color:inherit;text-decoration:none}.hidden{display:none!important}.muted{color:var(--c-ink-muted)}input[type=checkbox]{accent-color:var(--c-primary)}.topbar{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);background:var(--c-surface);border-bottom:1px solid var(--c-line)}.topbar [data-nav=title]{font-size:1.15rem;margin:0;flex:1 1 auto}.ios-hint{width:100%;font-size:.8rem}.wrap{max-width:720px;margin:0 auto;padding:var(--sp-3) var(--sp-3) var(--sp-4)}.wrap.list{max-width:860px;padding-bottom:calc(56px + var(--sp-3) + var(--sp-3))}.wrap.login{display:flex;align-items:flex-start;justify-content:center;min-height:100vh;padding-top:12vh}.wrap.login .card{width:100%;max-width:360px}.wrap.login h1{margin:0 0 var(--sp-3);font-size:1.35rem}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--sp-2)}.card{display:block;padding:var(--sp-3);background:var(--c-surface);border:1px solid var(--c-line);border-radius:12px}.card:hover{border-color:var(--c-primary)}.card-name{font-weight:600;font-size:1.05rem;margin-bottom:var(--sp-1)}.card-bought{color:var(--c-ink-muted);font-size:.9rem}.card-date{color:var(--c-ink-muted);font-size:.8rem;margin-top:var(--sp-1)}.card-open{margin-top:var(--sp-2);color:var(--c-primary);font-weight:600;font-size:.9rem}.plus{position:fixed;bottom:var(--sp-3);right:var(--sp-3);width:56px;height:56px;border:0;border-radius:50%;background:var(--c-primary);color:var(--c-on-primary);font-size:30px;line-height:1;cursor:pointer;box-shadow:0 0 0 1px var(--c-line);z-index:10}.plus:hover{background:var(--c-primary-dark)}.lock-fab{left:var(--sp-3);right:auto;display:flex;align-items:center;justify-content:center}.dlg-backdrop{position:fixed;inset:0;background:var(--c-modal-backdrop);display:flex;align-items:center;justify-content:center;z-index:50;padding:16px}.dlg-native{background:var(--c-surface);color:var(--c-ink);border:1px solid var(--c-line);border-radius:12px;width:min(440px,calc(100vw - 24px));max-height:calc(100vh - 32px);overflow:auto;padding:16px;margin:auto}.dlg-native h2{margin:0 0 12px}.dlg-native h3{margin:18px 0 8px;font-size:13px;text-transform:uppercase;letter-spacing:.04em;opacity:.7}.dlg-native label{display:block;margin:10px 0;font-size:13px}.dlg-native input{display:block;width:100%;box-sizing:border-box;margin-top:4px;padding:8px 10px;background:var(--c-bg);color:var(--c-ink);border:1px solid var(--c-line);border-radius:8px}.dlg-native .m-invite{display:block}.dlg-btns{display:flex;gap:8px;margin-top:16px}.dlg-btns .btn,.dlg-btns .btn-ghost{flex:1}@media(max-width:700px){.dlg-backdrop{align-items:flex-end;padding:0 0 var(--kb, 0px)}.dlg-native{width:100%;max-height:80dvh;border-radius:12px 12px 0 0}}.list h2{font-size:1rem;margin:var(--sp-4) 0 var(--sp-2)}#items{display:flex;flex-direction:column;gap:var(--sp-1)}.row{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-2);background:var(--c-surface);border:1px solid var(--c-line);border-radius:10px;min-height:46px;overflow:hidden}.row input[type=checkbox]{width:22px;height:22px;margin:2px 0 0;flex:0 0 auto}.row .txt{flex:1 1 auto;min-width:0}.row .lbl{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row>.lbl{flex:1 1 auto;min-width:0}.row .qlead{flex:0 0 auto;font-weight:600;color:var(--c-ink-muted);font-size:.95em;white-space:nowrap}.row.locked{border-left:3px solid var(--c-lock)}.row.bought .lbl{display:inline;color:var(--c-ink-muted)}.row.bought .buyer{color:var(--c-primary)}.btn-buy{background:var(--c-primary);color:var(--c-on-primary)}.btn-buy:hover{background:var(--c-primary-dark)}.splitter{display:flex;align-items:center;gap:var(--sp-2);margin:var(--sp-3) 0;color:var(--c-ink-muted);font-size:.8em;text-transform:uppercase;letter-spacing:.04em}.splitter:before,.splitter:after{content:"";flex:1 1 auto;height:1px;background:var(--c-line)}.splitter-label{flex:0 0 auto}.swipe{position:relative;touch-action:pan-y;overflow:hidden}.swipe .swipe-band{position:absolute;left:0;top:0;bottom:0;width:50%;display:inline-flex;align-items:center;justify-content:flex-start;padding-right:0;padding-left:14px;color:var(--c-ink-muted);background:var(--c-surface-2);border-radius:10px 0 0 10px;opacity:0;will-change:opacity;pointer-events:none;-webkit-user-select:none;user-select:none}.swipe .swipe-band[data-state=lock]{color:var(--c-swipe-lock-ink);background:var(--c-swipe-lock-bg)}.swipe .swipe-band[data-state=unlock]{color:var(--c-ink)}.swipe.active .swipe-band{opacity:1}.swipe .swipe-band--buy{right:0;left:auto;justify-content:flex-end;padding-right:14px;padding-left:0;border-radius:0 10px 10px 0;color:var(--c-primary);background:var(--c-swipe-buy-bg)}.swipe .row{position:relative;z-index:1}.swipe.active .row .btn-buy,.swipe.active .row .ico-item{opacity:0;pointer-events:none}[data-post] label{display:block;margin-bottom:var(--sp-2);color:var(--c-ink-muted);font-size:.9rem}[data-post] input:not([type=checkbox]):not([type=hidden]),[data-post] select{display:block;width:100%;min-width:0;margin-top:4px;padding:10px 12px;font:inherit;color:var(--c-ink);background:var(--c-surface);border:1px solid var(--c-line);border-radius:8px}.add-item,.share{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);gap:var(--sp-2);align-items:end}.add-item .btn,.share .btn{grid-column:1 / -1}.btn,.btn-ghost,.btn-danger,a.lnk{display:inline-block;padding:10px 16px;min-height:44px;border:1px solid transparent;border-radius:8px;font:inherit;font-weight:600;line-height:1;text-align:center;cursor:pointer}a.lnk{border:0;background:transparent;color:inherit;font-weight:500;display:inline-flex;align-items:center}a.lnk:hover{background:var(--c-surface-2)}.btn{border-color:var(--c-primary);background:var(--c-primary);color:var(--c-on-primary)}.btn:hover{background:var(--c-primary-dark);border-color:var(--c-primary-dark)}.btn-danger{border-color:var(--c-danger);background:var(--c-danger);color:var(--c-on-danger)}.btn-danger:hover{background:var(--c-danger-dark);border-color:var(--c-danger-dark)}.btn-ghost{border-color:var(--c-line);background:transparent;color:var(--c-ink);font-weight:500}.btn-ghost:hover{background:var(--c-surface-2);border-color:var(--c-line);color:var(--c-ink)}.ico{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;padding:0;border:0;border-radius:8px;background:transparent;cursor:pointer}.ico svg{display:block}.ic{display:inline-block;width:16px;height:16px;flex:0 0 auto;background:currentColor;-webkit-mask:var(--i) center / contain no-repeat;mask:var(--i) center / contain no-repeat}.ic-gear{--i: var(--i-gear)}.ic-lock{--i: var(--i-lock)}.ic-cart{--i: var(--i-cart)}.ic-offline{--i: var(--i-offline)}.ic-save{--i: var(--i-save)}.notif-band{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-3);background:var(--c-surface);border-bottom:1px solid var(--c-line)}.notif-ico{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:0;border-radius:8px;background:transparent;cursor:pointer}.notif-ico:hover{background:var(--c-surface-2)}.notif-ico.open{color:var(--c-primary)}.notif-ico:focus-visible{outline:2px solid var(--c-primary-dark);outline-offset:2px}.notif-text{flex:1 1 100%;margin:0;font-size:.85rem;color:var(--c-ink-muted)}.btn:disabled,.btn-danger:disabled,.btn-ghost:disabled,.btn:hover:disabled,.btn-danger:hover:disabled,.btn-ghost:hover:disabled,.ico:disabled,.ico:hover:disabled,.plus:disabled,.plus:hover:disabled,input:disabled,select:disabled,textarea:disabled{opacity:.45;cursor:not-allowed}.btn:focus-visible,.btn-ghost:focus-visible,.btn-danger:focus-visible,.ico:focus-visible,a.lnk:focus-visible,[data-post] input:focus-visible,[data-post] select:focus-visible,input[type=checkbox]:focus-visible{outline:2px solid var(--c-primary-dark);outline-offset:2px}.err{margin:0 0 var(--sp-2);padding:10px 14px;background:var(--c-err-bg);color:var(--c-err-ink);border:1px solid var(--c-err-line);border-radius:10px;font-size:.95rem}.err[hidden]{display:none}.ok{margin:0 0 var(--sp-2);padding:10px 14px;background:var(--c-ok-bg);color:var(--c-ok-ink);border:1px solid var(--c-ok-line);border-radius:10px;font-size:.95rem}.ok[hidden]{display:none}.users h2{font-size:1rem;margin:var(--sp-4) 0 var(--sp-2)}.users h2:first-child{margin-top:0}.acc{display:flex;flex-direction:column;gap:var(--sp-2)}.acc-item{background:var(--c-surface);border:1px solid var(--c-line);border-radius:10px;overflow:hidden}.acc-item:hover{border-color:var(--c-primary)}.acc-head{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-2) var(--sp-2) calc(var(--sp-2) + 1.2em);cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none;position:relative}.acc-head::-webkit-details-marker{display:none}.acc-head:before{content:"\25b8";position:absolute;left:var(--sp-2);top:50%;margin-top:-.6em;color:var(--c-ink-muted);transition:transform .15s}[open] .acc-head:before{transform:rotate(90deg)}.acc-name{flex:1;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.acc-tags{display:flex;gap:6px;flex:0 0 auto}.tag{font-size:.7rem;font-weight:700;letter-spacing:.04em;padding:3px 8px;border-radius:999px}.tag-admin{background:var(--c-primary);color:var(--c-on-primary)}.tag-active{background:var(--c-ok-bg);color:var(--c-ok-ink)}.tag-locked{background:var(--c-err-bg);color:var(--c-err-ink)}.acc-body{padding:var(--sp-2) var(--sp-2) var(--sp-2) calc(var(--sp-2) + 1.2em);border-top:1px solid var(--c-line)}.acc-body label{display:block;margin-bottom:var(--sp-2)}.acc-body .checkline{display:flex;align-items:center;gap:var(--sp-1)}.acc-save{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);margin-top:var(--sp-2)}.acc-save .muted{font-size:.8rem}.acc-row{display:flex;justify-content:space-between;gap:var(--sp-2);padding:4px 0;font-size:.92rem}.acc-k{color:var(--c-ink-muted)}@media(min-width:640px){body{font-size:17px}.wrap{padding-top:var(--sp-4)}.wrap.login{padding-top:16vh}.card{padding:var(--sp-4)}.cards{gap:var(--sp-3)}}:root{--c-ok-line: #c8e8d2;--c-lock: #a9791a;--c-bg-glow: #e4edfb;--c-topbar-bg: rgb(255 255 255 / 92%);--c-topbar-shadow: rgb(23 35 52 / 4%);--c-card-shadow: rgb(23 35 52 / 4%);--c-card-shadow-hover: rgb(23 35 52 / 9%);--c-row-shadow: rgb(23 35 52 / 3%);--c-hover-line: #b7cbed;--c-line-hover: #c5d2e2;--c-focus: rgb(93 137 210 / 45%);--c-focus-soft: rgb(93 137 210 / 16%);--c-plus-shadow: rgb(35 69 112 / 24%);--c-plus-shadow-hover: rgb(35 69 112 / 30%);--c-plus-ring: rgb(255 255 255 / 88%);--c-modal-backdrop: rgb(15 27 44 / 48%);--c-modal-edge: rgb(255 255 255 / 75%);--c-modal-shadow: rgb(15 27 44 / 24%);--c-menu-backdrop: rgb(15 27 44 / 38%);--c-install-backdrop: rgb(0 0 0 / 55%);--c-menu-shadow: rgb(15 27 44 / 20%);--c-drag-shadow: rgb(15 27 44 / 18%);--c-notif-bg: rgb(255 255 255 / 88%);--c-surface-calendar: #f3f7fc;--c-swipe-bg: #e9eff7;--c-swipe-lock-ink: #57c26a;--c-swipe-lock-bg: rgb(87 194 106 / 12%);--c-swipe-buy-bg: rgb(122 166 234 / 16%);--c-surface-tabs: #e8eef6;--c-surface-slot: #f7f9fc;--c-plan-slot-line: #c9d7e8;--c-surface-drop: #edf4ff;--c-surface-proposal: #f8fafc;--c-photo-shadow: rgb(23 35 52 / 8%);--c-surface-home: #fbfcfe;--c-surface-home-hover: #f5f8fd;--c-home-shadow: rgb(29 53 80 / 3%);--c-home-week-line: #b7d1ec;--c-home-week-bg: #245e96;--c-home-week-ink: #ffffff;--c-home-count-bg: #4176a7;--c-home-range-ink: #e0edfa;--c-home-symbol: #7a6942;--c-admin-tag-bg: #eaf1fc;--c-admin-tag-ink: #315f9e}body{min-width:320px;background:radial-gradient(1000px 340px at 50% -180px,var(--c-bg-glow) 0%,transparent 78%),var(--c-bg)}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}.topbar{position:sticky;top:0;z-index:20;gap:10px;padding:12px max(20px,calc((100vw - 1120px)/2));background:var(--c-topbar-bg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 4px 18px var(--c-topbar-shadow)}:root .topbar:has(.burger-backdrop){-webkit-backdrop-filter:none;backdrop-filter:none}.topbar [data-nav=title]{font-size:1.05rem;font-weight:700;letter-spacing:-.02em}.topbar .lnk{min-height:40px;border-radius:10px;color:var(--c-ink-muted)}.topbar .lnk:hover{color:var(--c-ink);background:var(--c-surface-2)}.wrap{width:min(100%,1120px);padding:32px 24px 112px}.wrap.list{max-width:960px;padding-bottom:112px}.h1,.wrap>h1{margin:0 0 18px;font-size:clamp(1.55rem,3vw,2rem);line-height:1.2;font-weight:750;letter-spacing:-.04em}.wrap h2{letter-spacing:-.025em}.wrap.login{align-items:center;min-height:100svh;padding:32px 20px}.wrap.login .card{max-width:420px;padding:36px}.wrap.login h1{margin-bottom:24px;font-size:1.7rem}.wrap.login [data-post]>button{width:100%;margin-top:10px}.cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr));gap:16px}.card{min-width:0;padding:20px;border-radius:16px;box-shadow:0 3px 12px var(--c-card-shadow);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.card:hover{border-color:var(--c-hover-line);box-shadow:0 10px 24px var(--c-card-shadow-hover);transform:translateY(-2px)}.card:focus-visible,.home-row:focus-visible{outline:3px solid var(--c-focus);outline-offset:3px}.card-name{font-weight:700}.card-date,.card-owner{color:var(--c-ink-muted)}.card-open{color:var(--c-primary-dark)}.card-progress,.home-progress{display:block;height:7px;overflow:hidden;background:var(--c-surface-2);border-radius:999px}.card-progress{margin:14px 0 8px}.card-progress>span,.home-progress>span{display:block;height:100%;background:var(--c-primary-dark);border-radius:inherit;transition:width .25s ease}:root .plus{right:max(20px,calc((100vw - 1120px)/2));bottom:calc(20px + env(safe-area-inset-bottom) + var(--kb, 0px));box-shadow:0 8px 22px var(--c-plus-shadow),0 0 0 4px var(--c-plus-ring);transition:transform .16s ease,background-color .16s ease,box-shadow .16s ease}:root .plus:hover{transform:translateY(-2px);box-shadow:0 12px 26px var(--c-plus-shadow-hover),0 0 0 4px var(--c-surface)}:root .lock-fab{left:max(20px,calc((100vw - 1120px)/2));right:auto}:root .dlg-backdrop{background:var(--c-modal-backdrop);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}:root .dlg-native{width:min(480px,calc(100vw - 24px));max-height:calc(100dvh - 32px);padding:24px;border:1px solid var(--c-modal-edge);border-radius:20px;box-shadow:0 24px 70px var(--c-modal-shadow)}:root .dlg-native h2{margin-bottom:18px;font-size:1.3rem;letter-spacing:-.03em}:root .dlg-native h3{margin:22px 0 10px;color:var(--c-ink-muted);font-size:12px;letter-spacing:.08em}:root .dlg-native label{margin:14px 0;color:var(--c-ink-muted);font-size:13px;font-weight:600}:root .dlg-native input,:root .dlg-native select,:root .dlg-native textarea{width:100%;margin-top:6px;padding:11px 12px;border:1px solid var(--c-line);border-radius:10px;background:var(--c-bg);color:var(--c-ink)}:root .dlg-native input:focus,:root .dlg-native select:focus,:root .dlg-native textarea:focus{border-color:var(--c-primary-dark);outline:3px solid var(--c-focus-soft)}.dlg-btns{gap:10px;margin-top:22px}.dlg-btns--stack{flex-direction:column;align-items:stretch}:root .btn,:root .btn-ghost,:root .btn-danger,:root a.lnk{min-height:44px;padding:11px 16px;border-radius:10px;font-weight:650;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}:root .btn:hover:not(:disabled),:root .btn-danger:hover:not(:disabled){transform:translateY(-1px)}:root .btn-ghost{border-color:var(--c-line);background:var(--c-surface)}:root .btn-ghost:hover:not(:disabled){border-color:var(--c-line-hover);background:var(--c-surface-2)}:root .ico{border-radius:10px;color:var(--c-ink-muted)}:root .ico:hover:not(:disabled){background:var(--c-surface-2);color:var(--c-ink)}:root .ico:focus-visible,:root .btn:focus-visible,:root .btn-ghost:focus-visible,:root .btn-danger:focus-visible,:root a.lnk:focus-visible,:root input:focus-visible,:root select:focus-visible,:root textarea:focus-visible{outline:3px solid var(--c-focus);outline-offset:2px}.notif-band{background:var(--c-notif-bg)}.err,.ok{padding:12px 14px;border-radius:12px}.row{min-height:52px;padding:10px 12px;border-radius:12px;box-shadow:0 2px 8px var(--c-row-shadow)}.row.locked{border-left-width:4px}.row.bought .buyer{color:var(--c-primary-dark);font-weight:600}.btn-buy{border-radius:10px}.splitter{margin:24px 0 14px;font-size:.75em;font-weight:700;letter-spacing:.08em}.swipe .swipe-band{background:var(--c-swipe-bg)}.swipe .swipe-band--buy{background:var(--c-swipe-buy-bg)}:root .topbar app-burger .burger.btn{min-width:44px;padding:8px 12px;border:1px solid var(--c-line);background:var(--c-surface-2);color:var(--c-ink)}:root .burger-backdrop{background:var(--c-menu-backdrop);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}:root .burger-menu,:root .itemmenu{gap:5px;padding:8px;border-radius:16px;box-shadow:0 18px 45px var(--c-menu-shadow)}:root .burger-item{min-height:44px;justify-content:flex-start;padding-inline:14px;border-radius:10px}:root .burger-item:hover{background:var(--c-surface-2)}:root .wrap .cal-head{gap:8px;margin-bottom:12px;padding:10px;border:1px solid var(--c-line);border-radius:14px;background:var(--c-surface)}:root .wrap .cal-head select{min-height:44px;padding:8px 12px;border-radius:10px;background:var(--c-bg);color:var(--c-ink)}:root .wrap .cal-title{margin-bottom:16px;font-size:1.55rem}:root .wrap .cal-grid .cal-day{display:grid;grid-template-columns:88px minmax(0,1fr);align-items:start;gap:12px;margin-bottom:8px;padding:12px;border:1px solid var(--c-line);border-radius:14px;background:var(--c-surface)}:root .wrap .cal-grid .cal-date{padding-top:6px;font-size:.8rem;font-weight:650}:root .wrap .cal-grid .cal-entry{min-width:0;padding:8px 10px;border-left:3px solid var(--c-primary-dark);border-radius:0 9px 9px 0;background:var(--c-surface-calendar)}:root .wrap .cal-grid .cal-name{font-weight:650}:root .wrap .cal-grid .cal-time{color:var(--c-primary-dark);font-size:.8rem;font-weight:700}:root .wrap .cal-grid .cal-desc{color:var(--c-ink-muted)}:root .wrap .cal-both{gap:10px}:root .wrap .cal-cell--family{border-color:var(--c-line)}:root .wrap .trash-tabs{gap:8px;margin-bottom:16px;padding:5px;border-radius:14px;background:var(--c-surface-tabs)}:root .wrap .trash-tabs .tab{min-height:44px;border:0;border-radius:10px;background:transparent;color:var(--c-ink-muted);font-weight:650;cursor:pointer}:root .wrap .trash-tabs .tab-active{background:var(--c-surface);color:var(--c-ink);box-shadow:0 2px 6px var(--c-card-shadow-hover)}:root .wrap .trash-plan{align-items:center;min-height:58px;padding:8px 12px;border:1px solid var(--c-line);border-radius:12px;background:var(--c-surface)}:root .wrap .trash-plan+.trash-plan{margin-top:8px}:root .wrap .trash-name{font-weight:650}:root .wrap .plan-wrap{gap:20px}:root .wrap .plan-grid{gap:12px}:root .wrap .plan-day{padding:14px;border-radius:14px;background:var(--c-surface);box-shadow:0 2px 8px var(--c-row-shadow)}:root .wrap .plan-day-head{min-height:34px;margin-bottom:10px;color:var(--c-ink-muted);font-weight:700}:root .wrap .plan-slot{min-height:46px;border-color:var(--c-plan-slot-line);border-radius:10px;background:var(--c-surface-slot)}:root .wrap .plan-slot--empty{background:var(--c-surface-2)}:root .wrap .plan-slot--drop{border-color:var(--c-primary-dark);background:var(--c-surface-drop)}:root .wrap .plan-rps{padding:12px;border:1px solid var(--c-line);border-radius:14px;background:var(--c-surface)}:root .wrap .plan-rp{border-radius:10px;background:var(--c-surface-2);font-weight:600}:root .plan-ghost{border-radius:10px;box-shadow:0 10px 28px var(--c-drag-shadow)}:root .wrap .addl-lists select{min-height:48px;padding:10px 12px;border:1px solid var(--c-line);border-radius:10px;background:var(--c-surface);color:var(--c-ink)}:root .wrap .addl-group{padding:14px;border:1px solid var(--c-line);border-radius:14px;background:var(--c-surface)}:root .wrap .addl-gname{margin-bottom:10px;color:var(--c-ink-muted);font-size:.8rem;letter-spacing:.04em;text-transform:uppercase}:root .wrap .diag-proposal{padding:14px;border-radius:14px;background:var(--c-surface-proposal)}:root .wrap .photo-card .card-desc{color:var(--c-ink-muted)}:root .wrap.home-wrap{max-width:1000px;padding:12px 12px 20px}:root .wrap.home-wrap .home-sub{margin:0 0 10px;font-size:.75rem}:root .wrap.home-wrap .home-overview,:root .wrap.home-wrap .home-secondary{display:grid;gap:10px;align-items:start;min-width:0}:root .wrap.home-wrap .home-overview{grid-template-columns:minmax(0,1fr)}:root .wrap.home-wrap .home-secondary{grid-template-columns:repeat(2,minmax(0,1fr))}:root .wrap.home-wrap .home-sec{min-width:0;margin:0;padding:0;overflow:hidden;border:1px solid var(--c-line);border-radius:14px;background:var(--c-surface);box-shadow:0 2px 7px var(--c-home-shadow)}:root .wrap.home-wrap .home-week{border-color:var(--c-home-week-line)}:root .wrap.home-wrap .home-head{display:flex;align-items:center;justify-content:space-between;gap:4px;margin:0;padding:10px 10px 3px}:root .wrap.home-wrap .home-head-title{display:flex;min-width:0;align-items:center;gap:6px}:root .wrap.home-wrap .home-secondary .home-head{flex-wrap:nowrap}:root .wrap.home-wrap .home-secondary .home-head-title{flex:0 1 auto;gap:4px}:root .wrap.home-wrap .home-secondary .home-h{font-size:.82rem}:root .wrap.home-wrap .home-secondary .home-more{flex:0 0 auto;width:auto;min-height:44px;justify-content:flex-end;font-size:.68rem}:root .wrap.home-wrap .home-h{margin:0;font-size:.88rem;font-weight:750;letter-spacing:-.02em;white-space:nowrap}:root .wrap.home-wrap .home-count{display:inline-grid;flex:0 0 auto;place-items:center;min-width:20px;height:20px;padding:0 4px;border-radius:6px;background:var(--c-surface-2);color:var(--c-ink-muted);font-size:.68rem;font-weight:700}:root .wrap.home-wrap .home-week .home-head{margin:0;padding:8px 12px;background:var(--c-home-week-bg);color:var(--c-home-week-ink)}:root .wrap.home-wrap .home-week .home-h,:root .wrap.home-wrap .home-week .home-more{color:var(--c-home-week-ink)}:root .wrap.home-wrap .home-week .home-h{font-size:1.05rem}:root .wrap.home-wrap .home-week .home-count{background:var(--c-home-count-bg);color:var(--c-home-week-ink)}:root .wrap.home-wrap .home-range{margin-top:2px;color:var(--c-home-range-ink);font-size:.72rem}:root .wrap.home-wrap .home-more{display:flex;width:100%;min-height:38px;align-items:center;justify-content:flex-start;gap:3px;color:var(--c-primary-dark);font-size:.72rem;font-weight:650;white-space:nowrap}:root .wrap.home-wrap .home-week .home-more{width:auto;min-height:44px;justify-content:flex-end}:root .wrap.home-wrap .home-days{padding:0 10px 4px}:root .wrap.home-wrap .home-day{display:grid;grid-template-columns:60px minmax(0,1fr);gap:8px;margin:0;padding:3px 0;border-bottom:1px solid var(--c-line);font-size:inherit}:root .wrap.home-wrap .home-day:last-child{border-bottom:0}:root .wrap.home-wrap .home-day.today{margin-inline:-10px;padding-inline:10px;background:var(--c-surface-home-hover)}:root .wrap.home-wrap .home-day-label{min-width:0;padding-top:3px;font-size:.7rem;line-height:1.3}:root .wrap.home-wrap .home-day-label strong,:root .wrap.home-wrap .home-day-label>span{display:block}:root .wrap.home-wrap .home-day-label strong{font-weight:700;overflow-wrap:anywhere}:root .wrap.home-wrap .home-day-label>span{color:var(--c-ink-muted);font-size:.66rem}:root .wrap.home-wrap .home-day.today .home-day-label strong{color:var(--c-primary-dark)}:root .wrap.home-wrap .home-day-entries{min-width:0}:root .wrap.home-wrap .home-e{display:grid;grid-template-columns:35px minmax(0,1fr);gap:6px;align-items:baseline;min-height:23px;margin:0;padding:2px 0;font-size:inherit}:root .wrap.home-wrap .home-e-time{color:var(--c-ink-muted);font-size:.68rem;font-variant-numeric:tabular-nums}:root .wrap.home-wrap .home-e-symbol{color:var(--c-home-symbol)}:root .wrap.home-wrap .home-e-time-empty{min-height:1em}:root .wrap.home-wrap .home-e-content{display:flex;min-width:0;flex-wrap:wrap;align-items:baseline;gap:0 4px}:root .wrap.home-wrap .meal-plan-icon{font-size:.78rem}:root .wrap.home-wrap .home-e-name{min-width:0;overflow-wrap:anywhere;font-size:.8rem}:root .wrap.home-wrap .home-e-owner{flex:0 0 auto;font-size:.68rem}:root .wrap.home-wrap .home-e-owner:before{content:" \b7  "}:root .wrap.home-wrap .home-empty{margin:8px 10px 12px;color:var(--c-ink-muted);font-size:.76rem}:root .wrap.home-wrap .home-sec .err{margin:8px 10px}:root .wrap.home-wrap .home-list-body{padding:0 10px 2px}:root .wrap.home-wrap .home-list-row{display:grid;grid-template-columns:minmax(0,1fr);gap:4px;min-height:52px;margin:0;padding:8px 0;border:0;border-top:1px solid var(--c-line);border-radius:0;background:transparent}:root .wrap.home-wrap .home-list-row:hover{background:var(--c-surface-2)}:root .wrap.home-wrap .home-list-row .home-row-name{min-width:0;overflow:visible;overflow-wrap:anywhere;white-space:normal;font-size:.76rem;font-weight:700}:root .wrap.home-wrap .home-list-meta{display:flex;align-items:center;justify-content:space-between;flex-direction:row-reverse;gap:6px}:root .wrap.home-wrap .home-list-count{color:var(--c-ink-muted);font-size:.68rem;font-variant-numeric:tabular-nums;white-space:nowrap}:root .wrap.home-wrap .home-progress{display:block;flex:0 0 44px;width:44px;height:4px;margin:0;overflow:hidden;border-radius:4px;background:var(--c-surface-2)}:root .wrap.home-wrap .home-progress>span{display:block;height:100%;border-radius:inherit;background:var(--c-primary-dark)}:root .wrap.home-wrap .home-plan-list{padding:0 10px 2px}:root .wrap.home-wrap .home-plan-row{display:flex;align-items:center;gap:6px;min-height:64px;margin:0;padding:10px 0;border:0;border-top:1px solid var(--c-line);border-radius:0;background:transparent}:root .wrap.home-wrap .home-plan-row:hover{background:var(--c-surface-2)}:root .wrap.home-wrap .home-plan-icon{width:15px;height:19px;flex:0 0 15px;fill:none;stroke:var(--c-primary-dark);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}:root .wrap.home-wrap .home-plan-copy{display:grid;min-width:0;gap:1px}:root .wrap.home-wrap .home-plan-row .home-row-name{min-width:0;overflow:visible;overflow-wrap:anywhere;white-space:normal;font-size:.76rem;font-weight:700}:root .wrap.home-wrap .home-plan-row .home-row-meta{flex:0 0 auto;color:var(--c-ink-muted);font-size:.68rem}:root .users .acc-item{border-radius:14px;box-shadow:0 2px 8px var(--c-row-shadow)}:root .users .acc-head{min-height:56px}:root .users .acc-body{padding-top:16px;padding-bottom:16px}:root .users .tag-admin{background:var(--c-admin-tag-bg);color:var(--c-admin-tag-ink)}:root .users .tag-active{background:var(--c-ok-bg);color:var(--c-ok-ink)}:root .users .tag-locked{background:var(--c-err-bg);color:var(--c-err-ink)}@media(min-width:640px){.wrap{padding-top:36px}.wrap.login{padding:32px 20px}:root .wrap.home-wrap{padding:12px 16px 24px}:root .wrap.home-wrap .home-overview{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:12px}:root .wrap.home-wrap .home-week{grid-column:1}:root .wrap.home-wrap .home-secondary{grid-column:2;grid-template-columns:minmax(0,1fr);gap:10px}:root .wrap.home-wrap .home-week .home-head{padding-inline:12px}:root .wrap.home-wrap .home-days{padding-inline:12px}:root .wrap.home-wrap .home-day.today{margin-inline:-12px;padding-inline:12px}:root .wrap.home-wrap .home-day{padding-block:7px}:root .wrap.home-wrap .home-e{min-height:26px}:root .wrap.home-wrap .home-e-name{font-size:.82rem}:root .wrap.home-wrap .home-secondary .home-head{padding:4px 10px}:root .wrap.home-wrap .home-secondary .home-more{width:auto;min-height:44px}:root .wrap.home-wrap .home-list-row{min-height:52px}:root .wrap.home-wrap .home-plan-row{min-height:53px}}@media(max-width:700px){.topbar{padding:10px 16px}.wrap{padding:24px 16px 104px}.wrap.list{padding-bottom:104px}.wrap.login{padding:24px 16px}.wrap.login .card{padding:28px 24px}.cards{grid-template-columns:1fr;gap:12px}:root .dlg-backdrop{padding-bottom:calc(var(--kb, 0px) + env(safe-area-inset-bottom))}:root .dlg-native{max-height:85dvh;padding:22px 18px max(20px,env(safe-area-inset-bottom));border-radius:20px 20px 0 0}:root .wrap .cal-grid .cal-day{grid-template-columns:68px minmax(0,1fr);gap:8px;padding:10px}:root .wrap .cal-both{grid-template-columns:1fr}:root .wrap .cal-cell--family{padding:8px 0 0;border-top:1px solid var(--c-line);border-left:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root .wrap>.muted:not(.home-sub){margin:8px 0 16px;padding:16px;border:1px solid var(--c-line);border-radius:12px;background:var(--c-surface)}:root .wrap .list-head{gap:10px;margin-bottom:22px;padding-bottom:14px;border-bottom:1px solid var(--c-line)}:root .wrap .list-head h2{margin:0;font-size:clamp(1.35rem,3vw,1.65rem);line-height:1.2}:root .wrap .member{min-height:56px;padding:8px 0;border-color:var(--c-line)}:root .wrap .m-role{padding:4px 9px;background:var(--c-surface-2);color:var(--c-ink-muted);font-weight:650}:root .wrap .family-role{margin-top:8px;font-size:.8rem;font-weight:600}:root .wrap .plan-title{margin-bottom:8px}:root .wrap .plan-description{margin-bottom:20px}:root .wrap .recipe-desc{margin-bottom:20px;color:var(--c-ink-muted)}:root .wrap .photo-act{gap:10px}:root .wrap .diag-status{display:inline-flex;padding:6px 10px;border-radius:999px;background:var(--c-surface-2)}:root .wrap .diag-photo{border-radius:14px;box-shadow:0 4px 16px var(--c-photo-shadow)}:root .wrap .diag-row{min-height:48px}:root .wrap .acc-save{padding-top:12px;border-top:1px solid var(--c-line)}:root .wrap [data-post=admin-new] input:not([type=checkbox]):not([type=hidden]){min-height:46px;padding:10px 12px;border:1px solid var(--c-line);border-radius:10px;background:var(--c-surface);color:var(--c-ink)}@media(max-width:420px){.topbar{gap:6px;padding-inline:12px}.topbar [data-nav=title]{font-size:1rem}:root .wrap .cal-grid .cal-day{grid-template-columns:58px minmax(0,1fr)}.dlg-btns:not(.dlg-btns--stack){flex-direction:column-reverse}}.wrap.login .card:hover{border-color:var(--c-line);box-shadow:0 3px 12px var(--c-card-shadow);transform:none}:root .wrap.list .btn-buy{width:44px;height:44px;min-height:44px}:root .wrap.list .ico.ico-item{width:44px;height:44px}:root .topbar app-burger .burger-menu{top:62px;right:max(16px,calc((100vw - 1120px)/2))}:root .topbar app-burger .burger-item{justify-content:flex-start}:root[data-theme=dark]{color-scheme:dark;--c-bg: #0f1216;--c-surface: #1a1f26;--c-surface-2: #242b34;--c-ink: #e6ebf2;--c-ink-muted: #98a4b3;--c-line: #2c3540;--c-primary-dark: #4477c0;--c-on-primary: #0a1420;--c-err-bg: #3a211f;--c-err-ink: #f6c9c4;--c-err-line: #6f3c37;--c-ok-bg: #14301f;--c-ok-ink: #b9eed3;--c-ok-line: #316046;--c-lock: #e0b25a;--c-bg-glow: #182231;--c-topbar-bg: rgb(26 31 38 / 92%);--c-topbar-shadow: rgb(0 0 0 / 30%);--c-hover-line: #4477c0;--c-line-hover: #3b4652;--c-focus: rgb(68 119 192 / 60%);--c-focus-soft: rgb(68 119 192 / 24%);--c-plus-shadow: rgb(0 0 0 / 40%);--c-plus-shadow-hover: rgb(0 0 0 / 55%);--c-plus-ring: rgb(15 18 22 / 88%);--c-modal-edge: rgb(255 255 255 / 12%);--c-modal-shadow: rgb(0 0 0 / 55%);--c-notif-bg: rgb(26 31 38 / 88%);--c-surface-calendar: #242b34;--c-swipe-bg: #242b34;--c-surface-tabs: #242b34;--c-surface-slot: #0f1216;--c-plan-slot-line: #2c3540;--c-surface-drop: #1d2a3c;--c-surface-proposal: #242b34;--c-surface-home: #1a1f26;--c-surface-home-hover: #242b34;--c-admin-tag-bg: #223349;--c-admin-tag-ink: #b4cff6}:root app-mealplan .plan-heading{display:flex;align-items:center;gap:8px}:root app-mealplan .plan-heading .plan-title{flex:1;min-width:0}:root app-mealplan .plan-day-tabs{display:flex;gap:7px;margin:14px 0 16px;padding:2px 1px 6px;overflow-x:auto;scrollbar-width:thin}:root app-mealplan .plan-day-tab{display:flex;flex:0 0 78px;min-width:0;min-height:58px;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:1px solid var(--c-line);border-radius:13px;background:var(--c-surface);color:var(--c-ink-muted);font:inherit;cursor:pointer}:root app-mealplan .plan-day-tab span{color:var(--c-ink);font-size:.82rem;font-weight:700;white-space:nowrap}:root app-mealplan .plan-day-tab small{font-size:.62rem;white-space:nowrap}:root app-mealplan .plan-day-tab--active{border-color:var(--c-primary);background:var(--c-primary);box-shadow:0 4px 10px var(--c-card-shadow)}:root app-mealplan .plan-day-tab--active span,:root app-mealplan .plan-day-tab--active small{color:var(--c-on-primary)}:root app-mealplan .wrap .plan-day-tabs .plan-day-add{position:static;z-index:auto;flex:0 0 58px;width:58px;height:58px;min-height:58px;border:1px dashed var(--c-primary-dark);border-radius:13px;background:var(--c-surface);box-shadow:none;color:var(--c-primary-dark);font-size:22px}:root app-mealplan .plan-day-add small{color:var(--c-ink-muted)}:root app-mealplan .plan-empty{display:grid;justify-items:center;padding:24px 16px;border:1px solid var(--c-line);border-radius:16px;background:var(--c-surface);text-align:center}:root app-mealplan .plan-empty-icon{display:grid;place-items:center;width:44px;height:44px;margin-bottom:9px;border-radius:14px;background:var(--c-surface-2);color:var(--c-primary-dark);font-size:24px}:root app-mealplan .plan-empty strong{font-size:.95rem}:root app-mealplan .plan-empty p{margin:5px 0 0;color:var(--c-ink-muted);font-size:.8rem}:root app-mealplan .plan-wrap{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start}:root app-mealplan .plan-grid{min-width:0}:root app-mealplan .wrap .plan-day{padding:14px;border:1px solid var(--c-line);border-radius:16px;background:var(--c-surface);box-shadow:0 3px 12px var(--c-card-shadow)}:root app-mealplan .wrap .plan-day[hidden]{display:none!important}:root app-mealplan .plan-day-head{display:flex;align-items:center;gap:8px;margin-bottom:12px}:root app-mealplan .plan-day-heading{flex:1;min-width:0}:root app-mealplan .plan-day-kicker{font-size:.67rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}:root app-mealplan .plan-day-title{margin:2px 0 0;font-size:1.05rem;letter-spacing:-.025em}:root app-mealplan .plan-meal-count{flex:0 0 auto;padding:5px 8px;border-radius:99px;background:var(--c-surface-2);color:var(--c-ink-muted);font-size:.65rem;font-weight:700}:root app-mealplan .wrap .plan-day-plus{position:static;flex:0 0 40px;width:40px;height:40px;font-size:22px}:root app-mealplan .plan-day-ico{flex:0 0 36px;width:36px;height:36px;font-size:18px;line-height:1}:root app-mealplan .plan-day-empty{padding:10px 2px 12px;font-size:.8rem}:root app-mealplan .wrap .plan-slot{display:flex;align-items:center;gap:8px;min-height:48px;margin-top:7px;padding:5px 8px;border:1px solid var(--c-plan-slot-line);border-radius:11px;background:var(--c-surface-slot)}:root app-mealplan .wrap .plan-slot--empty{border-style:dashed;background:var(--c-surface-2)}:root app-mealplan .plan-slot-name{flex:1;min-width:0;overflow-wrap:anywhere}:root app-mealplan .plan-slot-name--action{cursor:pointer}:root app-mealplan .plan-slot-text{flex:0 0 auto;min-height:38px;padding:5px 8px;border:0;border-radius:8px;background:transparent;color:var(--c-primary-dark);font:inherit;cursor:pointer}:root app-mealplan .plan-slot-text:hover{background:var(--c-surface)}:root app-mealplan .plan-slot-text:focus-visible{outline:3px solid var(--c-focus);outline-offset:2px}:root app-mealplan .plan-slot--drop{outline:2px solid var(--c-primary);outline-offset:-2px}:root app-mealplan .plan-mobile-library{min-width:0}:root app-mealplan .plan-ideas-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 8px}:root app-mealplan .plan-ideas-head h2{margin:0;font-size:.95rem}:root app-mealplan .plan-all-recipes{min-height:40px;padding:5px 0 5px 8px;border:0;background:transparent;color:var(--c-primary-dark);font:inherit;font-size:.72rem;font-weight:700;white-space:nowrap}:root app-mealplan .plan-ideas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}:root app-mealplan .plan-idea{display:flex;min-width:0;flex-direction:column;align-items:flex-start;padding:10px;border:1px solid var(--c-line);border-radius:13px;background:var(--c-surface);box-shadow:0 3px 10px var(--c-card-shadow)}:root app-mealplan .plan-idea-icon{font-size:18px}:root app-mealplan .plan-idea strong{display:-webkit-box;min-height:2.5em;margin-top:5px;overflow:hidden;font-size:.72rem;line-height:1.25;-webkit-box-orient:vertical;-webkit-line-clamp:2}:root app-mealplan .plan-idea-add{align-self:stretch;min-height:36px;margin-top:7px;border:0;border-radius:9px;background:var(--c-surface-2);color:var(--c-primary-dark);font:inherit;font-size:.68rem;font-weight:700;cursor:pointer}:root app-mealplan .plan-rps{min-width:0;display:flex;flex-direction:column;gap:6px}:root app-mealplan .plan-filter,:root app-mealplan .plan-picker-filter{display:flex;flex-direction:column;gap:4px;font-size:.8rem}:root app-mealplan .plan-filter select,:root app-mealplan .plan-picker-filter select{width:100%}:root app-mealplan .plan-rp{padding:8px 10px;border:1px solid var(--c-line);border-radius:10px;background:var(--c-surface-2);font-weight:600;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}:root app-mealplan .plan-rp--lifted{opacity:.35}:root app-mealplan .plan-recipe-picker{width:min(520px,calc(100vw - 24px));max-height:min(82dvh,720px);overflow:auto}:root app-mealplan .plan-picker-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}:root app-mealplan .plan-picker-head h2{margin:0;font-size:1.2rem}:root app-mealplan .plan-picker-head p{margin:3px 0 10px;font-size:.8rem}:root app-mealplan .plan-recipe-picker input[type=search]{display:block;width:100%;margin:8px 0;padding:10px 12px;border:1px solid var(--c-line);border-radius:10px;background:var(--c-bg);color:var(--c-ink);font:inherit}:root app-mealplan .plan-picker-filter{margin:8px 0}:root app-mealplan .plan-recipe-list{max-height:min(42dvh,360px);overflow-y:auto;border-top:1px solid var(--c-line)}:root app-mealplan .plan-recipe-choice{display:flex;align-items:center;gap:10px;width:100%;min-height:56px;padding:7px 4px;border:0;border-bottom:1px solid var(--c-line);background:var(--c-surface);color:var(--c-ink);font:inherit;text-align:left;cursor:pointer}:root app-mealplan .plan-recipe-choice:hover{background:var(--c-surface-2)}:root app-mealplan .plan-recipe-choice:focus-visible{outline:3px solid var(--c-focus);outline-offset:-3px}:root app-mealplan .plan-recipe-icon{display:grid;flex:0 0 38px;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--c-surface-2)}:root app-mealplan .plan-recipe-copy{flex:1;min-width:0}:root app-mealplan .plan-recipe-copy strong,:root app-mealplan .plan-recipe-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:root app-mealplan .plan-recipe-copy strong{font-size:.85rem}:root app-mealplan .plan-recipe-copy small{min-height:1em;color:var(--c-ink-muted);font-size:.68rem}:root app-mealplan .plan-recipe-plus{color:var(--c-primary-dark);font-size:1.2rem}:root app-mealplan .plan-picker-empty{padding:16px 4px;text-align:center;font-size:.85rem}:root app-mealplan .plan-picker-actions{display:flex;flex-wrap:wrap;gap:8px;padding-top:10px}:root app-mealplan .plan-picker-actions .btn-ghost{flex:1 1 auto;font-size:.8rem}:root app-mealplan .plan-ghost{position:fixed;z-index:1000;max-width:220px;transform:translate(-50%,-50%);pointer-events:none;padding:8px 10px;border:1px solid var(--c-primary);border-radius:10px;background:var(--c-surface-2);box-shadow:0 6px 18px var(--c-drag-shadow)}@media(max-width:899px){:root app-mealplan .plan-rps{display:none}}@media(min-width:640px)and (max-width:899px){:root app-mealplan .plan-wrap{grid-template-columns:minmax(0,1.15fr) minmax(220px,.85fr);gap:16px}}@media(min-width:900px){:root app-mealplan .plan-wrap{grid-template-columns:minmax(0,1fr) minmax(230px,.65fr);gap:20px}:root app-mealplan .plan-mobile-library{display:none}}
