/* Existing public calendar/list components; shopping actions keep their blue palette. */
#ow .pd-intro{margin:0 auto 12px;max-width:640px;line-height:1.6;font-size:14px;color:#4e6651;text-align:center;}
#ow .pd-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;max-width:100%;box-sizing:border-box;padding:9px 13px;min-height:40px;border-radius:8px;white-space:normal;text-decoration:none;line-height:1.4;font-size:13px;}
#ow .pd-shop-link{background:#4f9eff;color:#fff;border:1px solid #4f9eff;}
#ow .pd-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 12px;text-align:center;margin:12px 0;}
#ow .pd-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 14px;}
#ow .pd-controls label{font-size:13px;}
#ow .pd-controls select{min-width:0;max-width:100%;box-sizing:border-box;min-height:40px;padding:8px;border:1px solid #cfe2ff;border-radius:8px;background:#fff;color:#333;}
#ow .pd-note,#ow #pd-status{clear:both;font-size:12px;line-height:1.6;color:#65717e;margin:10px 0;}
#ow .pd-note{text-align:center;}
#ow #pd-status:empty{display:none;}
#ow #pd-empty{clear:both;font-size:14px;}
#ow .ow-sl-cat[data-cat="plan"] .ow-sl-cath{color:#2875ce;border-color:#4f9eff;}
#ow .pd-food-group .ow-sl-cath{color:#2875ce;border-color:#4f9eff;}
#ow .pd-food-group[hidden]{display:none!important;}
#ow .ow-sl-name{overflow-wrap:anywhere;min-width:0;}
#ow .ow-sl-qty{font-weight:600;color:#4e6651;margin-right:6px;}
#ow .ow-sl-buy,#ow .ow-sl-home{padding:0;margin:0;min-width:24px;min-height:24px;flex-basis:24px;}
#ow .ow-sl-home{background:none;border:0;}
#ow .ow-sl-row:not(.ow-on):not(.ow-home) .ow-sl-buy{border-color:#00890a;}
#ow .ow-sl-row:not(.ow-on):not(.ow-home) .ow-sl-buy:hover:after{color:#00890a;}
#ow #ow-sl .ow-sl-row .ow-sl-buy{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;flex:0 0 26px;border:2px solid #00890a;border-radius:5px;background:#fff;box-sizing:border-box;line-height:1;color:#00890a;}
#ow #ow-sl .ow-sl-row .ow-sl-buy::after{content:none !important;}
#ow #ow-sl .ow-sl-buy svg{width:16px;height:16px;display:block;flex:none;}
#ow #ow-sl .ow-sl-row:not(.ow-on):not(.ow-home) .ow-sl-buy svg{opacity:0;}
#ow #ow-sl .ow-sl-row:not(.ow-on):not(.ow-home) .ow-sl-buy:hover svg,
#ow #ow-sl .ow-sl-row:not(.ow-on):not(.ow-home) .ow-sl-buy:focus-visible svg{opacity:.6;}
#ow #ow-sl .ow-sl-row.ow-on .ow-sl-buy,#ow #ow-sl .ow-sl-row.ow-home .ow-sl-buy{border-color:transparent;background:none;color:#888;}
#ow #ow-sl .ow-sl-row.ow-on .ow-sl-buy:hover,#ow #ow-sl .ow-sl-row.ow-home .ow-sl-buy:hover{color:#00890a;}
#ow .ow-sl-buy:focus-visible,#ow .ow-sl-home:focus-visible,#ow .pd-link:focus-visible{outline:2px solid #2875ce;outline-offset:3px;}
#pc-calendar-wrapper .pd-dose{clear:both;display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding-top:7px;font-size:12px;}
#pc-calendar-wrapper .pd-dose .mo-cal-dose{margin:0;max-width:100%;}
#pc-calendar-wrapper .pd-dose .mo-cal-dose-lbl{min-width:0;overflow-wrap:anywhere;margin:0 !important;}
#pc-calendar-wrapper .pd-dose .mo-cal-dose-btn{width:28px;height:28px;line-height:26px;}
#pc-calendar-wrapper .pd-dose .mo-cal-dose-btn:disabled{opacity:.35;cursor:default;}
#pc-calendar-wrapper .pd-dose input{flex:2 0 10px;width:22px;min-width:0;box-sizing:border-box;height:28px;border:0;border-radius:0;background:transparent;color:var(--mo-ink);padding:0 2px;font-size:13px;margin:0;appearance:textfield;-moz-appearance:textfield;}
#pc-calendar-wrapper .pd-dose input::-webkit-inner-spin-button,#pc-calendar-wrapper .pd-dose input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0;}
#pc-calendar-wrapper .pd-dose input:invalid{outline:1px solid #c0392b;}
#ow .pd-more{clear:both;display:flow-root;box-sizing:border-box;width:100%;border-top:1px solid #d9ecdb;border-bottom:1px solid #d9ecdb;}
#ow .pd-more > summary{padding:20px 24px;color:#3f6a43;font-size:16px;font-weight:600;cursor:pointer;}
#ow .pd-more > summary:focus-visible{outline:2px solid #00890a;outline-offset:-3px;}
#ow #ow-cal{padding-top:24px;}
@media(max-width:560px){#ow .pd-controls{align-items:stretch;}#ow .pd-controls label,#ow .pd-controls select{width:100%;}#ow .ow-demo-frame{padding:10px;}#pc-calendar-wrapper .pd-dose .mo-cal-dose-btn{width:32px;height:32px;line-height:30px;}#pc-calendar-wrapper .pd-dose input{height:32px;}}
body.pd-picker-open{overflow:hidden;}
body.pc-dragging{overflow-anchor:none;user-select:none;}
#pd-picker .pd-method{flex:none;margin:0;padding:8px 16px 0;font-size:11px;line-height:1.4;color:#777;font-weight:400;overflow-wrap:anywhere;}
#pd-picker .pd-method-tap{display:none;}
#pd-picker .pd-pick{cursor:grab;touch-action:pan-y;}
@media(max-width:767px){#pd-picker .pd-method-drag{display:none;}#pd-picker .pd-method-tap{display:inline;}#pd-picker .pd-pick{cursor:pointer;}}
#pd-picker{box-sizing:border-box;width:min(680px,calc(100% - 24px));max-height:calc(100dvh - 32px);padding:0;border:1px solid #c7e6ca;border-radius:14px;color:#304c35;background:#fff;overflow:hidden;}
#pd-picker::backdrop{background:rgba(0,0,0,.45);}
#pd-picker[open]{display:flex;flex-direction:column;}
#pd-picker .pd-picker-scroll{min-height:0;overflow:auto;overscroll-behavior:contain;}
#pd-picker .pd-picker-head{display:flex;flex-shrink:0;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid #e2f5e3;}
#pd-picker h3{flex:1;min-width:0;margin:0;font-size:16px;line-height:1.4;}
#pd-picker .pd-picker-close{display:inline-flex;align-items:center;justify-content:center;flex:0 0 36px;width:36px;height:36px;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;color:#9a94a6;font-size:26px;line-height:1;cursor:pointer;}
#pd-picker .pd-picker-close:hover{background:none;color:#54505e;}
#pd-picker .pd-picker-list{padding:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(0,min(var(--pd-card-width,220px),100%)));justify-content:center;align-items:stretch;}
#pd-picker .pd-pick,.pc-ghost.pd-pick{display:grid;grid-template-columns:minmax(0,1fr) 28px;text-align:left;align-items:center;gap:4px 8px;padding:10px 12px;border:1.5px solid var(--dec-bo);border-radius:9px;background:var(--dec-bg);color:var(--dec-fg);font:inherit;line-height:1.35;white-space:normal;}
#pd-picker .pd-pick span,.pc-ghost.pd-pick span{font-size:14px;font-weight:600;overflow-wrap:anywhere;}
#pd-picker .pd-pick small,.pc-ghost.pd-pick small{grid-column:1;font-size:12px;color:#555;}
#pd-picker .pd-pick b,.pc-ghost.pd-pick b{grid-column:2;grid-row:1 / 3;font-size:24px;text-align:center;}
#pd-picker button:focus-visible,#pc-calendar-wrapper .pc-move-slot:focus-visible{outline:2px solid #00890a;outline-offset:2px;}
#ow .pd-catalogue{clear:both;padding-top:16px;text-align:center;font-size:13px;}
#ow .pd-catalogue p{margin:8px auto;max-width:680px;line-height:1.5;}
#ow #pd-add-open{background:#e5810a;border:1px solid #e5810a;color:#fff;}
#ow #pd-add-open:hover{background:#f78e0c;border-color:#f78e0c;}
#ow .pd-signup{background:#02b30f;border:1px solid #02b30f;color:#fff;font-weight:600;}
#ow .pd-signup:hover{background:#029b0d;border-color:#029b0d;color:#fff;}
#pd-picker .pd-catalogue{padding:4px 14px 16px;}
#ow #pc-calendar-wrapper .pd-empty-meal{display:none!important;}
#ow #pd-add-open[hidden]{display:none;}
body.pd-placing #ow>.ow-sec:not(#ow-cal),body.pd-placing #ow>details,body.pd-placing #ow-cal>.ow-in,body.pd-placing .pd-catalogue{display:none;}
body.pd-placing #ow #ow-cal{padding-top:8px;padding-bottom:100px;}
body.pd-placing #pc-calendar-wrapper .pd-dose{display:none;}
#pc-calendar-wrapper .pc-move-slot{box-sizing:border-box;width:100%;white-space:normal;font:inherit;}
#pc-calendar-wrapper .pc-meal-sum[hidden],#pc-calendar-wrapper .pc-day-sum[hidden]{display:none!important;}
body.pd-placing #pc-calendar-wrapper .day-box{scroll-margin-top:70px;}
