.toast-container{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:10px;max-width:400px;width:calc(100% - 40px)}.toast{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:8px;background:#1a1a2e;border:1px solid #333;box-shadow:0 4px 20px #0006;animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-network,.toast-server{border-color:#e74c3c;background:linear-gradient(135deg,#1a1a2e,#2d1515)}.toast-timeout,.toast-llm{border-color:#f39c12;background:linear-gradient(135deg,#1a1a2e,#2d2515)}.toast-auth{border-color:#9b59b6;background:linear-gradient(135deg,#1a1a2e,#251528)}.toast-client,.toast-unknown{border-color:#666}.toast-icon{font-size:20px;flex-shrink:0;margin-top:2px}.toast-content{flex:1;min-width:0}.toast-message{margin:0;color:#eee;font-size:14px;line-height:1.4}.toast-action{margin-top:10px;padding:6px 14px;background:#9b59b6;color:#fff;border:none;border-radius:4px;font-size:13px;cursor:pointer;transition:background .2s}.toast-action:hover{background:#8e44ad}.toast-close{flex-shrink:0;width:24px;height:24px;background:transparent;border:none;color:#888;font-size:20px;line-height:1;cursor:pointer;padding:0;margin:-4px -4px 0 0;border-radius:4px;transition:all .2s}.toast-close:hover{color:#fff;background:#ffffff1a}@media(max-width:480px){.toast-container{top:10px;right:10px;left:10px;width:auto;max-width:none}.toast{padding:12px 14px}.toast-icon{font-size:18px}.toast-message{font-size:13px}}.vertical-timeline{position:relative;padding:20px 20px 20px 60px;max-width:800px;margin:0 auto}.timeline-line{position:absolute;left:30px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,#ffd7001a,#ffd70066 10% 90%,#ffd7001a)}.today-marker{position:absolute;left:20px;z-index:10;display:flex;align-items:center;gap:10px}.today-marker:before{content:"";width:22px;height:22px;background:gold;border-radius:50%;box-shadow:0 0 20px #ffd70080;animation:pulse-today 2s ease-in-out infinite}.today-label{background:gold;color:#1a1a2e;padding:4px 12px;border-radius:12px;font-size:.75em;font-weight:600;text-transform:uppercase}@keyframes pulse-today{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.8}}.timeline-month{margin-bottom:40px}.month-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding-left:10px}.month-name{font-size:1.4em;font-weight:700;color:gold;text-transform:uppercase;letter-spacing:2px}.month-count{font-size:.85em;color:#666}.month-hotspots{display:flex;flex-direction:column;gap:15px}.empty-month{display:flex;align-items:center;gap:12px;padding:20px;background:#ffffff05;border-radius:12px;border:1px dashed rgba(255,255,255,.1)}.empty-icon{font-size:1.5em;color:#444}.empty-text{color:#555;font-style:italic}.transit-card{position:relative;display:flex;gap:20px;cursor:pointer;opacity:0;transform:translate(-20px);transition:all .3s ease}.transit-card.visible{opacity:1;transform:translate(0);animation:slideIn .5s ease forwards}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.card-dot{position:absolute;left:-40px;top:20px;width:20px;height:20px;display:flex;align-items:center;justify-content:center}.dot-inner{width:12px;height:12px;border-radius:50%;border:2px solid #1a1a2e;transition:all .3s ease}.dot-inner.type-favorable{background:#4ade80;box-shadow:0 0 10px #4ade8080}.dot-inner.type-challenging{background:#f87171;box-shadow:0 0 10px #f8717180}.dot-inner.type-neutral{background:#fbbf24;box-shadow:0 0 10px #fbbf2480}.transit-card:hover .dot-inner{transform:scale(1.3)}.card-content{flex:1;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:20px;transition:all .3s ease}.transit-card:hover .card-content{background:#ffffff0d;border-color:#ffd70033;transform:translateY(-2px);box-shadow:0 8px 30px #0000004d}.transit-card.type-favorable .card-content{border-left:3px solid #4ade80}.transit-card.type-challenging .card-content{border-left:3px solid #f87171}.transit-card.type-neutral .card-content{border-left:3px solid #fbbf24}.card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px;flex-wrap:wrap;gap:15px}.aspect-visual{display:flex;align-items:center;gap:15px}.planet{display:flex;flex-direction:column;align-items:center;gap:4px}.planet-symbol{font-size:2em;line-height:1;transition:all .5s ease}.planet.transiting .planet-symbol{color:gold}.planet.natal .planet-symbol{color:#88f}.planet.animate .planet-symbol{animation:floatPlanet 3s ease-in-out infinite}.planet.transiting.animate .planet-symbol{animation-delay:0s}.planet.natal.animate .planet-symbol{animation-delay:1.5s}@keyframes floatPlanet{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.planet-name{font-size:.7em;color:#888;text-transform:uppercase;letter-spacing:1px}.aspect-symbol{font-size:1.8em;animation:pulseAspect 2s ease-in-out infinite}@keyframes pulseAspect{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.card-meta{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.type-badge{padding:4px 10px;border-radius:12px;font-size:.75em;font-weight:600;text-transform:uppercase;letter-spacing:1px}.type-badge.type-favorable{background:#4ade8033;color:#4ade80}.type-badge.type-challenging{background:#f8717133;color:#f87171}.type-badge.type-neutral{background:#fbbf2433;color:#fbbf24}.card-date{font-size:.85em;color:#888}.card-title{font-size:1.1em;color:#fff;margin:0 0 10px;font-weight:600}.card-brief{color:#aaa;font-size:.95em;line-height:1.6;margin:0}.card-expanded{margin-top:20px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);animation:expandIn .3s ease}@keyframes expandIn{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.orb-info,.houses-info{display:flex;align-items:center;gap:10px;margin-bottom:12px}.orb-label,.houses-label{color:#888;font-size:.9em}.orb-value{color:gold;font-weight:600}.houses-list{display:flex;gap:6px}.house-badge{background:#ffffff1a;color:#ccc;padding:2px 8px;border-radius:4px;font-size:.85em}.life-areas-info{margin-bottom:15px}.life-areas-label{display:block;color:gold;font-size:.9em;margin-bottom:8px;font-weight:500}.life-areas-list{display:flex;flex-direction:column;gap:6px}.life-area-item{display:flex;align-items:flex-start;gap:8px;padding:8px 12px;background:#ffd70014;border-radius:6px;border-left:2px solid rgba(255,215,0,.3)}.house-number{color:gold;font-weight:600;font-size:.9em;min-width:20px}.house-theme{color:#ccc;font-size:.9em;line-height:1.4}.aspect-explanation{margin:20px 0}.explanation-text{color:#bbb;font-size:.95em;line-height:1.7;margin:0;padding:15px;background:#ffd7000d;border-radius:8px;border-left:3px solid rgba(255,215,0,.3)}.ask-lucy-btn{width:100%;padding:14px 20px;background:linear-gradient(135deg,gold,#ffb700);border:none;border-radius:10px;color:#1a1a2e;font-weight:600;font-size:1em;cursor:pointer;transition:all .2s;margin-top:15px}.expand-indicator{display:flex;justify-content:center;margin-top:10px}.expand-icon{color:#555;font-size:.8em;transition:transform .3s ease}.expand-icon.expanded{transform:rotate(180deg)}@media(max-width:600px){.vertical-timeline{padding:15px 15px 15px 45px}.timeline-line{left:20px}.card-dot{left:-35px}.aspect-visual{gap:10px}.planet-symbol{font-size:1.5em}.aspect-symbol{font-size:1.4em}.card-header{flex-direction:column}.card-meta{align-items:flex-start;flex-direction:row;gap:10px}}.timeline-page{flex:1;display:flex;flex-direction:column;padding:30px 40px;overflow-y:auto}.timeline-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px;flex-wrap:wrap;gap:20px}.timeline-title-section h1{color:gold;font-size:2em;margin:0}.timeline-subtitle{color:#888;font-size:.95em;margin-top:5px}.year-selector{display:flex;align-items:center;gap:15px}.year-btn{width:40px;height:40px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#ccc;font-size:1.2em;cursor:pointer;transition:all .2s}.year-btn:hover:not(:disabled){background:#ffd70033;border-color:#ffd7004d;color:gold}.year-btn:disabled{opacity:.3;cursor:not-allowed}.year-display{font-size:1.5em;font-weight:700;color:#fff;min-width:80px;text-align:center}.timeline-stats{display:flex;gap:15px;margin-bottom:30px;flex-wrap:wrap}.stat-box{flex:1;min-width:100px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:20px;text-align:center}.stat-box .stat-number{display:block;font-size:2em;font-weight:700;color:#fff;margin-bottom:5px}.stat-box .stat-label{font-size:.85em;color:#888;text-transform:uppercase;letter-spacing:1px}.stat-box.favorable .stat-number{color:#4ade80}.stat-box.challenging .stat-number{color:#f87171}.stat-box.neutral .stat-number{color:#fbbf24}.timeline-content{display:flex;gap:30px;flex:1}.timeline-track-section{flex:1;min-width:0}.timeline-track-container{position:relative;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:20px;margin-bottom:20px}.timeline-svg{display:block}.hotspot-tooltip{background:#1a1a2ef2;border:1px solid rgba(255,215,0,.3);border-radius:8px;padding:10px 14px;pointer-events:none;z-index:10;max-width:200px;box-shadow:0 4px 12px #0000004d}.tooltip-title{color:#fff;font-size:.9em;font-weight:600;margin-bottom:4px}.tooltip-date{color:#888;font-size:.8em}.timeline-legend{display:flex;justify-content:center;gap:30px;padding:15px;background:#ffffff05;border-radius:8px}.legend-item{display:flex;align-items:center;gap:8px;font-size:.9em;color:#888}.legend-dot{width:12px;height:12px;border-radius:50%}.legend-dot.favorable{background:#4ade80}.legend-dot.challenging{background:#f87171}.legend-dot.neutral{background:#fbbf24}.timeline-sidebar{width:320px;flex-shrink:0}.timeline-summary{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:20px}.timeline-summary h3{color:gold;font-size:1.1em;margin:0 0 20px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.08)}.summary-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-bottom:25px}.stat-item{background:#ffffff0d;border-radius:8px;padding:15px;text-align:center}.stat-item .stat-value{display:block;font-size:1.8em;font-weight:700;color:#fff;margin-bottom:5px}.stat-item .stat-label{font-size:.85em;color:#888}.stat-item.favorable .stat-value{color:#4ade80}.stat-item.challenging .stat-value{color:#f87171}.stat-item.neutral .stat-value{color:#fbbf24}.top-transits h4{color:#ccc;font-size:.95em;margin:0 0 12px}.top-transits ul{list-style:none;padding:0;margin:0}.top-transits .transit-item{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-radius:6px;margin-bottom:6px;background:#ffffff08;border-left:3px solid transparent}.transit-item.favorable{border-left-color:#4ade80}.transit-item.challenging{border-left-color:#f87171}.transit-item.neutral{border-left-color:#fbbf24}.transit-title{color:#ccc;font-size:.9em}.transit-date{color:#666;font-size:.85em}.hotspot-details{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:20px;position:relative}.hotspot-close-btn{position:absolute;top:10px;right:10px;width:30px;height:30px;background:none;border:none;color:#666;font-size:1.5em;cursor:pointer;border-radius:6px;transition:all .2s}.hotspot-close-btn:hover{background:#ffffff1a;color:#ccc}.hotspot-header{display:flex;align-items:center;gap:10px;margin-bottom:15px}.hotspot-type-badge{padding:4px 10px;border-radius:4px;font-size:.8em;font-weight:600;color:#fff;text-transform:uppercase}.hotspot-symbol{font-size:1.5em;color:gold}.hotspot-title{color:#fff;font-size:1.2em;margin:0 0 8px}.hotspot-date{color:#888;font-size:.9em;margin:0 0 15px}.hotspot-brief{color:#ccc;font-size:.95em;line-height:1.6;margin:0 0 20px}.hotspot-meta{background:#ffffff08;border-radius:8px;padding:12px;margin-bottom:20px}.hotspot-meta-item{display:flex;justify-content:space-between;padding:6px 0}.hotspot-meta-item:not(:last-child){border-bottom:1px solid rgba(255,255,255,.05)}.meta-label{color:#888;font-size:.9em}.meta-value{color:#ccc;font-size:.9em}.ask-lucy-btn{width:100%;padding:14px 20px;background:linear-gradient(135deg,gold,#ffb700);border:none;border-radius:10px;color:#1a1a2e;font-weight:600;font-size:1em;cursor:pointer;transition:all .2s;box-shadow:0 4px 15px #ffd70033}.ask-lucy-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ffd7004d}@media(max-width:900px){.timeline-content{flex-direction:column}.timeline-sidebar{width:100%}}@media(max-width:768px){.timeline-page{padding:20px 15px}.timeline-header{flex-direction:column;align-items:stretch}.year-selector{justify-content:center}.timeline-legend{flex-wrap:wrap;gap:15px}.summary-stats{grid-template-columns:repeat(2,1fr)}.hotspot-details{padding:15px}}.admin-page{min-height:100vh;padding:20px;max-width:1200px;margin:0 auto}.admin-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:20px;border-bottom:1px solid var(--border-color);margin-bottom:20px}.admin-header h1{color:var(--accent-color);font-size:1.8rem}.admin-user{color:var(--text-muted);font-size:.9rem}.admin-loading{display:flex;justify-content:center;align-items:center;padding:60px;color:var(--text-muted)}.admin-error{background:#dc35451a;border:1px solid #dc3545;color:#dc3545;padding:12px 16px;border-radius:8px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center}.admin-error button{background:none;border:none;color:#dc3545;cursor:pointer;font-size:.9rem}.admin-tabs{display:flex;gap:8px;margin-bottom:20px}.admin-tab{padding:10px 20px;background:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;color:var(--text-muted);cursor:pointer;transition:all .2s}.admin-tab:hover{background:var(--surface-hover)}.admin-tab.active{background:#ffd70026;border-color:var(--accent-color);color:var(--accent-color)}.admin-panel{background:var(--surface-color);border-radius:12px;padding:20px}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.panel-header h2{font-size:1.2rem;color:var(--text-primary)}.items-list{display:flex;flex-direction:column;gap:12px}.item-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:16px}.item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.item-header h3{font-size:1rem;color:var(--accent-color)}.item-badges{display:flex;gap:6px}.badge{padding:4px 8px;border-radius:4px;font-size:11px;font-weight:600}.badge-default{background:#007bff;color:#fff}.badge-active{background:#28a745;color:#fff}.item-description{color:var(--text-muted);font-size:.9rem;margin-bottom:8px}.item-content{background:#0003;padding:12px;border-radius:6px;font-family:monospace;font-size:.8rem;color:var(--text-muted);margin-bottom:12px;overflow:hidden;white-space:pre-wrap;word-break:break-word}.item-actions{display:flex;gap:8px;flex-wrap:wrap}.test-prompts{display:flex;gap:16px;font-size:.9rem;color:var(--text-muted);margin-bottom:12px}.btn-primary{background:var(--accent-color);color:var(--bg-primary);border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .2s}.btn-primary:hover{background:#ffed4a}.btn-secondary{background:var(--surface-color);color:var(--text-primary);border:1px solid var(--border-color);padding:8px 16px;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s}.btn-secondary:hover{background:var(--surface-hover)}.btn-danger{background:#dc3545;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s}.btn-danger:hover{background:#c82333}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.btn-success{background:#28a745;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s}.btn-success:hover{background:#218838}.btn-warning{background:#ffc107;color:#1a1a2e;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .2s}.btn-warning:hover{background:#e0a800}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.modal{background:var(--bg-primary);border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-large{max-width:800px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border-color)}.modal-header h3{color:var(--accent-color);font-size:1.1rem}.close-btn{background:none;border:none;color:var(--text-muted);font-size:24px;cursor:pointer;line-height:1}.close-btn:hover{color:var(--text-primary)}.modal-content,.modal form{padding:20px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;color:var(--text-muted);font-size:.9rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:10px 12px;background:var(--surface-color);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.95rem}.form-group textarea{font-family:monospace;resize:vertical}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--accent-color)}.form-group.checkbox{display:flex;align-items:center;gap:8px}.form-group.checkbox input{width:auto}.form-group.checkbox label{margin-bottom:0}.form-row{display:flex;gap:16px}.form-row .form-group{flex:1}.responses-table{width:100%;border-collapse:collapse;font-size:.9rem}.responses-table th,.responses-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border-color)}.responses-table th{color:var(--text-muted);font-weight:600}.responses-table td{color:var(--text-primary)}.qa-stats{display:flex;gap:16px;margin-bottom:24px;flex-wrap:wrap}.stat-card{background:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;padding:16px 24px;text-align:center;min-width:100px}.stat-value{font-size:2rem;font-weight:700;color:var(--accent-color)}.stat-label{font-size:.85rem;color:var(--text-muted);text-transform:capitalize}.stat-card.severity-high{border-color:#dc3545}.stat-card.severity-high .stat-value{color:#dc3545}.stat-card.severity-medium{border-color:#ffc107}.stat-card.severity-medium .stat-value{color:#ffc107}.stat-card.severity-low{border-color:#17a2b8}.stat-card.severity-low .stat-value{color:#17a2b8}.flags-list{display:flex;flex-direction:column;gap:12px}.flag-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:16px;border-left:4px solid var(--border-color)}.flag-card.severity-high{border-left-color:#dc3545}.flag-card.severity-medium{border-left-color:#ffc107}.flag-card.severity-low{border-left-color:#17a2b8}.flag-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.flag-type{font-weight:600;color:var(--text-primary)}.flag-status{padding:4px 8px;border-radius:4px;font-size:11px;font-weight:600}.flag-status.status-new{background:#dc3545;color:#fff}.flag-status.status-reviewed{background:#ffc107;color:#1a1a2e}.flag-status.status-fixed{background:#28a745;color:#fff}.flag-details{color:var(--text-muted);font-size:.9rem;margin-bottom:8px}.flag-meta{display:flex;gap:16px;font-size:.8rem;color:var(--text-muted);margin-bottom:12px}.flag-actions{display:flex;gap:8px}@media(max-width:768px){.admin-header{flex-direction:column;align-items:flex-start;gap:8px}.admin-tabs{flex-wrap:wrap}.form-row{flex-direction:column}.qa-stats{justify-content:center}.item-actions{justify-content:flex-start}}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(135deg,#1a1a2e,#16213e);min-height:100vh;color:#eee}.app{display:flex;height:100vh}.sidebar{width:280px;background:#0000004d;border-right:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column}.sidebar-header{padding:20px;border-bottom:1px solid rgba(255,255,255,.1)}.logo{color:gold;font-size:1.5em;font-weight:700}.new-chat-btn{width:100%;padding:12px;margin-top:15px;border:1px dashed rgba(255,215,0,.4);background:transparent;color:gold;border-radius:8px;cursor:pointer;font-size:14px;transition:all .2s}.new-chat-btn:hover{background:#ffd7001a;border-style:solid}.sessions-list{flex:1;overflow-y:auto;padding:10px}.session-item{padding:12px 15px;border-radius:8px;cursor:pointer;margin-bottom:4px;font-size:14px;color:#ccc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:all .2s}.session-item:hover{background:#ffffff1a}.session-item.active{background:#ffd70026;color:gold}.session-item:hover .delete-btn{opacity:1}.delete-btn{opacity:0;background:none;border:none;color:#666;cursor:pointer;padding:2px 6px;font-size:14px;border-radius:4px;transition:all .2s;position:absolute;right:8px;top:50%;transform:translateY(-50%)}.delete-btn:hover{background:#f003;color:#ff6b6b}.session-item{position:relative;padding-right:30px}.session-date{font-size:11px;color:#666;margin-top:3px}.user-section{padding:15px;border-top:1px solid rgba(255,255,255,.1);display:flex;align-items:center;gap:12px}.user-avatar{width:36px;height:36px;border-radius:50%;background:#4a69bd}.user-info{flex:1;overflow:hidden}.user-name{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email{font-size:11px;color:#888}.login-btn{padding:10px 20px;background:#fff;color:#333;border:none;border-radius:8px;cursor:pointer;font-size:14px;display:flex;align-items:center;gap:8px}.login-btn:hover{background:#f0f0f0}.logout-btn{background:none;border:none;color:#888;cursor:pointer;padding:5px;font-size:16px;transition:color .2s}.logout-btn:hover{color:gold}.user-profile-link{display:flex;align-items:center;gap:12px;flex:1;text-decoration:none;color:inherit;overflow:hidden;padding:4px;border-radius:6px;transition:background .2s}.user-profile-link:hover{background:#ffffff0d}.sidebar-nav{padding:10px;border-top:1px solid rgba(255,255,255,.1)}.nav-link{display:flex;align-items:center;gap:10px;padding:12px 15px;color:#ccc;text-decoration:none;border-radius:8px;font-size:14px;transition:all .2s}.nav-link:hover{background:#ffffff1a;color:#fff}.nav-link.active{background:#ffd70026;color:gold}.nav-icon{font-size:1.1em}.sidebar-footer{border-top:1px solid rgba(255,255,255,.1)}.language-selector{padding:12px 15px;border-bottom:1px solid rgba(255,255,255,.05)}.language-select{width:100%;padding:8px 12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#ccc;font-size:13px;cursor:pointer;outline:none}.language-select:hover{background:#ffffff1a}.language-select:focus{border-color:#ffd7004d}.language-select option{background:#1a1a2e;color:#ccc}.main{flex:1;display:flex;flex-direction:column}.chat-window{flex:1;overflow-y:auto;padding:20px 40px}.message{margin-bottom:16px;padding:14px 18px;border-radius:16px;max-width:85%;line-height:1.6;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.user{background:linear-gradient(135deg,#4a69bd,#3b5998);margin-left:auto;border-bottom-right-radius:4px}.assistant{background:#ffd7001a;border:1px solid rgba(255,215,0,.2);border-bottom-left-radius:4px;position:relative}.message-actions{display:flex;gap:4px;margin-top:8px;opacity:.5;transition:opacity .2s ease}.message-actions:hover,.message-actions.visible{opacity:1}.action-btn{background:transparent;border:none;padding:6px;border-radius:6px;cursor:pointer;color:#ffffff80;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.action-btn:hover{background:#ffffff1a;color:#fffc}.action-btn.active{color:gold}.action-btn.active:hover{color:#ffed4a}.tool-call{font-size:.85em;color:#6c757d;padding:10px 14px;background:#0000004d;border-radius:8px;margin:10px 0;font-family:Monaco,Menlo,monospace;border-left:3px solid #ffd700}.input-area{padding:20px 40px;padding-bottom:calc(20px + env(safe-area-inset-bottom,0px));border-top:1px solid rgba(255,255,255,.1);display:flex;gap:12px;background:#1a1a2ef2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}#input{flex:1;padding:16px 20px;border:none;border-radius:16px;background:#ffffff1a;color:#fff;font-size:16px;outline:none;resize:none;min-height:52px;max-height:150px;line-height:1.4;font-family:inherit}#input:focus{background:#ffffff26}#input::placeholder{color:#666}.send-btn{padding:16px 32px;border:none;border-radius:16px;background:linear-gradient(135deg,gold,#ffb700);color:#1a1a2e;font-weight:600;font-size:16px;cursor:pointer;transition:transform .2s}.send-btn:hover{transform:translateY(-2px)}.send-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.input-actions{display:flex;gap:8px;align-items:center}.share-menu-container{position:relative}.share-btn{width:48px;height:48px;border:none;border-radius:16px;background:#ffffff1a;color:#fff9;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.share-btn:hover{background:#ffffff26;color:#ffffffe6}.share-btn:disabled{opacity:.5;cursor:not-allowed}.share-dropdown{position:absolute;bottom:100%;right:0;margin-bottom:8px;background:#1e1e32fa;border:1px solid rgba(255,255,255,.15);border-radius:12px;padding:8px;min-width:180px;box-shadow:0 4px 20px #0006;z-index:100}.share-option{width:100%;padding:12px 16px;border:none;background:transparent;color:#eee;cursor:pointer;border-radius:8px;display:flex;align-items:center;gap:12px;font-size:14px;transition:background .2s}.share-option:hover{background:#ffffff1a}.share-option:disabled{opacity:.5;cursor:not-allowed}.share-loading{color:gold}.typing{display:inline-flex;align-items:center;gap:10px;padding:14px 18px;background:#ffd7001a;border-radius:16px;margin-bottom:16px;border:1px solid rgba(255,215,0,.2)}.typing .dots{display:flex;gap:4px}.typing .dots span{width:8px;height:8px;background:gold;border-radius:50%;animation:bounce 1.4s infinite ease-in-out}.typing .dots span:nth-child(1){animation-delay:-.32s}.typing .dots span:nth-child(2){animation-delay:-.16s}.typing .status{color:gold;font-size:.9em}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.welcome{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px}.welcome h1{color:gold;font-size:2.5em;margin-bottom:10px}.welcome p{color:#888;font-size:1.1em;margin-bottom:30px}.suggestions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.suggestion{padding:12px 20px;background:#ffd7001a;border:1px solid rgba(255,215,0,.2);border-radius:20px;cursor:pointer;font-size:14px;transition:all .2s}.suggestion:hover{background:#ffd70033}.onboarding-tips{text-align:left;max-width:450px;margin:0 auto;padding:20px;background:#ffffff08;border-radius:12px;border:1px solid rgba(255,215,0,.1)}.onboarding-tips p{margin-bottom:10px;color:#ccc}.onboarding-tips ul{list-style:none;padding:0;margin:0}.onboarding-tips li{padding:8px 0;color:#aaa;font-size:.95em;border-bottom:1px solid rgba(255,255,255,.05)}.onboarding-tips li:last-child{border-bottom:none}.onboarding-tips em{color:gold;font-style:normal}.onboarding-example{background:#ffd7001a;border:1px solid rgba(255,215,0,.3);border-radius:8px;padding:15px 20px;color:gold;font-size:1em;margin-top:10px;transition:all .2s}.onboarding-example:hover{background:#ffd70033;transform:scale(1.02)}.suggestions-section{width:100%;max-width:700px;margin-top:25px}.suggestions-title{color:#888;font-size:.95em;margin-bottom:15px;text-align:center}.suggestions-scroll{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.suggestion-chip{background:#ffd70014;border:1px solid rgba(255,215,0,.25);border-radius:20px;padding:10px 18px;color:#eee;font-size:.9em;cursor:pointer;transition:all .2s ease;white-space:nowrap}.suggestion-chip:hover{background:#ffd70026;border-color:#ffd70066;transform:translateY(-2px);color:gold}@media(max-width:768px){.suggestions-section{padding:0 10px}.suggestions-scroll{flex-direction:column;align-items:stretch}.suggestion-chip{white-space:normal;text-align:center}}.action-preview{background:#ff64641a;border:2px solid rgba(255,100,100,.4);border-radius:12px;padding:16px 20px;margin:10px 0}.action-preview.update{background:#ffb4321a;border-color:#ffb43266}.action-preview.save{background:#64c8641a;border-color:#64c86466}.action-preview-header{display:flex;align-items:center;gap:10px;margin-bottom:12px;color:#ff6b6b;font-weight:700}.action-preview.update .action-preview-header{color:#ffb432}.action-preview.save .action-preview-header{color:#64c864}.action-preview-icon{font-size:1.3em}.action-preview-content{color:#ccc;font-size:.95em;margin-bottom:15px}.action-preview-content ul{margin:8px 0;padding-left:20px}.action-preview-content li{margin:4px 0}.action-preview-buttons{display:flex;gap:10px}.action-preview-btn{padding:10px 24px;border-radius:8px;border:none;cursor:pointer;font-weight:700;font-size:.95em;transition:all .2s}.action-preview-btn.confirm{background:#ff6b6b;color:#fff}.action-preview-btn.confirm:hover{background:#ff5252}.action-preview.update .action-preview-btn.confirm{background:#ffb432}.action-preview.update .action-preview-btn.confirm:hover{background:orange}.action-preview.save .action-preview-btn.confirm{background:#64c864}.action-preview.save .action-preview-btn.confirm:hover{background:#4caf4c}.action-preview-btn.cancel{background:#ffffff1a;color:#aaa}.action-preview-btn.cancel:hover{background:#fff3}.login-screen{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center}.login-screen h1{color:gold;font-size:3em;margin-bottom:10px}.login-screen p{color:#888;margin-bottom:40px}.google-btn{padding:14px 30px;background:#fff;color:#333;border:none;border-radius:8px;cursor:pointer;font-size:16px;display:flex;align-items:center;gap:10px}.google-btn:hover{background:#f5f5f5}.hamburger-btn{display:none;position:fixed;top:15px;left:15px;z-index:101;width:44px;height:44px;background:#1a1a2ef2;border:1px solid rgba(255,255,255,.1);border-radius:8px;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.hamburger-line{width:20px;height:2px;background:gold;border-radius:2px;transition:all .3s ease}.sidebar-open .hamburger-btn .hamburger-line:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.sidebar-open .hamburger-btn .hamburger-line:nth-child(2){opacity:0}.sidebar-open .hamburger-btn .hamburger-line:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.sidebar-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:99}@media(max-width:768px){.hamburger-btn{display:flex}.sidebar{position:fixed;top:0;left:0;bottom:0;width:280px;z-index:100;transform:translate(-100%);transition:transform .3s ease}.sidebar-open .sidebar{transform:translate(0)}.sidebar-open .sidebar-overlay{display:block}.sidebar-open .sidebar-header{padding-top:60px}.main{width:100%}.chat-window{padding:15px}.input-area{padding:10px 15px;padding-bottom:calc(10px + env(safe-area-inset-bottom,0px));gap:8px;position:sticky;bottom:0}#input{padding:12px 16px;font-size:16px}.send-btn{padding:12px 20px;font-size:14px}.message{max-width:95%;padding:12px 14px}.welcome h1{font-size:1.8em}.welcome p{font-size:1em;padding:0 10px}.suggestions{flex-direction:column;align-items:stretch;padding:0 10px}.suggestion{text-align:center}.user-chart-card{padding:20px;margin:15px 10px 20px}.chart-big-three{gap:20px}.big-three-item .symbol{font-size:1.3em}.big-three-item .sign{font-size:1em}.login-screen h1{font-size:2em}}pre{white-space:pre-wrap;word-wrap:break-word}.user-chart-card{background:#ffd7001a;border:1px solid rgba(255,215,0,.3);border-radius:16px;padding:25px 35px;margin:20px 0 30px}.chart-big-three{display:flex;gap:40px;justify-content:center;margin-bottom:15px}.big-three-item{display:flex;flex-direction:column;align-items:center;gap:5px}.big-three-item .symbol{font-size:1.5em;color:gold}.big-three-item .sign{font-size:1.2em;font-weight:700;color:#fff}.big-three-item .degree{font-size:.85em;color:#888}.chart-meta{text-align:center;color:#666;font-size:.9em}.landing-page{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;overflow-y:auto}.landing-hero{text-align:center;max-width:600px}.landing-graphic{position:relative;width:200px;height:200px;margin:0 auto 30px}.zodiac-wheel{position:absolute;width:100%;height:100%;animation:spin 60s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.zodiac-symbol{position:absolute;font-size:1.5em;color:#ffd70099;text-shadow:0 0 10px rgba(255,215,0,.3)}.zodiac-symbol:nth-child(1){top:0%;left:50%;transform:translate(-50%)}.zodiac-symbol:nth-child(2){top:7%;left:75%}.zodiac-symbol:nth-child(3){top:25%;left:93%}.zodiac-symbol:nth-child(4){top:50%;left:100%;transform:translate(-100%,-50%)}.zodiac-symbol:nth-child(5){top:75%;left:93%}.zodiac-symbol:nth-child(6){top:93%;left:75%}.zodiac-symbol:nth-child(7){top:100%;left:50%;transform:translate(-50%,-100%)}.zodiac-symbol:nth-child(8){top:93%;left:25%}.zodiac-symbol:nth-child(9){top:75%;left:7%}.zodiac-symbol:nth-child(10){top:50%;left:0%;transform:translateY(-50%)}.zodiac-symbol:nth-child(11){top:25%;left:7%}.zodiac-symbol:nth-child(12){top:7%;left:25%}.landing-moon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:4em;color:gold;text-shadow:0 0 30px rgba(255,215,0,.5);animation:pulse 3s ease-in-out infinite}@keyframes pulse{0%,to{transform:translate(-50%,-50%) scale(1);opacity:1}50%{transform:translate(-50%,-50%) scale(1.1);opacity:.8}}.landing-title{display:flex;flex-direction:column;gap:5px;margin-bottom:20px}.title-accent{font-size:3.5em;color:gold;font-weight:700;text-shadow:0 0 20px rgba(255,215,0,.3)}.title-sub{font-size:1.3em;color:#888;font-weight:400;letter-spacing:.2em;text-transform:uppercase}.landing-tagline{font-size:1.2em;color:#aaa;margin-bottom:40px;line-height:1.6}.landing-cta{display:inline-flex;align-items:center;gap:12px;padding:16px 40px;font-size:1.1em;font-weight:700;color:#1a1a2e;background:linear-gradient(135deg,gold,#ffb700);border:none;border-radius:50px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 20px #ffd7004d}.landing-cta:hover{transform:translateY(-3px);box-shadow:0 6px 30px #ffd70066}.landing-cta svg{fill:#1a1a2e}.landing-features{display:flex;gap:20px;margin-top:60px;flex-wrap:wrap;justify-content:center}.feature-card{background:#ffffff08;border:1px solid rgba(255,215,0,.1);border-radius:16px;padding:25px;width:200px;text-align:center;transition:all .3s ease}.feature-card:hover{background:#ffd7000d;border-color:#ffd70033;transform:translateY(-5px)}.feature-icon{font-size:2.5em;margin-bottom:15px}.feature-card h3{color:gold;font-size:1.1em;margin-bottom:10px}.feature-card p{color:#888;font-size:.9em;line-height:1.5}.chat-area{flex:1;display:flex;flex-direction:column;height:100%}.messages{flex:1;overflow-y:auto;padding:20px 40px}.empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px}.empty-state h2{color:gold;margin-bottom:10px}.empty-state p{color:#888}.welcome-logo{font-size:3em;margin-bottom:20px}.empty-chat{display:flex;align-items:center;justify-content:center;height:100%;color:#666}.empty-sessions{text-align:center;padding:20px;color:#666}.typing-indicator{display:flex;gap:4px;padding:10px}.typing-indicator span{width:8px;height:8px;background:gold;border-radius:50%;animation:bounce 1.4s infinite ease-in-out}.typing-indicator span:nth-child(1){animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}.streaming-status{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:5px 0}.tool-status{font-size:.85rem;color:gold;margin:0;padding-left:10px;font-style:italic}.loading-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;color:#888}.profile-page{flex:1;padding:30px 40px;overflow-y:auto;max-width:800px;margin:0 auto;width:100%}.profile-page h1{color:gold;font-size:2em;margin-bottom:25px}.profile-card{background:#ffffff0d;border:1px solid rgba(255,215,0,.2);border-radius:12px;padding:20px;margin-bottom:25px}.profile-header{display:flex;align-items:center;gap:20px}.profile-avatar{width:70px;height:70px;border-radius:50%;border:2px solid rgba(255,215,0,.3)}.profile-info h2{font-size:1.4em;margin-bottom:5px}.profile-info p{color:#888;font-size:.95em}.profile-section{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:20px;margin-bottom:20px}.profile-section h3{color:gold;font-size:1.1em;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.08)}.profile-language-selector{margin-top:10px}.language-select-profile{padding:10px 15px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:#eee;font-size:14px;cursor:pointer;min-width:150px}.language-select-profile:hover{background:#ffffff1f}.language-select-profile option{background:#1a1a2e;color:#eee}.profile-chart-card{background:#ffd70014;border:1px solid rgba(255,215,0,.2);border-radius:12px;padding:20px}.chart-details{margin-top:20px;padding-top:15px;border-top:1px solid rgba(255,255,255,.1)}.chart-details p{color:#ccc;margin-bottom:8px;font-size:.95em}.chart-details strong{color:#888}.profile-no-chart,.profile-no-relationships{text-align:center;padding:20px;color:#888}.profile-action-btn{margin-top:15px;padding:12px 24px;background:#ffd70026;border:1px solid rgba(255,215,0,.3);border-radius:8px;color:gold;font-size:14px;cursor:pointer;transition:all .2s}.profile-action-btn:hover{background:#ffd70040}.relationships-list{display:flex;flex-direction:column;gap:10px}.relationship-item{display:flex;align-items:center;justify-content:space-between;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:12px 15px;transition:all .2s}.relationship-item:hover{background:#ffffff14}.relationship-info{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.relationship-name{font-weight:600;color:#eee}.relationship-type{color:#888;font-size:.9em;padding:2px 8px;background:#ffffff0d;border-radius:4px}.relationship-sign{color:gold;font-size:.9em}.relationship-delete-btn{background:none;border:none;color:#666;font-size:1.4em;cursor:pointer;padding:5px 10px;border-radius:4px;transition:all .2s}.relationship-delete-btn:hover{background:#ff000026;color:#ff6b6b}.relationship-delete-btn:disabled{opacity:.5;cursor:not-allowed}.loading-text{color:#888;font-style:italic}.city-autocomplete{position:relative;width:100%}.city-autocomplete-input-wrapper{position:relative}.city-autocomplete-input{width:100%;padding:12px 15px;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#ffffff0d;color:#eee;font-size:15px}.city-autocomplete-input:focus{outline:none;border-color:#ffd70080}.city-autocomplete-loading{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#888}.city-autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;background:#1a1a2e;border:1px solid rgba(255,255,255,.2);border-radius:8px;margin-top:4px;max-height:200px;overflow-y:auto;z-index:1000;list-style:none}.city-autocomplete-item{padding:12px 15px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.05)}.city-autocomplete-item:last-child{border-bottom:none}.city-autocomplete-item:hover,.city-autocomplete-item.highlighted{background:#ffd7001a}.city-autocomplete-item .city-name{color:#eee;font-weight:500}.city-autocomplete-item .city-country{color:#888;font-size:.9em}.edit-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.edit-modal{background:#1a1a2e;border:1px solid rgba(255,255,255,.15);border-radius:16px;max-width:480px;width:100%;max-height:90vh;overflow-y:auto}.edit-modal-header{padding:20px 25px;border-bottom:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:center}.edit-modal-header h2{font-size:1.2em;color:gold;margin:0}.edit-modal-close{background:none;border:none;color:#888;font-size:1.5em;cursor:pointer;padding:5px}.edit-modal-close:hover{color:#fff}.edit-modal-body{padding:25px}.edit-form-group{margin-bottom:20px}.edit-form-group label{display:block;color:#aaa;font-size:.9em;margin-bottom:8px}.edit-form-group input,.edit-form-group select{width:100%;padding:12px 15px;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#ffffff0d;color:#eee;font-size:15px}.edit-form-group input:focus,.edit-form-group select:focus{outline:none;border-color:#ffd70080}.edit-modal-actions{padding:20px 25px;border-top:1px solid rgba(255,255,255,.1);display:flex;gap:10px;justify-content:flex-end}.edit-modal-btn{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.edit-modal-btn.cancel{background:transparent;border:1px solid rgba(255,255,255,.2);color:#aaa}.edit-modal-btn.cancel:hover{background:#ffffff0d;color:#eee}.edit-modal-btn.save{background:linear-gradient(135deg,gold,#ffb700);border:none;color:#1a1a2e}.edit-modal-btn.save:hover{transform:translateY(-1px);box-shadow:0 4px 15px #ffd7004d}.edit-modal-btn.save:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.edit-modal-error{background:#ff00001a;border:1px solid rgba(255,0,0,.3);color:#ff6b6b;padding:12px 15px;border-radius:8px;margin-bottom:20px;font-size:.9em}.relationship-edit-btn{background:none;border:none;color:#888;font-size:1.1em;cursor:pointer;padding:5px 8px;border-radius:4px;transition:all .2s;margin-right:5px}.relationship-edit-btn:hover{background:#ffd70026;color:gold}.profile-edit-btn{padding:8px 16px;background:transparent;border:1px solid rgba(255,215,0,.4);color:gold;border-radius:6px;cursor:pointer;font-size:13px;transition:all .2s}.profile-edit-btn:hover{background:#ffd7001a}.profile-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.profile-section-header h3{margin:0}@media(max-width:768px){.profile-page{padding:20px 15px}.profile-page h1{font-size:1.6em}.profile-header{flex-direction:column;text-align:center}.relationship-info{flex-direction:column;align-items:flex-start;gap:5px}}@media(max-width:768px){.landing-graphic{width:150px;height:150px}.landing-moon{font-size:3em}.zodiac-symbol{font-size:1.2em}.title-accent{font-size:2.5em}.title-sub,.landing-tagline{font-size:1em}.landing-features{flex-direction:column;align-items:center}.feature-card{width:100%;max-width:280px}}.action-preview{background:#ffd7001a;border:1px solid rgba(255,215,0,.3);border-radius:12px;padding:16px;margin:16px 0;animation:fadeIn .3s ease}.action-preview.save{background:#4caf501a;border-color:#4caf504d}.action-preview.update{background:#2196f31a;border-color:#2196f34d}.action-preview.delete{background:#f443361a;border-color:#f443364d}.action-preview-header{font-size:1.1em;margin-bottom:12px;color:gold}.action-preview.save .action-preview-header{color:#4caf50}.action-preview.update .action-preview-header{color:#2196f3}.action-preview.delete .action-preview-header{color:#f44336}.action-preview-content{margin-bottom:16px}.action-preview-content p{margin:4px 0;color:#ccc;font-size:.95em}.action-preview-buttons{display:flex;gap:12px;flex-wrap:wrap}.action-preview-btn{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.action-preview-btn.confirm{background:#4caf50;color:#fff}.action-preview-btn.confirm:hover:not(:disabled){background:#45a049}.action-preview-btn.cancel{background:#ffffff1a;color:#ccc;border:1px solid rgba(255,255,255,.2)}.action-preview-btn.cancel:hover:not(:disabled){background:#ffffff26}.action-preview-btn:disabled{opacity:.6;cursor:not-allowed}.action-preview.delete .action-preview-btn.confirm{background:#f44336}.action-preview.delete .action-preview-btn.confirm:hover:not(:disabled){background:#d32f2f}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
