.top-banner{position:sticky;top:0;z-index:100;background:white;height:40px;display:flex;align-items:center;justify-content:space-between;padding:0 2rem;font-size:.875rem;border-bottom:1px solid #e5e5e5}.banner-left{font-weight:600;color:#1a1a1a}.banner-center{position:absolute;left:50%;transform:translateX(-50%);color:#666;text-align:center}.banner-close{flex:0 0 auto;background:none;border:none;font-size:1.5rem;color:#999;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;transition:color .2s}.banner-close:hover{color:#333}.banner-center.clickable,.banner-left.clickable{cursor:pointer}.banner-left.clickable:hover{color:#000}.banner-center.clickable:hover{color:#333}.top-banner.hiding{animation:slideUp .3s ease-out forwards}@keyframes slideUp{0%{transform:translateY(0);opacity:1}to{transform:translateY(-100%);opacity:0}}.dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.dialog-content{background:white;border-radius:12px;padding:3rem;max-width:500px;width:90%;position:relative;box-shadow:0 20px 60px rgba(0,0,0,.3);animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.dialog-title{font-size:2rem;font-weight:700;color:#1a1a1a;margin-bottom:1.5rem;text-align:center}.dialog-description{font-size:1rem;color:#4a4a4a;line-height:1.8;margin-bottom:2rem;text-align:left}.dialog-description p{margin-bottom:1rem}.dialog-description ul{list-style-type:disc;padding-left:1.5rem;margin:0}.dialog-description li{margin-bottom:.5rem}.dialog-description li:last-child{margin-bottom:0}.dialog-buttons{display:flex;flex-direction:column;align-items:center}.dialog-button{display:inline-block;padding:.875rem 2rem;font-size:1rem;font-weight:600;text-decoration:none;border-radius:6px;transition:all .2s;text-align:center;min-width:200px}.dialog-button.primary{background:#1a1a1a;color:white;margin-bottom:1.5rem}.dialog-button.primary:hover{background:#333;transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.2)}.dialog-button.secondary{background:white;color:#1a1a1a;border:2px solid #1a1a1a}.dialog-button.secondary:hover{background:#f5f5f5;transform:translateY(-2px)}.dialog-or{font-size:.875rem;color:#6a6a6a;margin:0 0 .25rem}.dialog-close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:2rem;color:#999;cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:color .2s;padding:0}.dialog-close:hover{color:#333}.footer{position:relative;background:white;border-top:1px solid #e5e5e5;padding:2rem;display:flex;align-items:center;justify-content:space-between}.footer-left{font-size:1.125rem;font-weight:600;color:#1a1a1a}.footer-center.clickable,.footer-left.clickable{cursor:pointer}.footer-left.clickable:hover{color:#000}.footer-center{position:absolute;left:50%;transform:translateX(-50%);font-size:.875rem;color:#666}.footer-center.clickable:hover{color:#333}.footer-right{display:flex;align-items:center;gap:.75rem}.footer-link{font-size:.875rem;color:#1a1a1a;text-decoration:none;transition:color .2s}.footer-link:hover{color:#333;text-decoration:underline}