:root{color:#243b53;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f2f6fb;font-family:Inter,Segoe UI,Roboto,sans-serif;font-weight:400}*{box-sizing:border-box}body{background:#f2f6fb;min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{cursor:pointer}#root{background:#f2f6fb;width:100%;min-height:100vh;margin:0 auto}h1,h2,h3,h4,p{margin-top:0}@media (width>=700px){#root{max-width:1126px}}.weather-timeline{flex-wrap:wrap;justify-content:center;gap:16px;margin-top:30px;display:flex}.weather-card{text-align:center;color:#243b53;background-color:#eef6ff;border:1px solid #c6dff5;border-radius:15px;width:180px;padding:20px}.weather-card:hover{background-color:#dceeff}.app-shell{background:#f2f6fb;width:min(100% - 32px,760px);margin:0 auto;padding:30px 0 40px}.topbar,.section-heading,.overview-location,.activity-row,.advice-card-heading{justify-content:space-between;align-items:center;display:flex}.topbar{gap:16px;margin-bottom:22px}.topbar h1{color:#1e3a5f;letter-spacing:-1.5px;margin:3px 0 0;font-size:clamp(30px,7vw,40px);font-weight:750}.topbar h1 span{font-size:.78em}.eyebrow{color:#71839a;letter-spacing:.09em;text-transform:uppercase;margin:0 0 5px;font-size:12px;font-weight:700}.unit-toggle{color:#315a83;background:#fff;border:1px solid #dce6f1;border-radius:999px;flex:none;padding:9px 14px;font-weight:700}.unit-toggle span{color:#a6b3c2;padding:0 4px}.weather-overview{color:#244866;background:linear-gradient(145deg,#d9ebff,#edf6ff);border:1px solid #c8def4;border-radius:24px;min-height:210px;padding:22px;box-shadow:0 12px 30px #34699d17}.overview-location{justify-content:flex-start;gap:8px;font-weight:700}.overview-location span{font-size:22px}.overview-main{text-align:center;padding-top:12px}.overview-label,.overview-rain{color:#59748f;margin:0;font-size:14px}.overview-temperature{color:#1e3a5f;letter-spacing:-3px;margin:2px 0;font-size:clamp(48px,13vw,64px);font-weight:750;line-height:1.1}.overview-rain{font-size:15px}.overview-message{text-align:center;margin:42px 0 0}.section-block{margin-top:30px}.section-heading{gap:12px;margin-bottom:14px}.section-heading h2,.activity-editor h2,.plan-intro h2{color:#203953;letter-spacing:-.4px;margin:0;font-size:21px}.section-note{color:#8190a1;text-align:right;font-size:12px}.weather-timeline{scroll-snap-type:x mandatory;scrollbar-color:#c4d5e6 transparent;scrollbar-width:thin;gap:12px;padding:2px 2px 12px;display:flex;overflow-x:auto}.weather-card{color:#34516e;scroll-snap-align:start;text-align:center;background:#f1f6fc;border:1px solid #e0eaf4;border-radius:18px;flex-direction:column;flex:0 0 112px;justify-content:center;align-items:center;gap:8px;min-height:150px;padding:14px 10px;transition:border-color .15s,transform .15s,background .15s;display:flex}.weather-card:hover{background:#e7f1fc;transform:translateY(-2px)}.weather-card.is-selected{background:#e5f1ff;border:2px solid #3977b8}.weather-time{color:#71839a;font-size:12px;font-weight:650}.weather-temperature{color:#254565;font-size:22px;font-weight:750}.weather-rain{color:#548aa6;font-size:12px}.weather-add{color:#55728e;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:11px;overflow:hidden}.status-message,.error-message{margin:10px 0;font-size:14px}.status-message{color:#71839a}.error-message{color:#b42318}.activity-editor{background:#fff;border:1px solid #dce6f1;border-radius:18px;gap:12px;margin-top:16px;padding:18px;display:grid}.field-label,.preference-label{color:#52677d;font-size:13px;font-weight:700}.activity-input,.preference-select{color:#243b53;background:#fff;border:1px solid #d7e1ec;border-radius:11px;width:100%;min-height:44px;padding:10px 12px}.activity-input:focus,.preference-select:focus{border-color:#3977b8;outline:3px solid #3977b826}.checkbox-row{color:#52677d;align-items:center;gap:9px;font-size:14px;display:flex}.checkbox-row input{accent-color:#326da8;width:17px;height:17px}.editor-actions{align-items:center;gap:14px;display:flex}.primary-button{color:#fff;background:#2e6399;border:0;border-radius:13px;min-height:48px;padding:12px 18px;font-weight:700;transition:background .15s,transform .15s}.primary-button:hover:not(:disabled){background:#244f7c;transform:translateY(-1px)}.primary-button:disabled{cursor:not-allowed;opacity:.55}.primary-button.compact{min-height:42px;padding:9px 15px}.text-button{color:#51708d;background:0 0;border:0;padding:8px 4px;font-size:13px;font-weight:650}.text-button:hover{color:#244f7c;text-decoration:underline}.empty-state{color:#71839a;background:#fff;border:1px dashed #cbd8e5;border-radius:16px;align-items:center;gap:12px;padding:17px;font-size:14px;display:flex}.empty-state span{color:#356b9e;background:#eaf3fc;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:22px;display:grid}.empty-state p{margin:0}.activity-list,.advice-list{gap:10px;display:grid}.activity-row{background:#fff;border:1px solid #e1e8f0;border-radius:15px;gap:12px;padding:13px}.activity-icon{color:#426c91;background:#edf4fb;border-radius:12px;flex:none;place-items:center;width:38px;height:38px;font-size:18px;display:grid}.activity-details{color:#243b53;text-align:left;background:0 0;border:0;flex:1;gap:3px;padding:0;display:grid}.activity-details strong{font-size:15px}.activity-details span{color:#7c8b9c;font-size:13px}.delete-button{color:#9b4545;background:#fff6f5;border:1px solid #f1d8d5;border-radius:9px;padding:7px 9px;font-size:12px}.delete-button:hover{background:#ffe9e6}.plan-section{background:#fff;border:1px solid #e0e8f1;border-radius:20px;gap:12px;margin-top:30px;padding:20px;display:grid;box-shadow:0 8px 24px #2845600d}.plan-intro p:last-child{color:#71839a;margin:6px 0 2px;font-size:14px}.preference-select{min-height:42px}.generate-button{background:#2f6398;width:100%;margin-top:2px;font-size:16px}.advice-section{margin-top:28px}.advice-card{background:#fff;border:1px solid #dfe8f1;border-radius:17px;padding:17px}.advice-card h3{color:#243b53;margin:0 0 3px;font-size:17px}.advice-card-heading p,.advice-rain{color:#71839a;margin:0;font-size:13px}.advice-temperature{color:#2e6399;font-size:20px;font-weight:750}.advice-rain{margin-top:12px}.comfort-text{color:#385773;margin:13px 0 8px;font-weight:650}.advice-tip{color:#52677d;margin:7px 0 0;font-size:14px}.app-footer{color:#91a0af;text-align:center;padding:28px 0 0;font-size:12px}@media (width<=480px){.app-shell{width:min(100% - 24px,760px);padding-top:20px}.weather-overview{border-radius:20px;min-height:190px;padding:17px}.section-block{margin-top:25px}.section-heading h2,.activity-editor h2,.plan-intro h2{font-size:19px}.weather-card{flex-basis:104px;min-height:140px}.plan-section{padding:17px}}@media (width<=350px){.app-shell{width:calc(100% - 20px)}.topbar h1{font-size:29px}.unit-toggle{padding:8px 10px;font-size:13px}.section-note{max-width:112px}.delete-button{padding:6px;font-size:11px}}@media (width>=700px){.app-shell{padding-top:42px}.weather-overview{min-height:240px;padding:26px}.weather-card{flex-basis:126px}.plan-section{grid-template-columns:1fr 240px;align-items:end}.plan-intro{grid-column:1/-1}.generate-button{margin:0}}.notifications-panel{overflow-wrap:anywhere;background:#fff;border:1px solid #dfe8f1;border-radius:18px;width:100%;min-width:0;margin-top:24px;padding:20px}.notifications-panel h2{margin-bottom:12px}.notifications-panel p{color:#52677d;margin:0 0 12px}.notifications-panel button{white-space:normal;max-width:100%;margin:4px 8px 4px 0}.plan-hint{color:#71839a;text-align:center;margin:0;font-size:13px}.selected-weather{color:#486783;background:#edf5fc;border-radius:10px;margin:0;padding:10px 12px;font-size:14px}.retry-button{color:#2e6399;background:#fff;border:1px solid #cbdced;border-radius:9px;margin-top:8px;padding:8px 12px;font-size:13px;font-weight:650;display:block}.retry-button:hover:not(:disabled){background:#edf5fc}.retry-button:disabled{cursor:wait;opacity:.65}.outdoor-recommendation{background:#fff;border:1px solid #dce8f3;border-radius:18px;margin-top:18px;padding:18px;box-shadow:0 8px 24px #2845600d}.outdoor-recommendation h2{color:#203953;margin:0 0 5px;font-size:19px}.outdoor-pick-time{color:#2e6399;margin:0 0 4px;font-size:24px;font-weight:750}.outdoor-pick-detail{color:#71839a;margin:0;font-size:14px}.outdoor-prompt{color:#2e6399;background:0 0;border:0;justify-content:center;gap:8px;width:100%;margin:12px 0 0;padding:10px;font-size:14px;font-weight:650;display:flex}.outdoor-prompt:hover:not(:disabled){text-decoration:underline}.outdoor-prompt:disabled{cursor:wait;opacity:.6}.recommendation-backdrop{z-index:1100;-webkit-backdrop-filter:blur(5px);background:#14263a52;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.recommendation-modal{-webkit-backdrop-filter:blur(18px)saturate(140%);background:#ffffffd1;border:1px solid #dce6f1;border-radius:22px 22px 0 0;width:min(100%,520px);max-height:85vh;margin:0;padding:28px 22px 24px;position:relative;overflow-y:auto;box-shadow:0 -12px 36px #14263a2e}.recommendation-modal h2{color:#203953;margin:0 36px 12px 0;font-size:21px}.recommendation-time{color:#2e6399;margin:0 0 4px;font-size:30px;font-weight:750}.recommendation-reason{color:#486783;background:#f2f7fc;border-radius:14px;margin-top:18px;padding:14px}.recommendation-reason p{margin:5px 0 0;font-size:14px;line-height:1.5}.recommendation-close{color:#52677d;background:#f2f6fb;border:0;border-radius:50%;width:36px;height:36px;font-size:24px;position:absolute;top:14px;right:16px}@media (width>=700px){.recommendation-backdrop{align-items:center;padding:20px}.recommendation-modal{border-radius:22px}}.topbar .brand-lockup{align-items:center;gap:12px;display:flex}.topbar .brand-copy h1{margin:0;line-height:1}.topbar .brand-copy .eyebrow{letter-spacing:.08em;white-space:nowrap;margin:10px 0 0;font-size:.65rem;line-height:1.1}.weather-timeline{flex-wrap:nowrap;justify-content:flex-start;padding-bottom:12px;overflow-x:auto}.weather-card{flex:0 0 170px}.skycue-modal-backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:1000;background:#101e308c;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.skycue-modal{color:#243b53;background:#fff;border-radius:20px;width:100%;max-width:420px;padding:24px}.skycue-modal>button{float:right}.notification-onboarding{box-sizing:border-box;color:#243b53;background:#fff;border:1px solid #dce6f1;border-radius:22px;width:min(420px,100% - 32px);max-height:calc(100dvh - 32px);padding:24px;overflow-y:auto;box-shadow:0 12px 36px #14263a2e}.notification-onboarding::backdrop{background:#101e308c}.notification-onboarding h2{color:#203953;margin-top:0;font-size:21px}.notification-onboarding p{line-height:1.6}.notification-onboarding-actions{flex-wrap:wrap;gap:12px;display:flex}.notification-onboarding-actions button{color:#315a83;background:#f2f6fb;border:1px solid #cbd8e5;border-radius:13px;min-height:48px;padding:12px 16px;font-weight:700}.notification-onboarding-actions .notification-onboarding-enable{color:#fff;background:#2e6399;border-color:#2e6399}.notification-onboarding-actions button:disabled{opacity:.55}.notification-onboarding-actions button:focus-visible{outline-offset:3px;outline:3px solid #548aa6}
