#calm-launch{position:fixed;right:22px;bottom:24px;z-index:80;border:1px solid #65705a;background:#f5f2e9;color:#444d3a;border-radius:40px;padding:13px 19px;box-shadow:0 4px 20px #343b2b14;font:14px/1.2 Arial,sans-serif;cursor:pointer;display:flex;align-items:center;gap:10px;min-height:48px}#calm-launch[hidden]{display:none}#calm-launch span{font-size:25px}#calm-panel{box-sizing:border-box;width:min(470px,calc(100vw - 28px));max-width:100%;height:min(760px,calc(100dvh - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid #d7d3c6;border-radius:22px;background:#f5f2e9;color:#383c31;box-shadow:0 20px 90px #19210c33;margin:auto 20px 20px auto;overflow:hidden;font:15px/1.6 Arial,sans-serif}#calm-panel[open]{display:flex;flex-direction:column}#calm-panel::backdrop{background:#242b203b;backdrop-filter:blur(3px)}#calm-panel *{box-sizing:border-box}#calm-panel header{display:flex;align-items:center;justify-content:space-between;padding:23px 22px 17px;border-bottom:1px solid #d9d5c9;flex:none}#calm-panel h2{font:29px/1.1 Georgia,serif;letter-spacing:-.5px;margin:8px 0 0}#calm-panel h3{font:24px/1.2 Georgia,serif;margin:16px 0 9px}#calm-panel .calm-eyebrow{font:10px/1.4 Arial,sans-serif;letter-spacing:1.7px;color:#68715e}#calm-panel button{font:inherit;cursor:pointer;min-height:44px;border:1px solid #c8ccbc;border-radius:12px;padding:10px 13px;background:#e8ebdf;color:#3e4935;transition:background .2s}#calm-panel button:hover{background:#dce2d0}#calm-panel button:focus-visible,#calm-launch:focus-visible,#calm-panel a:focus-visible{outline:2px solid #596b46;outline-offset:3px}#calm-panel button:disabled{opacity:.55;cursor:wait}#calm-panel #calm-close{border:0;background:transparent;font-size:27px;min-width:44px}#calm-scroll{overflow-y:auto;overscroll-behavior:contain;flex:1;padding:0 22px 18px;min-height:0}#calm-panel p{margin:12px 0}#calm-panel nav{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}#calm-panel nav button{font-size:12px;padding:8px 10px;border-radius:30px}#calm-panel label{display:block;margin:13px 0 6px;font-size:13px}#calm-panel select,#calm-panel input{width:100%;min-height:46px;border:1px solid #c9cdbe;background:#fcfaf4;color:#383c31;border-radius:9px;padding:10px;font:16px/1.3 Arial,sans-serif}#calm-finder>button{width:100%;margin-top:16px}#calm-panel footer{flex:none;padding:12px 22px max(12px,env(safe-area-inset-bottom));border-top:1px solid #d9d5c9;background:#f5f2e9}#calm-panel .calm-compose{display:flex;gap:8px}#calm-panel .calm-compose input{min-width:0}#calm-panel .calm-bottom{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:9px}#calm-panel .calm-bottom a{color:#536345;font-size:12px}#calm-panel .calm-bottom button{font-size:11px;background:transparent;border:0;padding:5px;min-height:36px}#calm-panel .calm-small{font-size:10px;color:#6f7465;margin:3px 0 0}#calm-panel .calm-message{padding:14px;background:#e9ecdf;border-radius:15px 15px 15px 3px;white-space:pre-wrap;overflow-wrap:anywhere}#calm-panel .calm-message.user{background:#e7e0d2;border-radius:15px 15px 3px 15px;margin-left:25px}#calm-panel .calm-results article{border:1px solid #c8cebb;border-radius:15px;padding:15px;margin-top:12px;background:#faf8f1}#calm-panel .calm-results h3{font-size:22px;margin-top:0}#calm-panel .calm-results p{font-size:13px}#calm-panel .calm-results strong{font-size:14px;display:block;margin-bottom:10px}#calm-panel .calm-results button{width:100%}#calm-status{font-size:12px;color:#59674c}#calm-verify{margin-top:8px}#calm-panel .calm-orb{height:170px;display:grid;place-items:center}#calm-panel .calm-orb i{display:block;width:100px;height:100px;border-radius:50%;background:radial-gradient(circle,#d8dfc5,#e9ecde);border:1px solid #a6b18f;box-shadow:0 0 0 12px #dce3cb55,0 0 0 24px #dce3cb22;animation:calm-unfold 8s ease-in-out infinite}#calm-panel .calm-orb.paused i{animation-play-state:paused}@keyframes calm-unfold{50%{transform:scale(1.13);opacity:.8}}@media(max-width:700px){#calm-launch{bottom:calc(84px + env(safe-area-inset-bottom));right:14px;padding:10px 14px;font-size:12px}#calm-panel{margin:auto;width:calc(100vw - 20px);height:calc(100dvh - 20px);max-height:calc(100dvh - 20px);border-radius:18px}#calm-panel header{padding:18px 17px 14px}#calm-scroll{padding:0 17px 14px}#calm-panel footer{padding-left:17px;padding-right:17px}#calm-panel h2{font-size:26px}}@media(prefers-reduced-motion:reduce){#calm-panel .calm-orb i{animation:none}#calm-panel button{transition:none}}

/* Companion navigation and platform-independent icons. */
#calm-launch .calm-spinner{display:inline-block;width:19px;height:19px;flex:none;border:2px dotted currentColor;border-radius:50%;animation:calm-clockwise 12s linear infinite}
@keyframes calm-clockwise{to{transform:rotate(360deg)}}
#calm-panel nav{flex:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0;padding:12px 16px;border-bottom:1px solid #d9d5c9;background:#f5f2e9}
#calm-panel nav button{min-width:0;border-radius:10px;background:transparent;border:1px solid transparent;padding:11px 5px;text-align:center;line-height:1.35}
#calm-panel nav button strong{display:block;font-size:12px;font-weight:500}
#calm-panel nav button span{display:block;font-size:10px;margin-top:5px;opacity:.8}
#calm-panel nav button[aria-pressed="true"]{background:#59664e;color:#fff;border-color:#59664e;box-shadow:inset 0 -3px 0 #c5cdb8}
#calm-panel .calm-privacy{font-size:12px;line-height:1.6;color:#646c5b}
#calm-panel .flow-arrow{display:inline-block;width:17px;height:17px;vertical-align:middle;margin-left:6px;flex:none}
#calm-panel #calm-log[hidden]{display:none}
@media(prefers-reduced-motion:reduce){#calm-launch .calm-spinner{animation:none}}
/* Mobile experience v6 — shared type roles and semantic feedback. */
:root{--osv-body:"Segoe UI",Arial,sans-serif;--osv-text:#2f3130;--osv-error:#8a3030;--osv-success:#3f5c43}
body{font-family:var(--osv-body);font-weight:400;color:var(--osv-text)}
#modal input,#modal select,#modal textarea,#calm-panel input,#calm-panel select{font-family:var(--osv-body);font-size:16px}
#modal .btn,#modal .choice,#calm-panel button{font-family:var(--osv-body);font-size:15px;font-weight:500}
#modal h3,#calm-panel h3{font:26px/1.2 Georgia,serif;letter-spacing:-.3px}
#modal .formlabel,#modal .field-help,#modal .muted,#calm-panel .calm-privacy{font-size:14px;line-height:1.5}
#modal .addon-copy{font-size:16px}#modal .addon-copy small{font-size:13px}#modal .premium-addon>strong{font-size:15px}
#modal #error,#modal .error,#eventError,.requirement-needed{color:var(--osv-error);font-weight:600;font-size:14px;line-height:1.4}
.requirement-ready{color:var(--osv-success);font-weight:500}#customMinimum:empty,#error:empty{display:none}
#customMinimum{margin:4px 0 0;font-size:14px;line-height:1.4}.dock-status{flex:1;min-width:0}.dock-summary{font-size:16px!important;font-weight:600}
#modal button:disabled,#calm-panel button:disabled{opacity:1;background:#e0e0d7;color:#64685d;border-color:#c5c8be;cursor:not-allowed}
#modal .summary-duration,#modal .summary-included{display:none}#modal .summarybox{font-size:15px;line-height:1.5;padding:12px 14px}
.date-shortcuts{display:flex;gap:8px;margin:8px 0}.date-shortcuts button{min-height:44px;padding:8px 16px}.slot-group{grid-column:1/-1;flex-basis:100%;margin:12px 0 0;font:600 14px/1.4 var(--osv-body)}
#paymentEmailField{margin:16px 0}#paymentEmail{width:100%}
#calm-panel{font:16px/1.5 var(--osv-body)}#calm-panel header{padding:10px 14px}#calm-panel h2{font-size:24px;margin:0}#calm-panel .calm-eyebrow{display:none}
#calm-panel nav{padding:6px 10px;gap:4px}#calm-panel nav button{padding:8px 4px;min-height:44px}#calm-panel nav button strong{font-size:14px}#calm-panel nav button span{display:none}
#calm-panel .calm-intro{display:none}#calm-panel footer{padding:8px 14px max(8px,env(safe-area-inset-bottom))}#calm-panel #calm-form>label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
#calm-panel .calm-help>summary{font-size:13px;min-height:30px;padding-top:6px;cursor:pointer;color:#4d5944}#calm-panel .calm-bottom a,#calm-panel .calm-bottom button,#calm-panel .calm-small{font-size:13px;color:#4d5944}#calm-panel .calm-bottom button{min-height:44px}
#calm-panel .calm-message{font-size:16px;padding:12px;margin:12px 0}#calm-panel .calm-results article{padding:12px}#calm-panel .calm-results h3{font-size:22px}#calm-panel .calm-results p{font-size:14px}#calm-panel .calm-results strong{font-size:16px}#calm-status{font-size:14px}#calm-status:empty{display:none}#calm-verify:empty{margin:0}
@media(max-width:700px){#calm-panel{width:calc(100vw - 12px);height:calc(100dvh - 12px);max-height:calc(100dvh - 12px);border-radius:16px}#calm-scroll{padding:0 14px 12px}#calm-launch{padding:9px 12px;min-height:44px;font-size:12px;right:10px}#modal .dialog-actions{gap:10px;flex-wrap:wrap}#modal .dock-status{flex-basis:100%}#modal .enhance-head{margin-top:20px}#modal .enhance-head h3{font-size:26px}.collection-head{padding-top:32px;padding-bottom:22px}.card h3{font-size:27px}.card-actions .btn{font-size:15px}}
#calm-launch .calm-launch-label{font:inherit}#modal .summarybox{font-size:15px!important;padding:12px 14px!important;margin-bottom:16px!important}
#modal .error{border-left-color:var(--osv-error)}
@media(max-width:600px){#rituals{padding-top:40px;padding-bottom:48px}#rituals .section-head h2{font-size:36px}#rituals .section-head p{margin-top:14px;font-size:16px;line-height:1.5}#rituals .section-head{margin-bottom:18px}#rituals .filters{gap:20px;margin-bottom:18px;overflow-x:auto;flex-wrap:nowrap}#rituals .filter{font-size:14px;min-height:44px;flex:none}#rituals .cards{gap:30px}.calm-launch-compact .mobilebar>div{visibility:hidden}#calm-launch.compact{bottom:calc(14px + env(safe-area-inset-bottom));left:14px;right:auto;padding:10px 13px}.card-actions .btn{font-size:15px}.collection-shortcuts{gap:10px}}
@media(max-width:600px){#rituals .filters{display:flex;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;height:auto;max-height:none;padding-bottom:4px}#rituals .filter{margin-bottom:0;white-space:nowrap}}
