/* Native-inspired Coastal system; opt-in and independent of Professional mode. */
html:root[data-theme=ios]:not([data-view=professional]){--bg:#f4f6fa;--panel:#fff;--panel2:#edf2f5;--panel3:#e3eaf0;--text:#182d36;--muted:#617781;--line:#e3eaef;--accent:#087f80;--accent2:#148f91;--safe:#19724f;--danger:#b43a50;--orange:#a76522;--pro-cta:#087f80;--pro-ink:#fff;--pro-header:#f4f6fa;--theme-header:#f4f6fa;--radius:26px;--shadow:0 8px 28px #17394a08;--glass-fill:#ffffffeb;--glass-edge:#ffffff;--glass-selected:#d9efed;color-scheme:light}
html:root[data-theme=ios]:not([data-view=professional]) body.pro-ui{background:#f4f6fa!important;background-image:none!important;color:var(--text)!important;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;-webkit-font-smoothing:antialiased}
html:root[data-theme=ios]:not([data-view=professional]) .ocean-background{display:none!important}
html:root[data-theme=ios]:not([data-view=professional]) .ocean-setting{display:none}
html:root[data-theme=ios]:not([data-view=professional]) body.pro-ui #app{background:#f4f6fa!important;max-width:1180px}
html:root[data-theme=ios]:not([data-view=professional]) body.pro-ui #app .topbar{background:transparent!important;border:0!important;box-shadow:none!important;padding-top:20px;padding-bottom:20px;backdrop-filter:none!important}
html:root[data-theme=ios]:not([data-view=professional]) body.pro-ui :is(.topbar .icon-btn,.header-menu-toggle){background:#fff!important;border:1px solid #e7edf2!important;border-radius:16px!important;color:#243f49!important;box-shadow:0 4px 12px #17394a05!important}
html:root[data-theme=ios]:not([data-view=professional]) .brand-copy strong{font-size:12px!important;letter-spacing:2px!important;color:#18343c!important;font-weight:750;text-shadow:none}
html:root[data-theme=ios]:not([data-view=professional]) .brand-copy span{font-size:10px!important;color:#617781!important}
html:root[data-theme=ios]:not([data-view=professional]) body.pro-ui :is(.card,.loading-card,.forum-topic,.forum-post-card,.map-discovery-card,.plan-card,.pulse-card,.glass-forum-composer,.profile-hero,.pro-tool-list,.pro-search,.pro-install-sheet){background:#fff!important;color:var(--text)!important;border:1px solid #e7edf2!important;border-radius:26px!important;box-shadow:0 8px 28px #17394a07!important;backdrop-filter:none!important}
html:root[data-theme=ios]:not([data-view=professional]) body.pro-ui :is(.sheet,.social-dialog,.mera-dialog,.species-info-dialog,.map-detail-card,.map-detail-loading){background:#fff!important;color:var(--text)!important;border:1px solid #e5ebef!important;border-radius:28px!important;box-shadow:0 18px 48px #132d461c!important;backdrop-filter:none!important}
html:root[data-theme=ios]:not([data-view=professional]) body.pro-ui :is(.field,.metric,.info-tile,.map-live-grid>div,.map-score-hero,.species-info-block,.species-info-grid div,.profile-stats>div,.friend-card,.theme-choice,.mera-option,.social-fish-choice){background:#f0f4f7!important;color:var(--text)!important;border:1px solid #e5edf1!important;border-radius:18px!important;box-shadow:none!important}
html:root[data-theme=ios]:not([data-view=professional]) body.pro-ui :is(.primary-btn,.pro-session){background:var(--accent)!important;color:#fff!important;border:0!important;border-radius:18px!important;box-shadow:0 6px 18px #087f801a!important;font-weight:650}
html:root[data-theme=ios]:not([data-view=professional]) body.pro-ui :is(.secondary-btn,.ghost-btn,.social-pill,.coast-city-tabs button,.coast-district-tabs button,.owner-links button,.period-tabs button,.map-detail-actions button){background:#edf3f6!important;color:#274752!important;border:0!important;border-radius:16px!important;box-shadow:none!important;min-height:44px}
html:root[data-theme=ios]:not([data-view=professional]) body.pro-ui :is(.theme-choice.selected,.mera-option.selected,.social-pill.selected,.period-tabs button.active,.coast-city-tabs button[aria-pressed=true]){background:#d9efed!important;color:#075a5b!important;border-color:#b4dbd5!important}
html:root[data-theme=ios]:not([data-view=professional]) body.pro-ui :is(h1,h2,h3,.metric b,.map-score-number,.map-live-grid b,.timer-value,.radar-fish-copy b){color:var(--text)!important;text-shadow:none;letter-spacing:-.6px}
html:root[data-theme=ios]:not([data-view=professional]) body.pro-ui :is(.tiny,.section-kicker,.metric span,.metric small,.map-updated,.radar-fish-copy small,.pro-data-note){color:var(--muted)!important}
html:root[data-theme=ios]:not([data-view=professional]) body.pro-ui .pro-tool-row{padding:18px 20px;min-height:80px}
html:root[data-theme=ios]:not([data-view=professional]) .pro-tool-icon{background:#e4f2f1!important;color:#087f80!important;border-radius:13px!important;border:0!important}
html:root[data-theme=ios]:not([data-view=professional]) .map-stage-card{border-radius:28px!important;box-shadow:0 12px 28px #17394a0c!important}
html:root[data-theme=ios]:not([data-view=professional]) .map-floating-top{border-radius:20px!important}
html:root[data-theme=ios]:not([data-view=professional]) .danger-btn{background:#b43a50!important;color:#fff!important;border-radius:16px!important}
html:root[data-theme=ios]:not([data-view=professional]) body.pro-ui #bottomNav{background:#ffffffef!important;border:1px solid #fff!important;border-radius:27px!important;box-shadow:0 8px 32px #1b36471c!important;backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important;padding:7px!important}
html:root[data-theme=ios]:not([data-view=professional]) body.pro-ui #bottomNav .nav-item{background:transparent!important;color:#7b8d97!important;border:0!important;border-radius:20px!important;box-shadow:none!important;gap:5px;min-height:60px}
html:root[data-theme=ios]:not([data-view=professional]) body.pro-ui #bottomNav .nav-item.active{background:#dff1ee!important;color:#087f80!important}
html:root[data-theme=ios]:not([data-view=professional]) #bottomNav :is(.nav-icon,.live-icon){background:transparent!important;color:inherit!important;border:0!important;box-shadow:none!important}
html:root[data-theme=ios]:not([data-view=professional]) #bottomNav .nav-item small{color:inherit!important;font-size:10px!important}
html:root[data-theme=ios]:not([data-view=professional]) .content .stack{animation:ios-arrive .32s cubic-bezier(.16,1,.3,1)}
html:root[data-theme=ios]:not([data-view=professional]) body.pro-ui .content :is(button,[role=button]){transition:background-color .18s ease,transform .18s ease,box-shadow .18s ease}
html:root[data-theme=ios]:not([data-view=professional]) body.pro-ui .content :is(button,[role=button]):active{transform:scale(.985)}
html:root[data-theme=ios]:not([data-view=professional]) body.pro-ui :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #087f80!important;outline-offset:3px}
.ios-home{display:grid;gap:24px;padding:8px 0 12px;animation:ios-arrive .4s cubic-bezier(.16,1,.3,1)}
.ios-intro{padding:6px 4px 0}.ios-date{color:#6d808c;font-size:12px;font-weight:550;text-transform:capitalize}
.ios-intro h1{font-size:clamp(37px,10vw,62px);line-height:1.05;letter-spacing:-2px!important;margin:14px 0 10px;font-weight:750}
.ios-intro h1 span{color:#087f80}.ios-intro p{font-size:13px;color:#647a85;line-height:1.6;margin:0}
.ios-shore{position:relative;overflow:hidden;border-radius:28px;background:linear-gradient(135deg,#144c58,#087f80);padding:25px 24px 32px;box-shadow:0 12px 28px #087f8026;isolation:isolate;min-height:190px}
.ios-shore-top{display:flex;align-items:center;justify-content:space-between;gap:12px;position:relative;z-index:1}.ios-shore-top>span{font-size:9px;letter-spacing:1.9px;font-weight:650;color:#b4e0df}
.ios-shore-top button{min-height:44px;display:flex;gap:8px;align-items:center;border:1px solid #ffffff24;background:#ffffff12;color:#fff;border-radius:14px;padding:9px 12px;font-size:11px;font-weight:600}
html:root[data-theme=ios]:not([data-view=professional]) body.pro-ui .ios-shore h2{font-size:29px;line-height:1.15;margin:20px 0 14px;color:#fff!important;position:relative;z-index:1;letter-spacing:-1px;font-weight:650}
.ios-shore-bottom{position:relative;z-index:1;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:10px;color:#d2edeb;line-height:1.7}.ios-shore-bottom>span:first-child{display:flex;align-items:center;gap:7px}.ios-shore-bottom i{width:5px;height:5px;background:#ace7d8;border-radius:50%}
.ios-wave-art{position:absolute;bottom:-10px;left:-4%;width:112%;height:70px;z-index:-1;opacity:.25}.ios-wave-art path:first-child{fill:#9ee7db}.ios-wave-art path:last-child{fill:#ddfff6}
.ios-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 3px 15px}.ios-section-heading h2{font-size:21px;letter-spacing:-.7px;font-weight:650;margin:0}.ios-section-heading>span{font-size:10px;color:#748a95}
.ios-weather-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.ios-weather-tile{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:17px 14px;border:1px solid #e7edf2;background:#fff;border-radius:21px;box-shadow:0 5px 14px #1b364704;min-width:0}
.ios-weather-icon{display:grid;place-items:center;width:32px;height:32px;color:#087f80;background:#e7f4f0;border-radius:11px}.ios-weather-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.ios-weather-tile>span:nth-child(2){font-size:10px;color:#69828e}.ios-weather-tile b{font-size:clamp(15px,3.8vw,22px);letter-spacing:-.6px;white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:650}
.ios-species-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(175px,1fr);grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 12px;scrollbar-width:none}.ios-species-strip::-webkit-scrollbar{display:none}
.ios-species-card{display:flex;flex-direction:column;align-items:stretch;gap:12px;min-width:0;text-align:left;padding:19px 18px;background:#fff;color:#193740;border:1px solid #e4edf0;border-radius:24px;box-shadow:0 6px 16px #17394a05;scroll-snap-align:start;cursor:pointer}
.ios-species-top{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#7b919a}.ios-species-top>span:last-child{font-size:18px;color:#087f80}
html body.pro-ui .ios-species-card .radar-fish-photo{position:relative;width:100%;height:95px;flex-basis:auto;background:none;max-width:100%;margin:0}
.ios-species-card>b{font-size:14px;font-weight:650;line-height:1.4;min-height:38px}.ios-species-card>small{font-size:9px;color:#728994;line-height:1.5}
.ios-species-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.ios-score-value{font-size:30px;line-height:1;letter-spacing:-1px;font-weight:650;font-variant-numeric:tabular-nums}.ios-score-value small{font-size:9px;letter-spacing:0;font-weight:450;color:#7b919a;margin-left:3px}
.ios-score-track{display:block;height:4px;width:44px;flex:0 0 44px;background:#e7efef;border-radius:5px;overflow:hidden}.ios-score-track i{display:block;background:#087f80;height:100%;border-radius:5px}
.ios-data-note{font-size:10px;line-height:1.7;color:#6a818c;margin:6px 3px 0}
html:root[data-theme=ios] body.pro-ui .ios-launch{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-radius:23px!important;min-height:64px;grid-column:1/-1;font-size:16px;letter-spacing:-.2px}
html:root[data-theme=ios] body.pro-ui .ios-launch>span:last-child{display:grid;place-items:center;width:28px;height:28px;background:#ffffff1c;border-radius:50%;font-size:20px}
html:root[data-theme=ios]:not([data-view=professional]) .score-trend-card{padding:22px!important;border-radius:25px!important}
.ios-home .score-trend-body{min-height:210px}
@media(min-width:1101px){.ios-home .score-trend-body{min-height:105px}}
@media(min-width:1101px){html:root[data-theme=ios]:not([data-view=professional]) body.pro-ui #bottomNav{left:max(18px,calc(50% - 690px))!important}}
html:root[data-theme=ios]:not([data-view=professional]) .score-trend-card .score-trend-row{background:transparent;border:0;border-bottom:1px solid #e6edef;border-radius:0;padding:16px 0}.score-trend-card .score-trend-row:last-child{border-bottom:0}
html:root[data-theme=ios]:not([data-view=professional]) .score-trend-row[data-trend=up] :is(.score-trend-direction,.score-trend-values>span){color:#19724f}
html:root[data-theme=ios]:not([data-view=professional]) .score-trend-row[data-trend=down] :is(.score-trend-direction,.score-trend-values>span){color:#b43a50}
html body.pro-ui .theme-preview.ios{background:#f4f6fa;border:1px solid #e1eaef;border-radius:22px}.theme-preview.ios i:nth-child(1){background:#193740}.theme-preview.ios i:nth-child(2){background:#087f80}.theme-preview.ios i:nth-child(3){background:#fff}
@keyframes ios-arrive{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:no-preference){.ios-wave-art{animation:ios-wave-drift 9s ease-in-out infinite alternate}@keyframes ios-wave-drift{to{transform:translateX(-3%)}}}
@media(max-width:599px){.ios-weather-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ios-weather-tile{display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:7px 11px;padding:15px}.ios-weather-icon{grid-row:1/3}.ios-weather-tile b{font-size:20px;grid-column:2}.ios-species-strip{grid-template-columns:none;grid-auto-columns:185px;margin-right:-16px;padding-right:16px}.ios-home{gap:24px}.ios-shore{padding:22px;min-height:180px}}
@media(min-width:900px){.ios-home{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}.ios-intro{grid-column:1/-1;min-height:155px}.ios-intro h1 br{display:none}.ios-intro h1 span{margin-left:12px}.ios-shore{grid-column:1;min-height:224px}.ios-conditions{grid-column:2}.ios-targets{grid-column:1/-1}.ios-species-card .radar-fish-photo{height:110px}.ios-home>.score-trend-card{grid-column:1/-1}.ios-shore h2{font-size:36px!important;margin-top:30px!important}.ios-weather-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ios-weather-tile{display:grid;grid-template-columns:32px minmax(0,1fr);gap:6px 14px;padding:18px}.ios-weather-icon{grid-row:1/3}.ios-weather-tile b{grid-column:2}.ios-species-strip{gap:20px}.ios-species-card{padding:24px}.ios-species-card>b{font-size:18px;min-height:0}.ios-species-card>small{font-size:11px}}
@media(prefers-reduced-motion:reduce){html:root[data-theme=ios] .content :is(.stack,.ios-home,.ios-wave-art){animation:none!important}html:root[data-theme=ios] .content :is(button,[role=button]){transition:none!important}}
