.ick-panel{display:none;position:fixed;inset:0;background:var(--bg);z-index:300;overflow:auto;padding:calc(12px + env(safe-area-inset-top)) 16px calc(24px + env(safe-area-inset-bottom));font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink)}
.ick-panel.show{display:block}.ick-panel header,.panel-body{max-width:620px;margin:auto}.ick-panel header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.ick-panel h1{font-size:24px}.ick-panel h2{font-size:18px;margin-bottom:12px}.ick-panel p{line-height:1.5;margin:12px 0}.ick-panel pre{font-family:inherit;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55;font-size:14px}.ick-panel fieldset{border:0;padding:16px 0}.ick-panel legend{font-weight:600}.field{display:block;margin:14px 0;font-weight:600}.field input,.field textarea,.date-pair input,.med-row input,#datePickInput,#noteDateInput{display:block;width:100%;font:inherit;font-size:16px;padding:12px;border-radius:10px;border:1px solid #c8c8cc;background:#fff;color:#111;margin-top:7px;box-sizing:border-box}.field textarea{min-height:95px}.date-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.check{display:flex;align-items:center;gap:12px;padding:10px 0;min-height:44px}.check input{width:22px;height:22px}.primary,.secondary{display:block;width:100%;font:inherit;font-weight:600;padding:14px;border-radius:12px;border:0;margin:10px 0;min-height:48px}.primary{background:#0a6ed1;color:#fff}.secondary{background:#e7e8ed;color:#17221b}.custom-sym{display:inline-flex;align-items:center;gap:7px;background:#e5f1fc;border-radius:10px;padding:6px;font-size:14px}.custom-sym button{font:inherit;border:0;background:#fff;border-radius:6px;padding:8px;min-height:40px}.med-row{border-bottom:1px solid #ddd;padding:12px 0}.med-row label{display:block;font-size:14px;margin:8px 0}.phone{max-width:100%}#localLock{display:none;position:fixed;inset:0;background:#f2f2f7;z-index:1000;align-items:center;justify-content:center;padding:30px;font-family:-apple-system,sans-serif;color:#111}#localLock.show{display:flex}#localLock>div{width:100%;max-width:320px}#localPin{display:block;width:100%;padding:15px;font-size:22px;border:1px solid #bbb;border-radius:12px;margin:12px 0;box-sizing:border-box}#localLockMsg{min-height:30px;color:#9b1c17}#reportPreview{background:#fff;border-radius:14px;padding:16px;margin:16px 0}#reportActions[hidden]{display:none}input[type=date],input[type=datetime-local]{min-width:0;max-width:100%}#noteTimeWrap{gap:10px;flex-wrap:wrap}#noteTimeWrap input{flex:1;min-width:130px}.caption{display:none}
.date-pair{grid-template-columns:repeat(2,minmax(0,1fr))}.date-pair label{min-width:0}.primary:disabled{opacity:.55}.ick-panel .backbtn{flex-shrink:0}@media(max-width:420px){.date-pair{grid-template-columns:1fr}}#exactDuration{width:100%;font:inherit;font-size:16px;padding:12px;border:1px solid #c8c8cc;border-radius:10px;margin:10px 0;box-sizing:border-box}
.mod-med{color:#0a6ed1}.mod-med .mi{background:#e5f1fc}.form-select{display:block;box-sizing:border-box;width:100%;font:inherit;font-size:16px;padding:13px;border:1px solid #c8c8cc;border-radius:10px;background:#fff;color:#111}.med-actions{display:flex;gap:8px;flex-wrap:wrap}.med-actions>*{flex:1;min-width:120px}.med-add[hidden]{display:none}.med-history-item p{margin:8px 0}.med-history-head{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.med-history-head span{font-size:13px;color:#555}.med-relief,.med-days{border:0;padding:12px 0;margin:0}.med-relief{display:flex;flex-wrap:wrap;gap:8px}.med-relief label{display:flex;align-items:center;gap:8px;min-height:44px;padding:8px}.med-days{display:flex;flex-wrap:wrap;gap:7px}.med-days legend{margin-bottom:12px;font-weight:600}.med-day{display:flex;align-items:center;gap:6px;min-height:44px;padding:7px 8px;border:1px solid #c8c8cc;border-radius:25px;background:#fff;cursor:pointer}.med-day:has(input:checked){background:#e5f1fc;border-color:#0a6ed1}.med-day input{appearance:none;-webkit-appearance:none;border:1.5px solid #888;width:18px;height:18px;border-radius:50%;margin:0;flex-shrink:0}.med-day input:checked{background:#0a6ed1;border:4px solid #fff;outline:1.5px solid #0a6ed1}.sr-med{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.ick-panel input[type=radio]{width:20px;height:20px}#medicationBanner{position:fixed;z-index:600;top:calc(10px + env(safe-area-inset-top));left:12px;right:12px;margin:auto;max-width:440px;background:#f7fafc;color:#111;border:1px solid #c8c8cc;border-radius:16px;box-shadow:0 6px 24px #0003;padding:15px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-family:-apple-system,sans-serif}#medicationBanner[hidden]{display:none}#medicationBanner>div{flex:1;min-width:180px}#medicationBanner p{margin:5px 0}#medicationBanner .secondary{width:auto;margin:0;padding:10px}#medReminderPanel{z-index:310}#medLogPanel{z-index:310}
.ick-panel{position:absolute;inset:54px 0 0;padding:0;overflow:hidden;font-family:inherit}
.ick-panel.show{display:flex;flex-direction:column}
.ick-panel header{width:100%;box-sizing:border-box;flex:none;padding:12px 20px 14px;margin:0;gap:12px;background:var(--bg)}
.ick-panel h1{font-size:30px;letter-spacing:-.7px;font-weight:800;margin:0;line-height:1.2}
.ick-panel .panel-body{width:100%;max-width:none;box-sizing:border-box;overflow:auto;flex:1;min-height:0;padding:0 16px calc(22px + env(safe-area-inset-bottom));overscroll-behavior:contain}
.ick-panel h2{font-size:22px;font-weight:800;letter-spacing:-.35px;margin:22px 4px 12px}
.ick-panel .card h2{font-size:19px;margin:0 0 14px}
.ick-panel .card{border-radius:20px}
.ick-panel .backbtn{height:40px;width:40px;min-height:40px;margin:0}
.ick-panel .field{font-size:15px}
.ick-panel .step .lbl{font-size:16px;font-weight:750}
.ick-panel .form-select,.ick-panel .field input,.ick-panel .field textarea{min-width:0;max-width:100%;min-height:48px}
.ick-panel .med-actions>*{min-width:0}
.modbtn.mod-med{background:linear-gradient(160deg,#ffab55,#c95b11);color:#fff}
.modbtn.mod-med .mi{background:none}
.modbtn.mod-sleep{background:linear-gradient(160deg,#7886ef,#3846a6)}
.mobile-hero{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;width:100%;min-height:164px;border:0;border-radius:22px;padding:22px 18px;color:#fff;font:inherit;text-align:center;cursor:pointer;box-shadow:0 10px 20px #c95b112a}
.mobile-hero strong{font-size:24px;font-weight:800;letter-spacing:-.5px}
.mobile-hero>span:last-child{font-size:15px;font-weight:650}
.hero-icon{font-size:36px;line-height:1.25}
.medication-hero{background:linear-gradient(160deg,#ffab55,#c95b11)}
.sleep-hero{background:linear-gradient(160deg,#7886ef,#3846a6);box-shadow:0 10px 20px #3846a62a}
.reminder-cta{border-radius:18px;background:#fff;color:#a44309;box-shadow:0 1px 2px #0001;min-height:54px;margin:14px 0 22px;font-size:16px}
.notification-settings{margin-top:24px;font-size:14px}
.notification-settings summary{font-size:16px;font-weight:700;min-height:44px;display:flex;align-items:center;cursor:pointer}
.notification-settings summary::after{content:'⌄';margin-left:auto;font-size:20px}
.notification-settings .secondary{font-size:14px;min-height:44px}
#medReminders{background:#fff;border-radius:20px;padding:0 16px;margin-bottom:16px}
#medReminders>.help{padding:14px 0}
.reminder-list-item{display:flex;align-items:center;gap:10px;padding:16px 0;border-bottom:1px solid #ececf0}
.reminder-list-item:last-child{border-bottom:0}
.reminder-info{flex:1;min-width:0;overflow-wrap:anywhere}
.reminder-info strong{display:block;font-size:17px;font-weight:750}
.reminder-time{display:block;font-size:20px;font-weight:750;margin-top:4px}
.reminder-info p{font-size:13px;color:var(--ink2);margin:6px 0!important}
.reminder-controls{display:flex;gap:16px}
.reminder-controls button{border:0;background:none;color:#0a6ed1;font:inherit;font-size:14px;font-weight:650;min-height:44px;padding:4px 0;cursor:pointer}
.reminder-delete{flex:none;width:44px;height:44px;border:0;border-radius:50%;color:#d62828;background:#fff1f1;font:inherit;font-size:32px;line-height:1;cursor:pointer}
.med-day{padding:0;border:0;border-radius:50%;min-height:0;background:transparent;display:block}
.med-day input{position:absolute;opacity:0;width:1px;height:1px}
.med-day span{width:38px;height:44px;border:1px solid #d0d0d7;border-radius:22px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:650;background:#fff}
.med-day:has(input:checked){background:transparent;border:0}
.med-day input:checked+span{background:#0a6ed1;color:#fff;border-color:#0a6ed1}
.med-day input:focus-visible+span{outline:3px solid #82bffa;outline-offset:2px}
.ick-panel .med-days{gap:4px;justify-content:space-between;width:100%;box-sizing:border-box}
.med-days legend{font-size:15px}
.med-relief label{padding:8px 6px;font-size:14px}
.saved-reminders{margin-top:22px}
.sleep-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.sleep-stats .card{text-align:center;padding:18px 10px}
.sleep-stats strong{display:block;font-size:24px;font-weight:800}
.sleep-stats span{display:block;margin-top:5px;font-size:11px;text-transform:uppercase;color:var(--ink3);font-weight:650}
.sleep-save{background:#4858c3}
.sleep-history-item .med-history-head{display:block}
.sleep-history-item .med-history-head span{display:block;margin-top:5px}
.sleep-history-item p{font-size:13px}
#sleepLogPanel{z-index:310}
#medicationBanner{position:absolute;top:62px;left:10px;right:10px;font-family:inherit;padding:12px}
@media(max-width:640px){.ick-panel{inset:0;padding-top:env(safe-area-inset-top)}#medicationBanner{top:calc(10px + env(safe-area-inset-top))}}

/* Readable utility buttons on the home screen. */
.modbtn.mod-tools{border:1px solid #c3d3e5;box-shadow:0 3px 10px #253b5510}
.modbtn.mod-report{background:#e7f0ff}
.modbtn.mod-backup{background:#e6f4ee;border-color:#bddbce}
.modbtn.mod-tools .mt{color:#143a66;font-size:19px;font-weight:800}
.modbtn.mod-tools .ms{color:#344b65;font-size:14px;line-height:1.4;font-weight:550;margin-top:4px}
.modbtn.mod-backup .mt{color:#134b3a}
.modbtn.mod-backup .ms{color:#375449}
.modbtn.mod-tools .mi{opacity:1}
.homegrp.tools-label{color:#5c5c68}
.medicine-icons{display:inline-flex;align-items:center;gap:5px;min-width:60px;justify-content:center}
.medicine-pill{display:inline-block;position:relative;flex:none;box-sizing:border-box;width:27px;height:15px;border-radius:50%;border:1px solid #a58c38;box-shadow:inset 0 0 3px #fff9,0 1px 2px #0002}
.medicine-pill.advil{background:radial-gradient(ellipse at 32% 22%,#dedca7 0%,#aaa47a 29%,#77785c 63%,#cbb653 93%);border-color:#bfa14d;box-shadow:inset 0 0 2px 1px #e5c969,0 1px 2px #0003}
.medicine-pill.tylenol{width:27px;height:12px;border-radius:8px;background:linear-gradient(90deg,#c62d34 0%,#e3464b 48%,#fff 49%,#f5f4ed 100%);border-color:#9b9b9b;transform:rotate(-16deg)}
.medicine-pill.triptan{width:29px;height:14px;border-radius:8px;background:linear-gradient(#fff,#f2f2e7);border-color:#c2c6bc;transform:rotate(-20deg)}
.medicine-pill.triptan:after{content:"";position:absolute;top:1px;bottom:1px;left:50%;width:1px;background:#ced1c6;box-shadow:1px 0 #fff}
.account-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:6px 4px 16px;padding:12px;background:#fff;border-radius:16px;border:1px solid #d5deeb;text-align:left}
.account-bar span{min-width:0}.account-bar strong{display:block;font-size:15px;color:#17385e}.account-bar small{display:block;font-size:12px;overflow-wrap:anywhere;color:#4a5565;margin-top:3px}
.account-bar button,.account-later{border:0;background:#eaf1fc;color:#174d91;border-radius:10px;min-height:44px;padding:8px 12px;font-size:14px;font-weight:700;flex-shrink:0}
.account-import{margin:0 4px 18px!important}.account-import p{font-size:14px;color:#4a5565}.account-import .account-later{display:block;margin:8px auto;background:transparent}
.account-welcome{position:absolute;inset:54px 0 0;background:#f2f2f7;z-index:950;overflow-y:auto;border-radius:0 0 38px 38px}
.account-welcome[hidden]{display:none}.account-welcome-content{max-width:440px;margin:auto;padding:28px 20px;text-align:center}
.account-welcome h1{font-size:30px;letter-spacing:-1px;margin:14px 0 8px}.account-welcome h2{font-size:21px;margin:0 0 8px}
.account-welcome p{color:#4a5565;font-size:16px;line-height:1.55;margin:8px 0 20px}.account-welcome .card{text-align:left;padding:22px;margin-top:26px}
.account-welcome .account-fine{font-size:12px;line-height:1.5;margin:14px 0 0;color:#5d6673}
.account-welcome .account-message{font-size:14px;color:#80521d;margin:14px 0 0}.account-message:empty{display:none}
.google-signin{display:flex;align-items:center;justify-content:center;gap:12px;border:1px solid #747775;border-radius:24px;background:#fff;color:#1f1f1f;width:100%;min-height:52px;padding:12px;font:600 16px -apple-system,BlinkMacSystemFont,sans-serif}
.google-g{font:bold 23px Arial;color:#4285f4}.account-loading #home{visibility:hidden}
@media(max-width:600px){.account-welcome{inset:0;border-radius:0;padding-top:env(safe-area-inset-top)}.account-welcome-content{padding:24px 20px}}
.reminder-cta{background:linear-gradient(160deg,#ffab55,#c95b11);color:#fff;box-shadow:0 6px 14px #c95b1125;font-weight:800}
.compact-med-history{display:flex;align-items:center;gap:10px;padding:16px!important}
.compact-med-history .med-history-head{display:block;flex:1;min-width:0}
.compact-med-history strong{display:block;font-size:17px;overflow-wrap:anywhere}
.compact-med-history time{display:block;font-size:13px;color:#59616c;margin-top:6px;line-height:1.4}
.history-medicine-icon{display:flex;justify-content:center;min-width:34px}
.history-medicine-icon .medicine-icons{min-width:30px}
.medicine-emoji{font-size:24px;line-height:1}
.med-details-button{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border:0;border-radius:50%;background:#e8f0fc;color:#145dab;font:700 28px Arial;flex:none}
.medication-details h2{font-size:24px;text-align:center;margin-top:12px!important}
.detail-medicine-icon{text-align:center}.detail-medicine-icon .medicine-pill{transform:scale(1.5);margin:8px}
.medication-details dl{margin:20px 0 0}.medication-details dt{font-size:13px;font-weight:700;color:#59616c;margin-top:18px}.medication-details dd{font-size:17px;line-height:1.45;margin:4px 0 0;overflow-wrap:anywhere}
.medicine-choice{font-size:15px;min-height:58px;padding:12px 10px;gap:8px;text-align:left;min-width:0}
.medicine-choice .medicine-icons{min-width:30px}.medicine-choice>span:nth-child(2){min-width:0;overflow-wrap:anywhere}.medicine-choice .chk{margin-left:auto}
.manage-medicines{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:48px;border:1px dashed #9bb5d3;background:#f0f5fc;color:#174d91;font:700 14px -apple-system,sans-serif;border-radius:12px;margin-top:14px;padding:10px}
.manage-medicines span{font-size:24px}.medication-time-options{margin-top:14px}.medication-time-options .opt{min-height:50px}
.saved-medicine-row{display:flex;align-items:center;gap:12px;border-bottom:1px solid #e8e8ed;padding:14px 0}.saved-medicine-row>span{min-width:34px;display:flex;justify-content:center}.saved-medicine-row .medicine-icons{min-width:30px}.saved-medicine-row strong{flex:1;min-width:0;overflow-wrap:anywhere;font-size:16px}
.medicine-edit{border:0;background:#eaf1fc;color:#174d91;border-radius:10px;min-height:44px;font:700 14px -apple-system,sans-serif;padding:10px 14px}
#medDetailsPanel{z-index:320}#medicineListPanel{z-index:330}#medicineEditorPanel{z-index:340}

/* Keep navigation visible; only the page contents scroll. */
.scroll,.homescroll,.sbody{min-height:0;overscroll-behavior:contain}
.scroll>.hdr{position:sticky;top:0;z-index:10;background:var(--bg);margin:0 -16px 14px;padding-left:20px;padding-right:20px;border-bottom:1px solid var(--sep);box-shadow:0 6px 12px #f2f2f7d9}
.hdr .backbtn,.ick-panel header .backbtn{flex:none;min-width:44px;min-height:44px}
.ick-panel header{border-bottom:1px solid var(--sep);margin-bottom:14px}
.ick-panel header h1{font-size:28px;overflow-wrap:anywhere}
.home-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 20px;border-bottom:1px solid var(--sep);background:var(--bg);flex:none}
.home-topbar strong{font-size:19px;letter-spacing:-.4px}
.home-topbar button{border:1px solid #c6d5e8;background:#fff;color:#174d91;border-radius:14px;width:46px;height:44px;font-size:27px;line-height:1}
.homehdr{padding-top:20px}.homehdr h1{display:none}
.settings-intro{font-size:15px;line-height:1.5;color:#566171;margin:4px 4px 20px}
.settings-list{border-radius:20px;background:#fff;border:1px solid #e0e4eb;overflow:hidden;margin-bottom:20px}
.settings-row{display:flex;align-items:center;gap:12px;text-align:left;width:100%;min-height:88px;border:0;border-bottom:1px solid #e6e9ef;background:#fff;padding:16px;color:#172f50}
.settings-row:last-child{border-bottom:0}.settings-row>span:nth-child(2){flex:1;min-width:0}
.settings-row strong{display:block;font-size:18px;overflow-wrap:anywhere}.settings-row small{display:block;font-size:13px;color:#536273;line-height:1.45;margin-top:5px}
.settings-icon{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:13px;background:#edf3fc;font-size:24px;flex:none}.settings-chevron{font-size:26px;color:#6a7c91}
#generalInfoPanel,#symptomsSettingsPanel,#yourDataPanel{z-index:310}
#reportsPanel,#settingsPanel{z-index:320}#symptomEditorPanel{z-index:340}
.medicine-pill,.medicine-pill.tylenol,.medicine-pill.advil,.medicine-pill.triptan{width:34px;height:34px;background:none;border:0;border-radius:0;box-shadow:none;transform:none}
.medicine-pill.triptan:after{content:none}.medicine-pill svg{display:block;width:100%;height:100%;overflow:visible}
.medicine-icons{gap:0;min-width:34px}.detail-medicine-icon .medicine-pill{width:48px;height:48px;margin:4px;transform:none}
@media(max-width:640px){.home-topbar{padding-top:calc(8px + var(--safet))}.homehdr{padding-top:20px}}
