:root{color:#172033;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--primary:#2563eb;--primary-dark:#1d4ed8;--primary-soft:#eff6ff;--text:#172033;--text-muted:#667085;--text-light:#98a2b3;--border:#e4e7ec;--border-light:#eef0f4;--surface:#fff;--surface-soft:#f8fafc;--success:#15803d;--shadow-sm:0 2px 8px #1018280d;--shadow-md:0 12px 32px #1018281a;--shadow-lg:0 24px 70px #1018282e;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-xl:24px;background:#f5f7fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;color:var(--text);background:#f5f7fb;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}.app{min-height:100vh}.site-header{z-index:20;-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border-light);background:#fffffff5;position:sticky;top:0;box-shadow:0 3px 16px #1018280a}.header-inner{justify-content:space-between;align-items:center;gap:24px;width:min(1400px,100% - 48px);min-height:86px;margin:0 auto;display:flex}.site-header h1{letter-spacing:-.03em;margin:0;font-size:1.65rem;font-weight:800;line-height:1.1}.site-header p{color:var(--text-muted);margin:7px 0 0;font-size:.9rem}.header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.app-nav{border:1px solid var(--border-light);background:#f5f7fb;border-radius:13px;align-items:center;gap:4px;padding:5px;display:inline-flex}.app-nav-button{color:var(--text-muted);background:0 0;border:1px solid #0000;border-radius:9px;padding:10px 15px;font-size:.86rem;font-weight:700;transition:all .2s}.app-nav-button:hover{color:var(--primary);background:#eaf1ff}.app-nav-button.active{color:var(--primary-dark);box-shadow:var(--shadow-sm);background:#fff;border-color:#e5edff}.status{color:var(--success);letter-spacing:.06em;white-space:nowrap;font-size:.72rem;font-weight:700}.favorites-button{border:1px solid var(--border);color:var(--text);background:#fff;border-radius:11px;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-size:.86rem;font-weight:700;transition:all .2s;display:inline-flex}.favorites-button:hover{color:#e11d48;background:#fff1f2;border-color:#fecdd3;transform:translateY(-1px)}.favorites-button.active{color:#e11d48;background:#fff1f2;border-color:#fecdd3}.favorites-button:active{transform:translateY(0)}.favorites-button span{min-width:23px;height:23px;color:var(--primary-dark);background:#eff6ff;border-radius:7px;justify-content:center;align-items:center;padding:0 6px;font-size:.73rem;font-weight:800;display:inline-flex}.auth-user{border:1px solid var(--border-light);background:var(--surface-soft);color:#475467;text-overflow:ellipsis;white-space:nowrap;border-radius:999px;align-items:center;max-width:180px;padding:9px 13px;font-size:.83rem;font-weight:700;display:inline-flex;overflow:hidden}.header-actions .auth-button{border:1px solid var(--primary);background:var(--primary);color:#fff;border-radius:10px;min-height:40px;padding:0 16px;font-size:.85rem;font-weight:750;transition:all .2s}.header-actions .auth-button:hover{background:var(--primary-dark);border-color:var(--primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px #2563eb2e}.header-actions .auth-button:active{transform:translateY(0)}.app-nav-button:focus-visible,.favorites-button:focus-visible,.header-actions .auth-button:focus-visible{outline-offset:3px;outline:3px solid #2563eb40}@media (width<=820px){.header-inner{align-items:flex-start;gap:16px}.header-actions{gap:8px}.app-nav-button{padding:9px 12px}}@media (width<=600px){.header-inner{flex-direction:column;gap:14px}.header-actions{flex-flow:wrap;justify-content:flex-start;gap:8px;width:100%}.app-nav{order:-1}.app-nav-button{padding:9px 12px}.auth-user{max-width:140px}}.main-content{width:min(1400px,100% - 48px);margin:0 auto;padding:42px 0 70px}.hero-section{justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:32px;display:flex}.eyebrow{color:var(--primary);letter-spacing:.12em;margin-bottom:9px;font-size:.7rem;font-weight:800;display:inline-block}.hero-section h2{letter-spacing:-.045em;margin:0;font-size:clamp(2rem,4vw,3rem);line-height:1.05}.hero-section p{max-width:620px;color:var(--text-muted);margin:12px 0 0;line-height:1.6}.country-count{border:1px solid var(--border);border-radius:var(--radius-md);text-align:right;min-width:150px;box-shadow:var(--shadow-sm);background:#fff;flex-direction:column;gap:3px;padding:17px 20px;display:flex}.country-count strong{font-size:1.55rem;line-height:1}.country-count span{color:var(--text-muted);font-size:.76rem}.favorites-banner{background:var(--primary-soft);border-radius:var(--radius-md);border:1px solid #bfdbfe;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;padding:15px 18px;display:flex}.favorites-banner>div{flex-direction:column;gap:3px;display:flex}.favorites-banner strong{color:var(--primary-dark);font-size:.9rem}.favorites-banner span{color:#64748b;font-size:.78rem}.favorites-banner button{color:var(--primary-dark);background:0 0;border:0;font-size:.82rem;font-weight:700}.favorites-banner button:hover{text-decoration:underline}.favorites-message{border-radius:var(--radius-md);color:#b42318;background:#fff5f5;border:1px solid #fecaca;margin:0 0 22px;padding:12px 15px;font-size:.82rem;line-height:1.5}.dashboard-page{gap:30px;display:grid}.dashboard-welcome{border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);background:linear-gradient(120deg,#fff 0%,#eff6ff 100%);border:1px solid #dbe7ff;justify-content:space-between;align-items:flex-end;gap:24px;padding:34px;display:flex}.dashboard-welcome h2{letter-spacing:-.045em;margin:0;font-size:clamp(2rem,4vw,2.8rem);line-height:1.08}.dashboard-welcome p{color:var(--text-muted);margin:10px 0 0}.dashboard-explore-button{background:var(--primary);color:#fff;border:0;border-radius:11px;padding:12px 17px;font-weight:750;transition:background .2s,transform .2s;box-shadow:0 5px 14px #2563eb33}.dashboard-explore-button:hover{background:var(--primary-dark);transform:translateY(-1px)}.dashboard-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.dashboard-stat-card{border:1px solid var(--border);border-radius:var(--radius-lg);min-height:142px;box-shadow:var(--shadow-sm);background:#fff;flex-direction:column;gap:7px;padding:22px;display:flex}.dashboard-stat-card>span{color:var(--text-muted);font-size:.84rem;font-weight:650}.dashboard-stat-card strong{color:var(--text);letter-spacing:-.04em;font-size:2rem;line-height:1}.dashboard-stat-card small{color:var(--text-light);font-size:.78rem}.dashboard-favorites-section,.dashboard-quick-actions article{border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff;padding:26px}.dashboard-section-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.dashboard-section-heading .eyebrow,.dashboard-quick-actions .eyebrow{margin-bottom:6px}.dashboard-section-heading h3,.dashboard-quick-actions h3{letter-spacing:-.025em;margin:0;font-size:1.25rem}.dashboard-text-button{color:var(--primary-dark);background:0 0;border:0;padding:8px 0;font-size:.86rem;font-weight:750}.dashboard-text-button:hover{text-decoration:underline}.dashboard-favorite-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.dashboard-favorite-card{border:1px solid var(--border);border-radius:var(--radius-md);background:#fff;transition:border-color .2s,transform .2s,box-shadow .2s;overflow:hidden}.dashboard-favorite-card:hover{box-shadow:var(--shadow-sm);border-color:#bfdbfe;transform:translateY(-2px)}.dashboard-favorite-main{width:100%;min-height:92px;color:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:13px;padding:12px;display:flex}.dashboard-favorite-main img{object-fit:cover;background:#f1f5f9;border-radius:7px;flex:none;width:76px;height:54px}.dashboard-favorite-copy{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.dashboard-favorite-copy strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.dashboard-favorite-copy small{color:var(--text-muted);font-size:.75rem}.dashboard-favorite-arrow{color:var(--text-light);font-size:1rem}.dashboard-empty-state{text-align:center;justify-items:center;gap:9px;padding:28px 14px 12px;display:grid}.dashboard-empty-state>span{color:var(--primary);font-size:2rem}.dashboard-empty-state h3,.dashboard-empty-state p{margin:0}.dashboard-empty-state p{color:var(--text-muted);margin-bottom:8px;font-size:.88rem}.dashboard-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.dashboard-quick-actions article{flex-direction:column;align-items:flex-start;display:flex}.dashboard-quick-actions p{color:var(--text-muted);margin:8px 0 10px;font-size:.86rem;line-height:1.55}.controls-section{border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff;grid-template-columns:minmax(0,1fr) 190px 190px;gap:14px;margin-bottom:28px;padding:18px;display:grid}.search-box,.filter-box{flex-direction:column;gap:7px;display:flex}.search-box label,.filter-box label{color:#475467;font-size:.74rem;font-weight:700}.search-box input,.filter-box select{border:1px solid var(--border);width:100%;height:44px;color:var(--text);background:#fff;border-radius:10px;outline:none;padding:0 13px;transition:border-color .2s,box-shadow .2s}.search-box input::placeholder{color:#98a2b3}.search-box input:focus,.filter-box select:focus{border-color:#93c5fd;box-shadow:0 0 0 4px #2563eb14}.comparison-bar{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff;border:1px solid #bfdbfe;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin-bottom:28px;padding:14px 16px;display:grid}.comparison-info{white-space:nowrap;flex-direction:column;gap:3px;display:flex}.comparison-info strong{font-size:.86rem}.comparison-info span{color:var(--text-muted);font-size:.73rem}.comparison-selected{flex-wrap:wrap;gap:8px;display:flex}.comparison-chip{background:var(--primary-soft);color:#1e3a8a;border:1px solid #dbeafe;border-radius:999px;align-items:center;gap:7px;min-height:34px;padding:5px 8px;font-size:.78rem;font-weight:650;display:inline-flex}.comparison-chip button{color:#64748b;background:0 0;border:0;border-radius:50%;width:20px;height:20px;padding:0;font-size:1rem;line-height:1}.comparison-chip button:hover{color:#1d4ed8;background:#dbeafe}.comparison-actions{align-items:center;gap:8px;display:flex}.compare-button,.clear-comparison-button{border-radius:9px;min-height:38px;padding:0 13px;font-size:.78rem;font-weight:700}.compare-button{border:1px solid var(--primary);background:var(--primary);color:#fff;transition:background .2s,border-color .2s,transform .2s}.compare-button:hover:not(:disabled){background:var(--primary-dark);border-color:var(--primary-dark)}.compare-button:disabled{opacity:.45}.clear-comparison-button{border:1px solid var(--border);color:#475467;background:#fff}.clear-comparison-button:hover{background:var(--surface-soft)}.results-summary{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;font-size:.82rem;display:flex}.results-summary strong{color:var(--text)}.favorites-active-label{background:var(--primary-soft);color:var(--primary-dark);border-radius:999px;padding:5px 9px;font-size:.72rem;font-weight:700}.country-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.country-card{border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);cursor:pointer;background:#fff;transition:transform .2s,box-shadow .2s,border-color .2s;overflow:hidden}.country-card:hover{box-shadow:var(--shadow-md);border-color:#cbd5e1;transform:translateY(-3px)}.comparison-selected-card{box-shadow:0 0 0 2px #2563eb14, var(--shadow-sm);border-color:#93c5fd}.card-flag-wrapper{background:#f1f5f9;justify-content:center;align-items:center;height:190px;display:flex;position:relative;overflow:hidden}.card-flag{object-fit:cover;width:100%;height:100%}.card-favorite{color:#667085;background:#ffffffeb;border:1px solid #ffffffbf;border-radius:50%;width:36px;height:36px;font-size:1.1rem;transition:transform .2s,color .2s,background .2s;position:absolute;top:12px;right:12px;box-shadow:0 4px 12px #1018281a}.card-favorite:hover{transform:scale(1.05)}.card-favorite.favorite{color:#dc2626;background:#fff}.card-compare{color:#344054;background:#fffffff0;border:1px solid #ffffffbf;border-radius:8px;min-height:32px;padding:0 11px;font-size:.72rem;font-weight:750;position:absolute;bottom:12px;left:12px;box-shadow:0 4px 12px #10182814}.card-compare:hover:not(:disabled){color:var(--primary);background:#fff}.card-compare.selected{background:var(--primary);border-color:var(--primary);color:#fff}.card-compare:disabled{opacity:.45}.card-content{padding:17px}.country-card-title{justify-content:space-between;align-items:flex-start;gap:12px;min-height:76px;display:flex}.country-card-title h3{letter-spacing:-.02em;margin:0;font-size:1.05rem;line-height:1.25}.country-card-title p{color:var(--text-muted);margin:6px 0 0;font-size:.76rem;line-height:1.45}.card-emoji{flex-shrink:0;font-size:1.6rem}.view-details-button{border:1px solid var(--border);width:100%;height:40px;color:var(--primary);background:#fff;border-radius:9px;font-size:.78rem;font-weight:750;transition:background .2s,border-color .2s}.view-details-button:hover{background:var(--primary-soft);border-color:#bfdbfe}.loading-state{min-height:300px;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;display:flex}.loading-spinner{border:3px solid #dbeafe;border-top-color:var(--primary);border-radius:50%;width:34px;height:34px;margin-bottom:12px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-state,.empty-favorites{border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;background:#fff;padding:60px 24px}.error-state h3,.empty-favorites h3{margin:0 0 8px}.error-state p,.empty-favorites p{color:var(--text-muted);margin:0;line-height:1.6}.empty-icon{color:#cbd5e1;margin-bottom:10px;font-size:2.4rem}.empty-favorites button{border:1px solid var(--primary);background:var(--primary);color:#fff;border-radius:9px;margin-top:20px;padding:10px 15px;font-size:.8rem;font-weight:700}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(7px);background:#0f172a9e;justify-content:center;align-items:center;padding:28px;animation:.2s backdropIn;display:flex;position:fixed;inset:0}@keyframes backdropIn{0%{opacity:0}to{opacity:1}}.auth-backdrop{z-index:120}.auth-modal{border-radius:var(--radius-xl);width:min(460px,100%);box-shadow:var(--shadow-lg);background:#fff;border:1px solid #ffffffd9;padding:42px;animation:.24s modalIn;position:relative}.auth-modal>.eyebrow{margin-bottom:10px}.auth-modal h2{color:#101828;letter-spacing:-.04em;margin:0;font-size:1.8rem;line-height:1.15}.auth-description{color:var(--text-muted);margin:10px 0 25px;font-size:.9rem;line-height:1.55}.auth-modal form,.auth-name-fields{gap:16px;display:grid}.auth-name-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-field,.auth-name-fields label{color:#344054;flex-direction:column;gap:7px;min-width:0;font-size:.78rem;font-weight:700;display:flex}.auth-field input,.auth-name-fields input{border:1px solid var(--border);width:100%;height:44px;color:var(--text);background:#fff;border-radius:9px;outline:none;padding:0 12px;transition:border-color .2s,box-shadow .2s}.auth-field input:focus,.auth-name-fields input:focus{border-color:#93c5fd;box-shadow:0 0 0 4px #2563eb14}.auth-submit{border:1px solid var(--primary);background:var(--primary);color:#fff;border-radius:10px;min-height:46px;margin-top:3px;padding:0 16px;font-size:.86rem;font-weight:750;transition:background .2s,transform .2s}.auth-submit:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-1px)}.auth-submit:disabled{opacity:.65}.auth-message{color:#b42318;background:#fff5f5;border:1px solid #fecaca;border-radius:9px;margin:0;padding:10px 12px;font-size:.8rem;line-height:1.45}.auth-message-success{color:#067647;background:#ecfdf3;border-color:#abefc6}.google-signin-option{margin-top:20px}.google-signin-divider{color:var(--text-muted);align-items:center;gap:12px;margin-bottom:16px;font-size:.7rem;font-weight:700;display:flex}.google-signin-divider:before,.google-signin-divider:after{content:"";background:var(--border);flex:1;height:1px}.google-signin-button{color:#344054;cursor:pointer;background:#fff;border:1px solid #d0d5dd;border-radius:9px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:40px;padding:8px 14px;font-size:.88rem;font-weight:650;display:flex}.google-signin-button:hover:not(:disabled){background:#f9fafb}.google-signin-button:disabled{cursor:wait;opacity:.65}.google-mark{color:#4285f4;font-size:1.1rem;font-weight:800}.google-signin-setup{color:var(--text-muted);text-align:center;margin:0;font-size:.78rem;line-height:1.45}.auth-switch{color:var(--text-muted);text-align:center;margin:21px 0 0;font-size:.8rem}.auth-switch button{color:var(--primary);font:inherit;background:0 0;border:0;padding:0;font-weight:750}.auth-switch button:hover:not(:disabled){color:var(--primary-dark);text-decoration:underline}.modal-close{z-index:5;border:1px solid var(--border);color:#475467;width:38px;height:38px;box-shadow:var(--shadow-sm);background:#fffffff0;border-radius:50%;justify-content:center;align-items:center;font-size:1.45rem;line-height:1;transition:background .2s,color .2s,transform .2s;display:flex;position:absolute;top:18px;right:18px}.modal-close:hover{color:#111827;background:#fff;transform:rotate(4deg)}.country-modal{border-radius:var(--radius-xl);width:min(1050px,100%);max-height:calc(100vh - 56px);box-shadow:var(--shadow-lg);background:#fff;border:1px solid #fffc;animation:.24s modalIn;position:relative;overflow:hidden}@keyframes modalIn{0%{opacity:0;transform:translateY(12px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.detail-hero{border-bottom:1px solid var(--border);background:linear-gradient(135deg,#f8fbff 0%,#fff 70%);grid-template-columns:220px minmax(0,1fr);gap:28px;padding:30px 70px 26px 30px;display:grid}.detail-flag-wrapper{border:1px solid var(--border);height:145px;box-shadow:var(--shadow-sm);background:#f1f5f9;border-radius:14px;justify-content:center;align-items:center;display:flex;overflow:hidden}.detail-flag{object-fit:contain;box-sizing:border-box;width:100%;height:100%;padding:10px}.detail-heading{flex-direction:column;justify-content:center;min-width:0;display:flex}.detail-title-row{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.detail-title-row>div:first-child{min-width:0}.detail-emoji{margin-bottom:5px;font-size:1.25rem;display:inline-block}.detail-heading h2{color:#101828;letter-spacing:-.04em;margin:0;font-size:clamp(1.7rem,4vw,2.4rem);line-height:1.1}.detail-heading p{color:var(--text-muted);margin:8px 0 0;font-size:.88rem;line-height:1.5}.detail-favorite{border:1px solid var(--border);color:#475467;background:#fff;border-radius:9px;flex-shrink:0;min-height:38px;padding:0 12px;font-size:.75rem;font-weight:700;transition:background .2s,border-color .2s,color .2s}.detail-favorite:hover{background:var(--primary-soft);color:var(--primary);border-color:#bfdbfe}.detail-favorite.favorite{color:#dc2626}.detail-actions{flex-wrap:wrap;gap:9px;margin-top:20px;display:flex}.detail-compare,.map-button{border-radius:9px;justify-content:center;align-items:center;min-height:38px;padding:0 13px;font-size:.76rem;font-weight:750;text-decoration:none;transition:background .2s,border-color .2s,color .2s;display:inline-flex}.detail-compare{border:1px solid var(--primary);background:var(--primary);color:#fff}.detail-compare:hover:not(:disabled){background:var(--primary-dark);border-color:var(--primary-dark)}.detail-compare.selected{color:var(--primary);background:#fff}.detail-compare:disabled{opacity:.45}.map-button{border:1px solid var(--border);color:#344054;background:#fff}.map-button:hover{background:var(--surface-soft);border-color:#cbd5e1}.detail-body{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent;max-height:calc(100vh - 285px);padding:28px 30px 34px;overflow-y:auto}.detail-body::-webkit-scrollbar{width:8px}.detail-body::-webkit-scrollbar-track{background:0 0}.detail-body::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px}.detail-section{border-bottom:1px solid var(--border-light);margin-bottom:26px;padding-bottom:26px}.detail-section:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}.detail-section h3{color:#101828;letter-spacing:-.015em;margin:0 0 14px;font-size:1rem;font-weight:800}.detail-section h3:after{content:"";background:var(--primary);border-radius:999px;width:34px;height:3px;margin-top:8px;display:block}.info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.info-item{background:var(--surface-soft);border:1px solid var(--border-light);border-radius:10px;flex-direction:column;gap:5px;min-width:0;padding:13px 14px;display:flex}.info-item span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.045em;font-size:.7rem;font-weight:650}.info-item strong{color:#1d2939;overflow-wrap:anywhere;font-size:.82rem;line-height:1.5}.nearby-places-section .section-description{color:var(--text-muted);margin:-5px 0 18px;font-size:.82rem;line-height:1.6}.places-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.places-toolbar label{color:#344054;font-size:.8rem;font-weight:700}.places-toolbar select{color:#344054;border:1px solid var(--border-light);min-width:150px;font:inherit;cursor:pointer;background:#fff;border-radius:8px;padding:9px 12px;font-size:.8rem}.places-toolbar select:focus{outline:2px solid var(--primary);outline-offset:2px}.places-message{color:var(--text-muted);background:var(--surface-soft);border:1px solid var(--border-light);text-align:center;border-radius:10px;padding:16px;font-size:.82rem;line-height:1.5}.places-error{color:#b42318;background:#fef3f2;border-color:#fecdca}.places-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.place-card{border:1px solid var(--border-light);background:#fff;border-radius:14px;min-width:0;padding:0;transition:border-color .2s,transform .2s,box-shadow .2s;overflow:hidden}.place-card:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 5px 14px #10182814}.place-image-wrapper{background:#eef2f6;width:100%;height:190px;position:relative;overflow:hidden}.place-image{object-fit:cover;width:100%;height:100%;display:block}.place-image-placeholder{color:#667085;background:#eef2f6;justify-content:center;align-items:center;width:100%;height:100%;font-size:.82rem}.place-card-content{padding:16px}.place-card h4{color:#1d2939;overflow-wrap:anywhere;margin:0 0 8px;font-size:.95rem;font-weight:750;line-height:1.45}.place-address{color:var(--text-muted);overflow-wrap:anywhere;margin:0 0 12px;font-size:.76rem;line-height:1.6}.place-photo-attribution{color:#667085;overflow-wrap:anywhere;background:#f8fafc;border:1px solid #eaecf0;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin-bottom:14px;padding:10px;font-size:.68rem;line-height:1.5;display:grid}.place-photo-attribution a{color:var(--primary);font-weight:650;text-decoration:none}.place-photo-attribution a:hover{text-decoration:underline}.place-links{flex-wrap:wrap;gap:12px;display:flex}.place-links a{color:var(--primary);font-size:.76rem;font-weight:700;text-decoration:none}.place-links a:hover{text-decoration:underline}@media (width<=600px){.places-grid{grid-template-columns:1fr}.places-toolbar{flex-direction:column;align-items:flex-start}.places-toolbar select{width:100%}.place-image-wrapper{height:210px}}.comparison-modal{border-radius:var(--radius-xl);width:min(1100px,100%);max-height:calc(100vh - 56px);box-shadow:var(--shadow-lg);background:#fff;animation:.24s modalIn;position:relative;overflow:hidden}.comparison-header{border-bottom:1px solid var(--border);background:linear-gradient(135deg,#f8fbff 0%,#fff 75%);padding:30px 70px 22px 30px}.comparison-header h2{color:#101828;letter-spacing:-.035em;margin:0;font-size:clamp(1.5rem,3vw,2rem)}.comparison-header p{max-width:650px;color:var(--text-muted);margin:8px 0 0;font-size:.83rem;line-height:1.5}.comparison-country-header{border-bottom:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.comparison-country{background:#fff;align-items:center;gap:14px;min-width:0;padding:18px 22px;display:flex}.comparison-country+.comparison-country{border-left:1px solid var(--border)}.comparison-country img{object-fit:cover;border:1px solid var(--border);background:#f1f5f9;border-radius:7px;flex-shrink:0;width:76px;height:50px}.comparison-country>div{min-width:0}.comparison-country>div>span{margin-bottom:2px;font-size:1rem;display:block}.comparison-country h3{color:#101828;margin:0;font-size:1rem;line-height:1.25}.comparison-country p{color:var(--text-muted);overflow-wrap:anywhere;margin:4px 0 0;font-size:.72rem;line-height:1.4}.comparison-table-wrapper{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent;max-height:430px;overflow:auto}.comparison-table-wrapper::-webkit-scrollbar{width:8px;height:8px}.comparison-table-wrapper::-webkit-scrollbar-track{background:0 0}.comparison-table-wrapper::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px}.comparison-table{border-collapse:separate;border-spacing:0;width:100%;font-size:.8rem}.comparison-table th,.comparison-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--border-light);padding:13px 16px}.comparison-table thead th{z-index:2;color:#344054;border-bottom:1px solid var(--border);background:#f8fafc;font-size:.73rem;font-weight:800;position:sticky;top:0}.comparison-table thead th:first-child{width:190px}.comparison-table tbody td:first-child{color:#667085;background:#fcfcfd;font-weight:700}.comparison-table tbody td:not(:first-child){color:#1d2939;font-weight:550}.comparison-table tbody tr:last-child td{border-bottom:0}.comparison-table tbody tr:hover td{background:#f8fbff}.comparison-footer{border-top:1px solid var(--border);background:#fcfcfd;flex-wrap:wrap;align-items:center;gap:9px;padding:15px 18px;display:flex}.comparison-footer-actions{gap:7px;display:flex}.comparison-footer button{border:1px solid var(--border);color:#344054;background:#fff;border-radius:8px;min-height:35px;padding:0 11px;font-size:.72rem;font-weight:700}.comparison-footer button:hover{background:var(--surface-soft)}.comparison-footer .remove-comparison{color:#b42318}.comparison-footer .remove-comparison:hover{background:#fff5f5;border-color:#fecaca}.comparison-footer>.clear-comparison-button{border-color:var(--primary);background:var(--primary);color:#fff;margin-left:auto}.comparison-footer>.clear-comparison-button:hover{background:var(--primary-dark);border-color:var(--primary-dark)}.comparison-hint{z-index:30;color:#fff;box-shadow:var(--shadow-md);background:#172033;border-radius:999px;padding:9px 14px;font-size:.74rem;font-weight:650;position:fixed;bottom:22px;left:50%;transform:translate(-50%)}@media (width<=1100px){.country-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-favorite-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.comparison-bar{grid-template-columns:1fr auto}.comparison-selected{grid-area:2/1/auto/-1}}@media (width<=820px){.header-inner,.main-content{width:min(100% - 32px,700px)}.header-inner{align-items:flex-start;min-height:auto;padding:16px 0}.header-actions{flex-direction:column;align-items:flex-end;gap:8px}.dashboard-welcome{align-items:flex-start}.status{display:none}.controls-section{grid-template-columns:1fr 1fr}.search-box{grid-column:1/-1}.country-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-hero{grid-template-columns:170px minmax(0,1fr);gap:20px}.detail-flag-wrapper{height:120px}.detail-title-row{flex-direction:column}.detail-favorite{align-self:flex-start}}@media (width<=600px){.modal-backdrop{align-items:flex-end;padding:0}.auth-modal{border-radius:22px 22px 0 0;width:100%;padding:32px 22px 28px}.auth-modal h2{font-size:1.55rem}.auth-name-fields{grid-template-columns:1fr}.header-inner,.main-content{width:min(100% - 24px,520px)}.site-header{position:relative}.header-inner{flex-direction:column;gap:14px}.header-actions{flex-direction:row;justify-content:space-between;align-items:center;gap:8px;width:100%}.app-nav{order:-1}.main-content{padding-top:28px;padding-bottom:45px}.hero-section{flex-direction:column;align-items:stretch;gap:18px}.hero-section h2{font-size:2rem}.dashboard-page{gap:18px}.dashboard-welcome{flex-direction:column;align-items:stretch;gap:18px;padding:24px}.dashboard-welcome .dashboard-explore-button{width:100%}.dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dashboard-stat-card{min-height:122px;padding:16px}.dashboard-stat-card:last-child{grid-column:1/-1}.dashboard-favorites-section,.dashboard-quick-actions article{padding:20px}.dashboard-section-heading{align-items:flex-start}.dashboard-favorite-grid,.dashboard-quick-actions{grid-template-columns:1fr}.country-count{text-align:left;width:100%}.controls-section{grid-template-columns:1fr;padding:14px}.search-box{grid-column:auto}.comparison-bar{flex-direction:column;align-items:stretch;display:flex}.comparison-actions{width:100%}.comparison-actions button{flex:1}.country-grid{grid-template-columns:1fr}.card-flag-wrapper{height:210px}.country-modal{border-radius:22px 22px 0 0;width:100%;max-height:94vh}.detail-hero{grid-template-columns:1fr;gap:16px;padding:24px 52px 22px 18px}.detail-flag-wrapper{height:160px}.detail-heading h2{font-size:1.8rem}.detail-actions{flex-direction:column}.detail-compare,.map-button{width:100%}.detail-body{max-height:calc(94vh - 350px);padding:22px 18px 28px}.info-grid{grid-template-columns:1fr}.modal-close{top:12px;right:12px}.comparison-modal{border-radius:22px 22px 0 0;width:100%;max-height:94vh}.comparison-header{padding:24px 52px 20px 18px}.comparison-country-header{grid-template-columns:1fr}.comparison-country{padding:14px 18px}.comparison-country+.comparison-country{border-left:0;border-top:1px solid var(--border)}.comparison-table-wrapper{max-height:45vh}.comparison-table{min-width:620px}.comparison-footer{padding:12px}.comparison-footer-actions{width:100%}.comparison-footer-actions button{flex:1}.comparison-footer>.clear-comparison-button{width:100%;margin-left:0}.comparison-hint{white-space:nowrap;max-width:calc(100% - 24px);bottom:12px}}.profile-settings-modal{overscroll-behavior:contain;scrollbar-gutter:stable;width:min(700px,100%);max-height:min(90vh,900px);overflow-y:auto}.profile-settings-content{gap:18px;display:grid}.profile-settings-section{border:1px solid var(--border);border-radius:var(--radius-lg);background:#fff;gap:16px;padding:22px;display:grid}.profile-settings-heading .eyebrow{margin:0 0 5px}.profile-settings-heading h3{color:var(--text);letter-spacing:-.02em;margin:0;font-size:1.08rem}.profile-fields-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.profile-edit-form,.profile-settings-section form{gap:16px;display:grid}.profile-settings-section .auth-field input,.profile-settings-section .auth-field select,.profile-settings-section .auth-field textarea{border:1px solid var(--border);width:100%;min-width:0;color:var(--text);font:inherit;background:#fff;border-radius:9px;outline:none;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.profile-settings-section .auth-field input,.profile-settings-section .auth-field select{height:44px;padding:0 12px}.profile-settings-section .auth-field textarea{resize:vertical;min-height:88px;padding:11px 12px}.profile-settings-section .auth-field input:focus,.profile-settings-section .auth-field select:focus,.profile-settings-section .auth-field textarea:focus{border-color:#93c5fd;box-shadow:0 0 0 4px #2563eb14}.profile-settings-section .auth-field small,.profile-settings-help{color:var(--text-muted);font-size:.8rem;font-weight:400;line-height:1.5}.profile-settings-help,.profile-current-email{margin:0}.profile-current-email{overflow-wrap:anywhere;color:var(--text-muted);font-size:.86rem}.profile-current-email strong{color:var(--text)}.profile-cooldown-message{color:#93370d;background:#fffaeb;border:1px solid #fedf89;border-radius:9px;margin:0;padding:10px 12px;font-size:.82rem;line-height:1.45}.profile-email-verification{gap:12px;display:grid}.profile-secondary-button{border:1px solid var(--border);min-height:42px;color:var(--primary-dark);background:#fff;border-radius:10px;padding:0 14px;font-weight:700}.profile-secondary-button:hover:not(:disabled){background:#eff6ff;border-color:#bfdbfe}.profile-secondary-button:disabled{color:var(--text-muted);cursor:not-allowed}@media (width<=600px){.profile-settings-modal{max-height:94vh;padding:32px 18px 24px}.profile-settings-section{padding:17px}.profile-fields-grid{grid-template-columns:1fr;gap:14px}}.earth-preview-page{background:#020611;width:100%;height:100dvh;position:fixed;inset:0;overflow:hidden}.earth-preview-page .earth-scene{width:100%;height:100%;min-height:100%}.earth-preview-page canvas{width:100%;height:100%;display:block}.earth-preview-page{color:#fff;background:radial-gradient(at 75%,#0b1b35 0%,#030916 48%,#01040b 100%);font-family:inherit;position:fixed;inset:0;overflow:hidden}.earth-preview-page .earth-scene{z-index:1;position:absolute;inset:0}.earth-hero-content{z-index:2;width:min(460px,42%);position:absolute;top:50%;left:9%;transform:translateY(-50%)}.earth-eyebrow{color:#64b5ff;letter-spacing:4px;margin:0 0 22px;font-size:12px;font-weight:700}.earth-hero-content h1{color:#fff;letter-spacing:-4px;margin:0;font-size:clamp(48px,6.5vw,88px);font-weight:700;line-height:1.02}.earth-hero-content h1 span{color:#69baff}.earth-description{color:#aabbd1;max-width:390px;margin:25px 0 32px;font-size:16px;line-height:1.8}.earth-explore-button{color:#fff;cursor:pointer;background:#1676d2;border:1px solid #69baff99;border-radius:8px;justify-content:center;align-items:center;gap:24px;padding:15px 23px;font-size:14px;font-weight:600;transition:background .25s,transform .25s;display:inline-flex}.earth-explore-button:hover{background:#258de9;transform:translateY(-2px)}.earth-explore-button span{font-size:20px}@media (width<=700px){.earth-hero-content{width:86%;top:auto;bottom:9%;left:7%;transform:none}.earth-hero-content h1{letter-spacing:-2px;font-size:clamp(44px,12vw,64px)}.earth-description{max-width:300px;font-size:14px}}.earth-brand{color:#fff;letter-spacing:5px;text-shadow:0 0 18px #2a9bff73;align-items:center;gap:12px;margin-bottom:30px;font-size:clamp(24px,3vw,34px);font-weight:800;animation:1.2s ease-out both brandReveal;display:flex}.earth-brand-dot{background:#35baff;border-radius:50%;width:11px;height:11px;animation:2s ease-in-out infinite brandPulse;box-shadow:0 0 12px #35baff,0 0 25px #168bff}@keyframes brandReveal{0%{opacity:0;letter-spacing:12px;transform:translateY(18px)}to{opacity:1;letter-spacing:5px;transform:translateY(0)}}@keyframes brandPulse{0%,to{transform:scale(1);box-shadow:0 0 8px #35baff,0 0 16px #168bff}50%{transform:scale(1.25);box-shadow:0 0 18px #35baff,0 0 35px #168bff}}.earth-hero-content{animation:1.4s cubic-bezier(.16,1,.3,1) both cinematicEntrance}@keyframes cinematicEntrance{0%{opacity:0;filter:blur(8px);transform:translate(-35px,-50%)}to{opacity:1;filter:blur();transform:translateY(-50%)}}.earth-brand{width:fit-content;animation:1.5s ease-out .3s both brandAppear;position:relative;overflow:hidden}@keyframes brandAppear{0%{opacity:0;letter-spacing:15px;filter:blur(10px)}to{opacity:1;letter-spacing:5px;filter:blur()}}.earth-brand:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#69cdffa6,#0000);width:45%;height:140%;animation:3.5s ease-in-out 1.2s infinite brandLightSweep;position:absolute;top:-20%;left:-80%;transform:skew(-25deg)}@keyframes brandLightSweep{0%,45%{left:-80%}75%,to{left:140%}}.earth-brand-dot{animation:2s ease-in-out infinite brandPulse}.earth-eyebrow{animation:.9s ease-out .8s both textReveal}.earth-hero-content h1{animation:1s cubic-bezier(.16,1,.3,1) 1s both textReveal}.earth-description{animation:1s ease-out 1.3s both textReveal}@keyframes textReveal{0%{opacity:0;filter:blur(5px);transform:translateY(22px)}to{opacity:1;filter:blur();transform:translateY(0)}}.earth-explore-button{animation:1s ease-out 1.6s both buttonReveal,3s ease-in-out 2.6s infinite buttonGlow;position:relative;overflow:hidden}@keyframes buttonReveal{0%{opacity:0;transform:translateY(25px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes buttonGlow{0%,to{box-shadow:0 0 12px #1676d240}50%{box-shadow:0 0 18px #23a0ff8c,0 0 38px #1676d24d}}.earth-explore-button:before{content:"";background:linear-gradient(90deg,#0000,#ffffff59,#0000);width:45%;height:200%;animation:4s ease-in-out 2s infinite buttonLightSweep;position:absolute;top:-50%;left:-100%;transform:skew(-25deg)}@keyframes buttonLightSweep{0%,55%{left:-100%}85%,to{left:150%}}@media (prefers-reduced-motion:reduce){.earth-hero-content,.earth-brand,.earth-brand:after,.earth-brand-dot,.earth-eyebrow,.earth-hero-content h1,.earth-description,.earth-explore-button,.earth-explore-button:before{transition:none!important;animation:none!important}}.review-form,.diary-form{border:1px solid var(--border);background:#f8fafc;border-radius:14px;gap:12px;margin-top:18px;padding:22px;display:grid}.review-form h4,.diary-form h4{color:#101828;margin:0 0 6px;font-size:1rem;font-weight:800}.review-form label,.diary-form label{color:#344054;margin-top:4px;font-size:.85rem;font-weight:700;display:block}.review-form select,.review-form textarea,.diary-form input,.diary-form textarea{box-sizing:border-box;color:#344054;width:100%;min-height:44px;font:inherit;background:#fff;border:1px solid #d0d5dd;border-radius:9px;padding:11px 13px;font-size:.9rem}.review-form textarea,.diary-form textarea{resize:vertical;min-height:115px}.review-form select:focus,.review-form textarea:focus,.diary-form input:focus,.diary-form textarea:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #2563eb1f}.review-form button,.diary-form button{background:var(--primary);color:#fff;cursor:pointer;border:0;border-radius:9px;width:fit-content;min-height:42px;padding:0 18px;font-size:.88rem;font-weight:700;transition:opacity .2s,transform .2s}.review-form button:hover,.diary-form button:hover{opacity:.9;transform:translateY(-1px)}.review-form button:disabled,.diary-form button:disabled{opacity:.6;cursor:not-allowed;transform:none}.review-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.review-actions button{background:var(--primary);color:#fff;cursor:pointer;border:0;border-radius:9px;width:fit-content;min-height:42px;padding:0 18px;font-size:.88rem;font-weight:700;transition:opacity .2s,transform .2s}.review-actions button:hover{opacity:.9;transform:translateY(-1px)}.review-actions button:last-child,.review-form button[type=button]{color:#dc2626;background:#fff1f2;border:1px solid #fecdd3}.reviews-list,.diary-list{margin-top:22px}.diary-card,.review-card{border:1px solid var(--border);background:#f8fafc;border-radius:12px;margin-top:12px;padding:16px}.diary-card h4,.review-card h4{color:var(--text);margin:0 0 6px}.diary-card small,.review-card small{color:var(--text-muted);font-size:.78rem}.review-card-rating{letter-spacing:.08em;color:#b7791f!important}.diary-entry-text{color:var(--text-muted);white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0;line-height:1.65}.review-feedback{color:var(--text-muted);line-height:1.5}.review-form-help{color:var(--text-muted);margin:0;font-size:.82rem;line-height:1.5}.site-header{z-index:30}.header-inner{grid-template-columns:minmax(280px,1fr) auto;align-items:center;gap:clamp(20px,3vw,44px);width:min(1440px,100% - 64px);min-height:88px;display:grid}.header-brand{min-width:0}.header-brand h1{font-size:1.62rem;line-height:1.1}.header-brand p{max-width:390px;line-height:1.45}.header-actions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:clamp(14px,2vw,26px);min-width:0;display:flex}.header-primary-actions,.header-account-actions{align-items:center;gap:9px;min-width:0;display:flex}.header-primary-actions{flex:none}.header-account-actions{justify-content:flex-end}.app-nav{flex:none}.app-nav-button,.favorites-button,.header-account-actions .auth-button{white-space:nowrap;min-height:42px}.auth-user{max-width:150px;min-height:40px;padding-inline:12px}@media (width<=1100px){.header-inner{grid-template-columns:minmax(0,1fr);gap:14px;width:min(100% - 40px,900px);padding:17px 0}.header-actions{flex-wrap:wrap;justify-content:space-between;gap:12px;width:100%}.header-primary-actions,.header-account-actions{flex-wrap:wrap}}@media (width<=820px){.header-inner{align-items:stretch}.header-actions{justify-content:flex-start;align-items:flex-start;row-gap:10px}.header-primary-actions,.header-account-actions{justify-content:flex-start}}@media (width<=600px){.header-inner{gap:13px;width:min(100% - 28px,520px);padding:15px 0}.header-brand h1{font-size:1.48rem}.header-brand p{margin-top:5px;font-size:.84rem}.header-actions{flex-direction:column;align-items:stretch;gap:9px}.header-primary-actions,.header-account-actions{flex-wrap:wrap;align-items:center;gap:8px;width:100%}.header-account-actions .auth-user{max-width:min(100%,190px)}.app-nav-button,.favorites-button{padding-inline:12px}}:root{--primary:#2563eb;--primary-dark:#1d4ed8;--primary-soft:#eff6ff;--text:#172033;--text-muted:#667085;--border:#e4e7ec;--surface:#fff;--surface-soft:#f8fafc;--control-height:44px;--control-radius:10px}body{color:var(--text);background:#f5f7fb}.site-header{border-bottom-color:var(--border);background:#fffffff7;box-shadow:0 3px 16px #1018280b}.header-account-actions .auth-button,.auth-submit,.dashboard-explore-button,.compare-button,.detail-compare:not(.selected),.empty-favorites button,.review-form button:not([type=button]),.diary-form button:not([type=button]),.review-actions button:first-child,.earth-explore-button{min-height:var(--control-height);border:1px solid var(--primary);border-radius:var(--control-radius);background:var(--primary);color:#fff;font-family:inherit;font-size:.875rem;font-weight:700;transition:background-color .16s,border-color .16s,box-shadow .16s,transform .16s;box-shadow:0 3px 10px #2563eb1f}.header-account-actions .auth-button,.dashboard-explore-button,.compare-button,.detail-compare:not(.selected),.empty-favorites button,.review-form button:not([type=button]),.diary-form button:not([type=button]),.review-actions button:first-child,.earth-explore-button,.auth-submit{padding:0 16px}.header-account-actions .auth-button:hover:not(:disabled),.auth-submit:hover:not(:disabled),.dashboard-explore-button:hover:not(:disabled),.compare-button:hover:not(:disabled),.detail-compare:not(.selected):hover:not(:disabled),.empty-favorites button:hover:not(:disabled),.review-form button:not([type=button]):hover:not(:disabled),.diary-form button:not([type=button]):hover:not(:disabled),.review-actions button:first-child:hover:not(:disabled),.earth-explore-button:hover:not(:disabled){border-color:var(--primary-dark);background:var(--primary-dark);transform:translateY(-1px);box-shadow:0 5px 14px #2563eb33}.header-account-actions .auth-button:disabled,.auth-submit:disabled,.dashboard-explore-button:disabled,.compare-button:disabled,.detail-compare:disabled,.review-form button:disabled,.diary-form button:disabled{opacity:.58;box-shadow:none;transform:none}.favorites-button,.clear-comparison-button,.view-details-button,.google-signin-button,.profile-secondary-button,.map-button,.comparison-footer button:not(.clear-comparison-button){min-height:var(--control-height);border:1px solid var(--border);border-radius:var(--control-radius);background:var(--surface);color:var(--primary-dark);box-shadow:none;font-family:inherit;font-size:.875rem;font-weight:700;transition:background-color .16s,border-color .16s,color .16s,box-shadow .16s,transform .16s}.favorites-button,.clear-comparison-button,.profile-secondary-button,.map-button,.comparison-footer button:not(.clear-comparison-button){padding:0 14px}.view-details-button,.google-signin-button{padding:0 16px}.favorites-button:hover,.clear-comparison-button:hover,.view-details-button:hover,.profile-secondary-button:hover:not(:disabled),.map-button:hover,.comparison-footer button:not(.clear-comparison-button):hover{background:var(--primary-soft);color:var(--primary-dark);border-color:#bfdbfe;transform:translateY(-1px)}.app-nav{border-color:var(--border);background:var(--surface-soft)}.app-nav-button{min-height:40px;color:var(--text-muted);border-radius:8px;font-family:inherit;font-weight:700}.app-nav-button:hover{background:var(--primary-soft);color:var(--primary-dark)}.app-nav-button.active{background:var(--surface);color:var(--primary-dark);border-color:#dbeafe}.favorites-button:hover,.favorites-button.active{background:var(--primary-soft);color:var(--primary-dark);border-color:#bfdbfe}.review-form button[type=button],.review-actions button:last-child{min-height:var(--control-height);border-radius:var(--control-radius);color:#b42318;box-shadow:none;background:#fff5f5;border:1px solid #fecaca;padding:0 16px;font-family:inherit;font-size:.875rem;font-weight:700}.review-form button[type=button]:hover:not(:disabled),.review-actions button:last-child:hover:not(:disabled){background:#fef3f2;border-color:#fda29b;transform:translateY(-1px)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #2563eb47}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.site-header{background:linear-gradient(100deg,#edf4ff 0%,#f7faff 48%,#fff 100%);border-bottom-color:#dbe7fb}.header-brand h1{color:var(--primary-dark)}.app-nav{background:0 0;border:0;border-radius:0;gap:8px;padding:0}.app-nav-button,.favorites-button{min-height:var(--control-height);border-radius:var(--control-radius);color:var(--primary-dark);background:#fff;border:1px solid #cbd8eb;padding:0 15px;box-shadow:0 2px 6px #1720330a}.app-nav-button:hover,.favorites-button:hover{color:var(--primary-dark);background:#e7f0ff;border-color:#93b4f5}.app-nav-button.active,.favorites-button.active{border-color:var(--primary);background:var(--primary);color:#fff;box-shadow:0 4px 11px #2563eb33}.app-nav-button.active:hover,.favorites-button.active:hover{border-color:var(--primary-dark);background:var(--primary-dark);color:#fff}.favorites-button span{color:var(--primary-dark);background:#e7f0ff}:root{--brand-gradient:linear-gradient(115deg, #1d4ed8 0%, #2563eb 52%, #38bdf8 100%);--brand-gradient-hover:linear-gradient(115deg, #1e40af 0%, #1d4ed8 55%, #0ea5e9 100%);--brand-header-gradient:linear-gradient(105deg, #e7f0ff 0%, #f3f7ff 38%, #fff 76%, #edf4ff 100%);--brand-shadow:0 7px 18px #2563eb33}.site-header{background:var(--brand-header-gradient);border-bottom-color:#d8e5fb;box-shadow:0 5px 20px #2563eb12}.header-brand h1{background:var(--brand-gradient);color:#0000;-webkit-background-clip:text;background-clip:text;width:fit-content}.header-account-actions .auth-button,.auth-submit,.dashboard-explore-button,.compare-button,.detail-compare:not(.selected),.empty-favorites button,.review-form button:not([type=button]),.diary-form button:not([type=button]),.review-actions button:first-child,.earth-explore-button,.app-nav-button.active,.favorites-button.active,.card-compare.selected{background:var(--brand-gradient);color:#fff;box-shadow:var(--brand-shadow);border-color:#0000}.header-account-actions .auth-button:hover:not(:disabled),.auth-submit:hover:not(:disabled),.dashboard-explore-button:hover:not(:disabled),.compare-button:hover:not(:disabled),.detail-compare:not(.selected):hover:not(:disabled),.empty-favorites button:hover:not(:disabled),.review-form button:not([type=button]):hover:not(:disabled),.diary-form button:not([type=button]):hover:not(:disabled),.review-actions button:first-child:hover:not(:disabled),.earth-explore-button:hover:not(:disabled),.app-nav-button.active:hover,.favorites-button.active:hover{background:var(--brand-gradient-hover);color:#fff;border-color:#0000;box-shadow:0 9px 22px #2563eb45}.app-nav-button:not(.active),.favorites-button:not(.active){background:linear-gradient(#fff 0%,#f5f8ff 100%)}.app-nav-button:not(.active):hover,.favorites-button:not(.active):hover{background:linear-gradient(#f1f6ff 0%,#e5efff 100%)}.favorites-button.active span{color:#fff;background:#ffffff38}.card-favorite.favorite,.detail-favorite.favorite{color:#2563eb}:root{--brand-header-gradient:linear-gradient(105deg, #dceaff 0%, #eaf2ff 38%, #f6f9ff 76%, #e4efff 100%)}.controls-section{background:linear-gradient(120deg,#fff 0%,#f6f9ff 100%);border-color:#d7e4fb}.filter-box select:focus{border-color:#6d9cf4;box-shadow:0 0 0 4px #2563eb24}.my-diary-page{gap:24px;min-height:55vh;display:grid}.my-diary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.my-diary-card{background:linear-gradient(145deg,#fff 0%,#f4f8ff 100%);border:1px solid #dbe6f7;border-radius:18px;min-width:0;padding:22px;box-shadow:0 8px 24px #1e40af12}.my-diary-card-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.my-diary-card-heading h3{color:var(--text);margin:5px 0 0;font-size:1.12rem}.my-diary-card-heading time{color:var(--text-muted);flex:none;font-size:.82rem}.my-diary-card>p{color:var(--text-muted);white-space:pre-wrap;overflow-wrap:anywhere;margin:16px 0;line-height:1.7}.diary-page-message{color:#b42318;background:#fff5f5;border:1px solid #fecaca;border-radius:12px;padding:14px 16px}@media (width<=720px){.my-diary-grid{grid-template-columns:1fr}}@media (width<=600px){.app-nav{flex-wrap:wrap;gap:6px}.app-nav-button{padding:8px 10px;font-size:.88rem}.my-diary-card{padding:18px}.my-diary-card-heading{flex-direction:column}}
