@import "https://fonts.googleapis.com/css2?family=Outfit:wght@500;600;700;800;900&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=JetBrains+Mono:wght@500;700;800;900&display=swap";:root{--bg-page:#f8fafc;--bg-surface:#fff;--bg-surface-hover:#f1f5f9;--bg-card:#fff;--bg-card-subtle:#f8fafc;--bg-input:#fff;--border-subtle:#e2e8f0;--border-default:#cbd5e1;--border-focus:#0f172a;--border-tint:#0f172a14;--text-main:#0f172a;--text-muted:#334155;--text-dim:#64748b;--text-faint:#94a3b8;--status-good:#059669;--status-good-bg:#ecfdf5;--status-good-border:#a7f3d0;--status-good-text:#065f46;--status-moderate:#d97706;--status-moderate-bg:#fffbeb;--status-moderate-border:#fde68a;--status-moderate-text:#92400e;--status-warning:#ea580c;--status-warning-bg:#fff7ed;--status-warning-border:#fed7aa;--status-warning-text:#9a3412;--status-danger:#dc2626;--status-danger-bg:#fef2f2;--status-danger-border:#fecaca;--status-danger-text:#991b1b;--status-hazardous:#7c3aed;--status-hazardous-bg:#f5f3ff;--status-hazardous-border:#ddd6fe;--status-hazardous-text:#5b21b6;--accent-primary:#0284c7;--accent-primary-hover:#0369a1;--accent-cyan:#0ea5e9;--accent-indigo:#4f46e5;--font-display:"Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-body:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", monospace;--shadow-xs:0 1px 2px #0f172a0a;--shadow-sm:0 1px 3px #0f172a12, 0 1px 2px #0f172a0a;--shadow-card:0 4px 6px -1px #0f172a0d, 0 2px 4px -2px #0f172a08;--shadow-card-hover:0 10px 15px -3px #0f172a12, 0 4px 6px -4px #0f172a08;--shadow-lg:0 20px 25px -5px #0f172a14, 0 8px 10px -6px #0f172a08;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:22px;--radius-full:9999px;--spring:cubic-bezier(.16, 1, .3, 1);--touch-target:44px}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body{background-color:var(--bg-page);color:var(--text-main);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100dvh;font-size:15px;line-height:1.5}.app-container{background-color:var(--bg-page);flex-direction:column;max-width:1280px;min-height:100dvh;margin:0 auto;display:flex;position:relative}.app-header{z-index:50;-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border-subtle);padding-top:env(safe-area-inset-top,0px);background:#ffffffe0;position:sticky;top:0}.header-main{justify-content:space-between;align-items:center;gap:12px;padding:12px 20px 8px;display:flex}.brand,.brand-wrap{cursor:pointer;align-items:center;gap:12px;text-decoration:none;display:flex}.brand-logo,.app-logo{border-radius:10px;flex-shrink:0;width:38px;height:38px;display:block}.brand-title{font-family:var(--font-display);letter-spacing:-.02em;color:#0f172a;font-size:1.35rem;font-weight:800;line-height:1.1}.brand-subtitle,.brand-tagline{color:var(--text-dim);letter-spacing:.01em;font-size:.72rem;font-weight:600;display:block}.header-right,.header-actions{align-items:center;gap:10px;display:flex}.sync-status-pill,.live-sync-indicator{background:var(--bg-surface-hover);border:1px solid var(--border-subtle);border-radius:var(--radius-full);color:var(--text-muted);box-shadow:var(--shadow-xs);align-items:center;gap:7px;padding:6px 13px;font-size:.75rem;font-weight:600;display:inline-flex}.sync-dot,.pulse-dot{background-color:var(--status-good);border-radius:50%;width:7px;height:7px;position:relative}.sync-dot:after,.pulse-dot:after{content:"";background-color:var(--status-good);opacity:.4;border-radius:50%;animation:2s ease-out infinite pulse-ring;position:absolute;inset:-3px}@keyframes pulse-ring{0%{opacity:.6;transform:scale(.8)}to{opacity:0;transform:scale(2.2)}}.sync-time-text{color:var(--text-muted);font-size:.75rem}.btn-refresh{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-full);cursor:pointer;width:34px;height:34px;color:var(--text-muted);box-shadow:var(--shadow-xs);transition:all .2s var(--spring);justify-content:center;align-items:center;font-size:15px;display:flex}.btn-refresh:hover{background:var(--bg-surface-hover);color:var(--text-main);border-color:var(--border-default)}.btn-refresh.is-spinning{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.region-nav,.region-bar{background:#ffffffb3;padding:6px 20px 10px}.region-pills,.region-scroll{scrollbar-width:none;-ms-overflow-style:none;gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.region-pills::-webkit-scrollbar{display:none}.region-scroll::-webkit-scrollbar{display:none}.region-btn,.region-chip{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-full);cursor:pointer;white-space:nowrap;color:var(--text-muted);box-shadow:var(--shadow-xs);transition:all .2s var(--spring);align-items:center;gap:7px;padding:6px 14px;font-family:inherit;font-size:.82rem;font-weight:600;display:inline-flex}.region-btn:hover,.region-chip:hover{background:var(--bg-surface-hover);border-color:var(--border-default);color:var(--text-main)}.region-btn.is-active,.region-chip.is-active{color:#fff;background:#0f172a;border-color:#0f172a;box-shadow:0 4px 12px #0f172a26}.region-mini-val,.chip-badge{border-radius:var(--radius-full);background:var(--bg-surface-hover);color:var(--text-main);padding:1px 7px;font-size:.7rem;font-weight:800}.region-btn.is-active .region-mini-val,.region-chip.is-active .chip-badge{color:#fff;background:#fff3}.app-body{flex-direction:column;flex:1;gap:28px;padding:24px 20px 48px;display:flex}.dashboard-grid{grid-template-columns:1fr;gap:24px;display:grid}@media (width>=960px){.dashboard-grid{grid-template-columns:1.05fr 1fr;align-items:start;gap:24px}}.dashboard-col{flex-direction:column;gap:20px;display:flex}.hero-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);flex-direction:column;gap:18px;padding:22px 24px;display:flex;position:relative;overflow:hidden}.hero-top,.hero-header-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.hero-location-block,.hero-region-badge{align-items:center;gap:8px;display:flex}.hero-region-pin{font-size:1.1rem}.location-name,.hero-region-name{font-family:var(--font-display);color:var(--text-main);letter-spacing:-.01em;font-size:1.25rem;font-weight:800}.location-landmarks,.hero-estates-sub{color:var(--text-dim);font-size:.78rem;font-weight:500}.status-banner,.hero-verdict-banner{background:var(--active-banner-bg,var(--status-moderate-bg));border:1px solid var(--status-moderate-border);border-radius:var(--radius-md);align-items:flex-start;gap:12px;padding:14px 18px;transition:all .25s;display:flex}.status-emoji,.verdict-icon{flex-shrink:0;font-size:1.4rem;line-height:1.1}.status-text-wrap{flex-direction:column;gap:3px;display:flex}.status-heading,.verdict-headline{color:var(--active-status-color,var(--status-moderate-text));font-size:.94rem;font-weight:800;line-height:1.3}.status-description{color:#334155;font-size:.82rem;font-weight:500;line-height:1.45}.hero-readout{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:#f8fafc;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;display:flex}.readout-left,.readout-primary{align-items:baseline;gap:14px;display:flex}.aqi-row{align-items:baseline;gap:10px;display:flex}.aqi-value{font-family:var(--font-display);color:var(--active-status-color,var(--text-main));letter-spacing:-.04em;font-size:4rem;font-weight:900;line-height:1}.readout-details{flex-direction:column;gap:2px;display:flex}.readout-metric-name{color:var(--text-dim);letter-spacing:.05em;font-size:.68rem;font-weight:800}.readout-category{color:var(--text-main);font-size:1.15rem;font-weight:800}.readout-standard-sub{color:var(--text-dim);font-size:.72rem;font-weight:600}.readout-pm25,.hero-pm25-container{border-left:1px solid var(--border-subtle);flex-direction:column;align-items:flex-end;gap:4px;padding-left:18px;display:flex}.pm-title,.pm-label{color:var(--text-dim);text-align:right;letter-spacing:.02em;font-size:.72rem;font-weight:700}.pm-measurement{align-items:baseline;gap:4px;display:flex}.pm-num{font-family:var(--font-mono);color:var(--text-main);font-size:1.6rem;font-weight:800;line-height:1}.pm-unit{color:var(--text-dim);font-size:.72rem;font-weight:600}.pm-band-badge{color:var(--status-moderate-text);background:var(--status-moderate-bg);border:1px solid var(--status-moderate-border);border-radius:var(--radius-full);padding:2px 8px;font-size:.68rem;font-weight:700}.hero-verdict-banner{background:var(--status-moderate-bg);border:1px solid var(--status-moderate-border);border-radius:var(--radius-md);align-items:flex-start;gap:12px;padding:12px 16px;display:flex}.verdict-icon{font-size:1.2rem;line-height:1.2}.verdict-headline{color:var(--status-moderate-text);font-size:.88rem;font-weight:600;line-height:1.45}.activity-section{flex-direction:column;gap:12px;display:flex}.activity-summary-bar{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);cursor:pointer;transition:all .2s var(--spring);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.activity-summary-bar:hover{background:var(--bg-surface-hover);border-color:var(--border-default)}.summary-meta{align-items:center;gap:12px;display:flex}.summary-icon{font-size:1.3rem;line-height:1}.summary-info{flex-direction:column;gap:2px;display:flex}.summary-info strong{color:var(--text-main);font-size:.88rem;font-weight:700}.summary-info span{color:var(--text-dim);font-size:.75rem}.btn-toggle-activities{background:var(--bg-surface-hover);border:1px solid var(--border-subtle);border-radius:var(--radius-full);color:var(--text-muted);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;min-height:34px;padding:6px 14px;font-size:.76rem;font-weight:600;transition:all .2s;display:flex}.btn-toggle-activities:hover{color:var(--text-main);background:#e2e8f0}.toggle-arrow{font-size:.8rem;transition:transform .2s;display:inline-block}.decision-grid{grid-template-columns:1fr 1fr;gap:12px;transition:opacity .2s;display:grid}.decision-grid.is-collapsed{display:none!important}.decision-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);flex-direction:column;justify-content:space-between;gap:12px;padding:16px;transition:all .2s;display:flex}.decision-card:hover{border-color:var(--border-default);box-shadow:var(--shadow-sm)}.decision-header{justify-content:space-between;align-items:center;display:flex}.dec-icon{font-size:22px;line-height:1}.dec-badge{border-radius:var(--radius-full);padding:3px 9px;font-size:.72rem;font-weight:700}.dec-badge.safe{background:var(--status-good-bg);color:var(--status-good-text);border:1px solid var(--status-good-border)}.dec-badge.moderate{background:var(--status-moderate-bg);color:var(--status-moderate-text);border:1px solid var(--status-moderate-border)}.dec-badge.caution{background:var(--status-warning-bg);color:var(--status-warning-text);border:1px solid var(--status-warning-border)}.dec-badge.danger{background:var(--status-danger-bg);color:var(--status-danger-text);border:1px solid var(--status-danger-border)}.dec-body strong{color:var(--text-main);margin-bottom:2px;font-size:.85rem;display:block}.dec-body p{color:var(--text-dim);font-size:.75rem;line-height:1.4}.section-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.section-title{font-family:var(--font-display);color:var(--text-main);letter-spacing:-.01em;font-size:1.05rem;font-weight:800}.btn-reset-map{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-full);color:var(--text-muted);cursor:pointer;padding:4px 10px;font-size:.72rem;font-weight:600;transition:all .15s}.btn-reset-map:hover{background:var(--bg-surface-hover);color:var(--text-main)}.map-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);flex-direction:column;display:flex;overflow:hidden}.map-top-bar{border-bottom:1px solid var(--border-subtle);background:#f8fafc;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 16px;display:flex}.map-live-badge{color:var(--text-muted);align-items:center;gap:6px;font-size:.72rem;font-weight:700;display:flex}.radar-dot{background:#0284c7;border-radius:50%;width:6px;height:6px}.map-region-filter-chips{flex-wrap:wrap;gap:4px;display:flex}.map-chip{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-full);color:var(--text-muted);cursor:pointer;padding:3px 9px;font-size:.7rem;font-weight:600;transition:all .15s}.map-chip:hover{background:var(--bg-surface-hover);color:var(--text-main)}.map-chip.is-active{color:#fff;background:#0f172a;border-color:#0f172a}.map-canvas{aspect-ratio:16/9.6;background:#f0f9ff;width:100%;max-height:400px;position:relative}.singapore-svg-map{width:100%;height:100%;display:block}.map-caption{border-top:1px solid var(--border-subtle);color:var(--text-dim);text-align:center;background:#fff;padding:10px 16px;font-size:.74rem}.trend-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);flex-direction:column;gap:8px;padding:20px 22px 14px;display:flex}.trend-region-sub{color:var(--text-dim);font-size:.76rem;font-weight:600}.trend-canvas{touch-action:none;width:100%;height:155px;display:block}.trend-footer-note{color:var(--text-dim);text-align:center;font-size:.72rem}.reference-section{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);padding:22px 24px}.reference-desc{color:var(--text-dim);margin-top:2px;margin-bottom:14px;font-size:.82rem}.table-wrapper{border-radius:var(--radius-md);border:1px solid var(--border-subtle);margin-bottom:24px;overflow-x:auto}.advisory-table{border-collapse:collapse;text-align:left;background:#fff;width:100%;font-size:.78rem}.advisory-table th{color:#1e293b;border-bottom:2px solid var(--border-subtle);white-space:nowrap;background:#f8fafc;padding:10px 14px;font-weight:700}.advisory-table td{color:#334155;vertical-align:top;border-bottom:1px solid #f1f5f9;padding:10px 14px}.advisory-table tr:last-child td{border-bottom:none}.advisory-table tr:hover td{background:#f8fafc}.faq-accordion{flex-direction:column;gap:10px;display:flex}.faq-item{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);transition:all .2s;overflow:hidden}.faq-item:hover{border-color:var(--border-default)}.faq-item[open]{box-shadow:var(--shadow-xs);border-color:#cbd5e1}.faq-summary{cursor:pointer;color:#0f172a;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:10px;padding:14px 18px;font-size:.88rem;font-weight:700;list-style:none;display:flex}.faq-summary::-webkit-details-marker{display:none}.faq-chevron{color:var(--text-dim);font-size:.78rem;transition:transform .2s}.faq-item[open] .faq-chevron{transform:rotate(180deg)}.faq-answer{color:#475569;padding:0 18px 14px;font-size:.82rem;line-height:1.55}.faq-answer strong{color:#0f172a}.app-footer{text-align:center;border-top:1px solid var(--border-subtle);color:var(--text-dim);background:var(--bg-surface);padding:28px 20px 48px;font-size:.78rem;line-height:1.6}.footer-links{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin:8px 0;display:flex}.btn-footer-link,.footer-link{color:var(--accent-primary);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;padding:4px;font-family:inherit;font-size:.78rem;font-weight:700;text-decoration:underline;transition:color .15s}.btn-footer-link:hover,.footer-link:hover{color:var(--accent-primary-hover)}.footer-sep{color:#cbd5e1}.footer-sub{color:var(--text-faint);margin-top:6px;font-size:.74rem}.policy-modal{border-radius:var(--radius-lg);width:90%;max-width:620px;box-shadow:var(--shadow-lg);background:0 0;border:none;margin:auto;padding:0}.policy-modal::backdrop{-webkit-backdrop-filter:blur(8px);background:#0f172a73}.policy-modal-card{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);color:var(--text-main);background:#fff;flex-direction:column;gap:16px;max-height:85vh;padding:28px 24px;display:flex;overflow-y:auto}.policy-modal-header{justify-content:space-between;align-items:center;display:flex}.policy-badge{background:var(--status-good-bg);color:var(--status-good-text);border:1px solid var(--status-good-border);border-radius:var(--radius-full);align-items:center;gap:6px;padding:4px 10px;font-size:.72rem;font-weight:700;display:inline-flex}.btn-close-modal{border:1px solid var(--border-subtle);width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:#f1f5f9;border-radius:50%;justify-content:center;align-items:center;transition:all .15s;display:flex}.btn-close-modal:hover{color:#fff;background:#0f172a}.policy-modal-title{font-family:var(--font-display);color:var(--text-main);letter-spacing:-.01em;font-size:1.35rem;font-weight:800}.policy-modal-sub{color:var(--text-dim);font-size:.76rem}.policy-modal-body{color:var(--text-muted);flex-direction:column;gap:12px;font-size:.84rem;line-height:1.55;display:flex}.policy-modal-body h3{color:var(--text-main);margin-top:6px;font-size:.94rem;font-weight:700}.policy-modal-body ul{flex-direction:column;gap:6px;padding:0;list-style:none;display:flex}.policy-modal-body li{padding-left:20px;position:relative}.policy-modal-body li:before{content:"✓";color:var(--status-good);font-weight:700;position:absolute;left:0}.highlight-box{border-radius:var(--radius-md);color:#334155;background:#f8fafc;border:1px solid #e2e8f0;padding:12px 16px;font-size:.8rem}.highlight-box strong{color:var(--text-main)}.policy-modal-footer{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;margin-top:8px;padding-top:14px;display:flex}.policy-link-full{color:var(--accent-primary);font-size:.78rem;font-weight:700;text-decoration:underline}.btn-modal-dismiss{color:#fff;border-radius:var(--radius-full);cursor:pointer;background:#0f172a;border:none;padding:8px 18px;font-size:.8rem;font-weight:700;transition:opacity .15s}.btn-modal-dismiss:hover{opacity:.9}@media (width<=480px){.header-main{flex-wrap:wrap;padding:10px 14px 6px}.header-right{gap:6px}.app-body{padding:14px 14px 30px}.hero-card{padding:18px 16px}.hero-readout{padding:14px}.aqi-value{font-size:3.4rem}.readout-category{font-size:1.1rem}.decision-grid{grid-template-columns:1fr}.hero-share-bar{flex-direction:column;align-items:stretch;gap:10px}.share-social-links{justify-content:space-between}.btn-share-social span{display:none}.btn-share-social{flex:1;justify-content:center;padding:8px 10px}}.lang-switch-wrap{background:var(--bg-surface-hover);border:1px solid var(--border-subtle);border-radius:var(--radius-full);align-items:center;gap:2px;padding:2px;display:inline-flex}.btn-lang{color:var(--text-dim);border-radius:var(--radius-full);cursor:pointer;background:0 0;border:none;padding:4px 9px;font-family:inherit;font-size:.72rem;font-weight:700;line-height:1.2;transition:all .15s}.btn-lang:hover{color:var(--text-main)}.btn-lang.active{color:#fff;box-shadow:var(--shadow-xs);background:#0f172a}.btn-a11y{background:var(--bg-surface-hover);border:1px solid var(--border-subtle);border-radius:var(--radius-full);color:var(--text-muted);cursor:pointer;transition:all .2s var(--spring);align-items:center;gap:5px;padding:5px 10px;font-family:inherit;font-size:.74rem;font-weight:700;line-height:1.2;display:inline-flex}.btn-a11y:hover{border-color:var(--border-default);color:var(--text-main);background:#f1f5f9}.btn-a11y.active{color:#fff;background:#0284c7;border-color:#0284c7;box-shadow:0 2px 8px #0284c740}.a11y-badge{font-family:var(--font-display);letter-spacing:-.02em;font-size:.8rem;font-weight:900}.btn-a11y.active .a11y-badge{color:#fff}html.large-text{font-size:18px!important}html.large-text body{--text-main:#000;--text-muted:#1e293b;--text-dim:#475569;line-height:1.6}html.large-text .brand-title{font-size:1.6rem}html.large-text .hero-region-name{font-size:1.7rem}html.large-text .hero-estates-sub{color:#334155;font-size:1.05rem;font-weight:600}html.large-text .status-heading{font-size:1.35rem;font-weight:900}html.large-text .status-description{font-size:1.08rem;font-weight:600;line-height:1.6}html.large-text .aqi-value{font-size:5.2rem}html.large-text .readout-category{font-size:1.4rem;font-weight:900}html.large-text .pm-num{font-size:2.8rem}html.large-text .pm-unit{font-size:1.05rem}html.large-text .decision-card{padding:20px}html.large-text .decision-title{font-size:1.15rem;font-weight:800}html.large-text .decision-explanation{color:#1e293b;font-size:1.05rem;line-height:1.5}html.large-text .decision-badge{padding:5px 14px;font-size:.95rem}html.large-text .region-btn{padding:8px 18px;font-size:1rem}html.large-text .matrix-table th,html.large-text .matrix-table td{padding:14px 16px;font-size:1rem}html.large-text .faq-summary{padding:18px 20px;font-size:1.15rem;font-weight:800}html.large-text .faq-answer{font-size:1.05rem;line-height:1.65}html.large-text .senior-alert-banner{display:flex!important}.senior-alert-banner{border-radius:var(--radius-md);box-shadow:var(--shadow-xs);background:#f8fafc;border:1.5px solid #cbd5e1;align-items:center;gap:12px;margin-top:2px;padding:12px 16px;transition:all .2s;display:flex}.senior-icon{flex-shrink:0;font-size:1.5rem}.senior-text{color:#0f172a;font-size:.88rem;line-height:1.45}.senior-text strong{color:#0f172a;margin-right:4px;font-weight:800}.hero-share-bar{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:12px;margin-top:2px;padding-top:14px;display:flex}.share-bar-left{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.share-bar-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;font-size:.74rem;font-weight:700}.btn-snapshot{color:#fff;border-radius:var(--radius-full);cursor:pointer;box-shadow:var(--shadow-sm);transition:all .2s var(--spring);background:#0f172a;border:none;align-items:center;gap:6px;padding:6px 14px;font-family:inherit;font-size:.78rem;font-weight:700;display:inline-flex}.btn-snapshot:hover{background:#1e293b;transform:translateY(-1px);box-shadow:0 4px 10px #0f172a33}.btn-snapshot:active{transform:translateY(0)}.snapshot-icon{font-size:.85rem}.share-social-links{align-items:center;gap:6px;display:flex}.btn-share-social{background:var(--bg-surface-hover);border:1px solid var(--border-subtle);border-radius:var(--radius-full);color:var(--text-muted);cursor:pointer;align-items:center;gap:5px;padding:5px 10px;font-size:.74rem;font-weight:700;line-height:1.2;text-decoration:none;transition:all .15s;display:inline-flex}.btn-share-social svg{flex-shrink:0}.btn-share-social:hover{box-shadow:var(--shadow-xs);transform:translateY(-1px)}.btn-share-social.share-whatsapp:hover{color:#065f46;background:#ecfdf5;border-color:#a7f3d0}.btn-share-social.share-telegram:hover{color:#0369a1;background:#f0f9ff;border-color:#bae6fd}.btn-share-social.share-facebook:hover{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.btn-share-social.share-x:hover{color:#0f172a;background:#f8fafc;border-color:#0f172a}.btn-share-social.share-native:hover{border-color:var(--border-default);color:var(--text-main);background:#f1f5f9}.toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:8px;width:max-content;max-width:90vw;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast-notification{pointer-events:auto;color:#fff;border-radius:var(--radius-full);background:#0f172a;align-items:center;gap:10px;padding:12px 20px;font-size:.84rem;font-weight:700;transition:opacity .3s,transform .3s;animation:.3s cubic-bezier(.16,1,.3,1) forwards toastSlideUp;display:flex;box-shadow:0 10px 25px -5px #0f172a4d,0 8px 10px -6px #0f172a33}.toast-notification.toast-hide{opacity:0;transform:translateY(10px)scale(.95)}@keyframes toastSlideUp{0%{opacity:0;transform:translateY(20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}
