.compliance-page{min-height:100vh;background:linear-gradient(135deg,#f8fafc,#eef2ff 50%,#f0f9ff);font-family:Fredoka,sans-serif}.glass-card{background:linear-gradient(135deg,hsla(0,0%,100%,.92),rgba(248,250,255,.88));border:1px solid rgba(26,115,232,.12);border-radius:20px;box-shadow:0 4px 20px rgba(26,115,232,.08);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.glass-card-hover{transition:all .3s ease}.glass-card-hover:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(26,115,232,.15)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 36px;font-family:Fredoka,sans-serif;font-size:1.05rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#1a73e8,#0d5bba);border:none;border-radius:50px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px rgba(26,115,232,.3);text-decoration:none;min-height:44px}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(26,115,232,.4)}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 28px;font-family:Fredoka,sans-serif;font-size:.95rem;font-weight:600;color:#1a73e8;background:#fff;border:2px solid #1a73e8;border-radius:50px;cursor:pointer;transition:all .3s ease;text-decoration:none;min-height:44px}.btn-secondary:hover{background:#1a73e8;color:#fff;transform:translateY(-1px)}.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 20px;font-family:Fredoka,sans-serif;font-size:.88rem;font-weight:600;color:#666;background:transparent;border:none;border-radius:50px;cursor:pointer;transition:all .2s ease;text-decoration:none;min-height:44px}.btn-ghost:hover{background:rgba(0,0,0,.04);color:#333}.input-pill{width:100%;padding:14px 20px;font-family:Fredoka,sans-serif;font-size:1rem;border:2px solid #e0e0e0;border-radius:50px;outline:none;transition:all .3s ease;background:#fff;color:#333;min-height:44px}.input-pill:focus{border-color:#1a73e8;box-shadow:0 0 0 4px rgba(26,115,232,.15)}.input-pill::placeholder{color:#999}.select-pill{width:100%;padding:14px 20px;font-family:Fredoka,sans-serif;font-size:1rem;border:2px solid #e0e0e0;border-radius:16px;outline:none;transition:all .3s ease;background:#fff;color:#333;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23999' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;min-height:44px}.select-pill:focus{border-color:#1a73e8;box-shadow:0 0 0 4px rgba(26,115,232,.15)}.category-badge{display:inline-block;padding:3px 12px;font-size:.75rem;font-weight:600;border-radius:50px;border:1.5px solid;letter-spacing:.02em;white-space:nowrap}.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0}.status-upcoming{background:#1a73e8}.status-due_soon{background:#d97706;animation:pulse-amber 2s infinite}.status-overdue{background:#dc2626;animation:pulse-red 2s infinite}.status-completed{background:#059669}@keyframes pulse-amber{0%,to{box-shadow:0 0 0 0 rgba(217,119,6,.4)}50%{box-shadow:0 0 0 6px rgba(217,119,6,0)}}@keyframes pulse-red{0%,to{box-shadow:0 0 0 0 rgba(220,38,38,.4)}50%{box-shadow:0 0 0 6px rgba(220,38,38,0)}}.stat-card{background:#fff;border-radius:16px;padding:20px 24px;border:1px solid #f0f0f0;box-shadow:0 2px 8px rgba(0,0,0,.04);transition:all .3s ease}.stat-card:hover{box-shadow:0 4px 16px rgba(26,115,232,.1)}.progress-track{width:100%;height:4px;background:#e0e0e0;border-radius:2px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(135deg,#1a73e8,#0d5bba);border-radius:2px;transition:width .5s ease}.chat-panel{background:#fff;border-radius:20px;border:1px solid #f0f0f0;box-shadow:0 4px 20px rgba(0,0,0,.08);display:flex;flex-direction:column;overflow:hidden}.chat-messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:12px}.chat-bubble-user{align-self:flex-end;background:linear-gradient(135deg,#1a73e8,#0d5bba);color:#fff;border-radius:18px 18px 4px 18px}.chat-bubble-assistant,.chat-bubble-user{padding:12px 16px;max-width:80%;font-size:.9rem;line-height:1.5}.chat-bubble-assistant{align-self:flex-start;background:#f5f7fa;color:#333;border-radius:18px 18px 18px 4px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.3);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease;padding:16px}.modal-content{background:#fff;border-radius:24px;padding:32px;max-width:480px;width:100%;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,.15);animation:slideUp .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.pricing-card{background:#fff;border-radius:20px;padding:32px 28px;border:2px solid #f0f0f0;transition:all .3s ease;position:relative}.pricing-card:hover{border-color:#1a73e8;transform:translateY(-4px);box-shadow:0 12px 40px rgba(26,115,232,.15)}.pricing-card.featured{border-color:#1a73e8;box-shadow:0 8px 30px rgba(26,115,232,.15)}.pricing-card.featured:before{content:"Most Popular";position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,#1a73e8,#0d5bba);color:#fff;font-size:.75rem;font-weight:600;padding:4px 16px;border-radius:50px}.selectable-card{background:#fff;border:2px solid #e0e0e0;border-radius:16px;padding:20px;cursor:pointer;transition:all .3s ease;text-align:center;min-height:44px}.selectable-card:hover{border-color:#1a73e8;background:#f8faff}.selectable-card.selected{border-color:#1a73e8;background:linear-gradient(135deg,rgba(240,247,255,.85),rgba(232,244,253,.75));box-shadow:0 0 0 3px rgba(26,115,232,.15)}.animate-fade-in{animation:fadeInUp .6s ease-out both}.animate-delay-1{animation-delay:.1s}.animate-delay-2{animation-delay:.2s}.animate-delay-3{animation-delay:.3s}.animate-delay-4{animation-delay:.4s}.animate-delay-5{animation-delay:.5s}.animate-delay-6{animation-delay:.6s}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.locked-feature{position:relative;opacity:.5;pointer-events:none;filter:grayscale(.3)}.locked-feature:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none}.upgrade-nudge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:50px;background:linear-gradient(135deg,#fffbeb,#fff7ed);border:1px solid rgba(217,119,6,.2);font-size:.75rem;font-weight:600;color:#92400e;cursor:pointer;transition:all .2s ease;text-decoration:none}.upgrade-nudge:hover{box-shadow:0 2px 8px rgba(217,119,6,.15);transform:translateY(-1px)}.hamburger-btn{display:none;background:none;border:none;cursor:pointer;padding:8px;min-width:44px;min-height:44px;align-items:center;justify-content:center;border-radius:8px;transition:background .2s ease}.hamburger-btn:hover{background:rgba(0,0,0,.04)}.hamburger-line{display:block;width:22px;height:2px;background:#333;border-radius:1px;transition:all .3s ease;margin:5px 0}.mobile-menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.3);backdrop-filter:blur(4px);z-index:998;animation:fadeIn .2s ease}.mobile-menu{position:fixed;top:0;right:0;width:280px;max-width:85vw;height:100vh;background:#fff;z-index:999;padding:80px 24px 24px;box-shadow:-4px 0 20px rgba(0,0,0,.1);animation:slideInRight .3s ease;overflow-y:auto}@keyframes slideInRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}.mobile-menu-close{position:absolute;top:20px;right:20px;background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.tutorial-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;pointer-events:none}.tutorial-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.5);pointer-events:auto;transition:opacity .3s ease}.tutorial-spotlight{position:absolute;box-shadow:0 0 0 9999px rgba(0,0,0,.5);border-radius:12px;z-index:10000;pointer-events:none;transition:all .4s ease}.tutorial-tooltip{position:absolute;background:#fff;border-radius:20px;padding:24px 28px;max-width:340px;width:max-content;box-shadow:0 12px 40px rgba(0,0,0,.2);z-index:10001;pointer-events:auto;animation:slideUp .3s ease}.tutorial-tooltip h3{font-size:1.1rem;font-weight:700;color:#333;margin-bottom:8px}.tutorial-tooltip p{font-size:.9rem;color:#666;line-height:1.6;margin-bottom:16px}.tutorial-dots{display:flex;gap:6px;justify-content:center;margin-bottom:16px}.tutorial-dot{width:8px;height:8px;border-radius:50%;background:#e0e0e0;transition:all .2s ease}.tutorial-dot.active{background:#1a73e8;width:20px;border-radius:4px}.tutorial-actions{display:flex;justify-content:space-between;align-items:center;gap:12px}.tutorial-card{top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:24px;padding:40px 36px;max-width:440px;width:90%;box-shadow:0 20px 60px rgba(0,0,0,.2);z-index:10001;text-align:center;animation:slideUp .3s ease}.chat-bottom-sheet,.tutorial-card{position:fixed;pointer-events:auto}.chat-bottom-sheet{bottom:0;left:0;right:0;z-index:999;animation:slideUpSheet .3s ease}.chat-bottom-sheet .chat-panel{border-radius:20px 20px 0 0;height:70vh;max-height:70vh}.chat-sheet-handle{width:36px;height:4px;background:#ddd;border-radius:2px;margin:8px auto 0}@keyframes slideUpSheet{0%{transform:translateY(100%)}to{transform:translateY(0)}}.feature-table{width:100%;border-collapse:collapse;font-size:.88rem}.feature-table td,.feature-table th{padding:12px 16px;text-align:center;border-bottom:1px solid #f0f0f0}.feature-table th{font-weight:700;color:#333;background:#fafbfc;position:sticky;top:0}.feature-table td:first-child,.feature-table th:first-child{text-align:left;font-weight:500;color:#555}.feature-table td.check{color:#059669;font-weight:700;font-size:1.1rem}.feature-table td.dash{color:#ccc}.compliance-footer{border-top:1px solid #f0f0f0;padding:40px 24px;background:#fff}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;max-width:1000px;margin:0 auto}.footer-brand h3{font-size:1.25rem;font-weight:700;margin-bottom:8px}.footer-brand p{font-size:.85rem;color:#888;line-height:1.6}.footer-col h4{font-size:.85rem;font-weight:700;color:#444;margin-bottom:12px;text-transform:uppercase;letter-spacing:.04em}.footer-col a{display:block;font-size:.85rem;color:#666;text-decoration:none;padding:4px 0;transition:color .2s ease}.footer-col a:hover{color:#1a73e8}.footer-bottom{text-align:center;padding-top:32px;border-top:1px solid #f0f0f0;font-size:.8rem;color:#999;max-width:1000px;margin:32px auto 0}@media (max-width:375px){.modal-content{border-radius:20px}.modal-content,.pricing-card{padding:24px 20px}}@media (max-width:768px){.hamburger-btn{display:flex}.desktop-nav-links,.desktop-user-info{display:none!important}.stats-grid{gap:10px!important}.pricing-grid,.stats-grid{grid-template-columns:1fr!important}.footer-grid{grid-template-columns:1fr 1fr;gap:24px}.footer-brand{grid-column:span 2}.feature-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.feature-table{min-width:600px}.tutorial-tooltip{position:fixed!important;bottom:0!important;left:0!important;right:0!important;top:auto!important;max-width:100%!important;width:100%!important;border-radius:20px 20px 0 0;padding:24px 24px 32px;animation:slideUpSheet .3s ease}.deadline-card-top{flex-direction:column;align-items:flex-start!important;gap:8px!important}.deadline-card-right{width:100%;justify-content:space-between!important}}@media (min-width:769px){.mobile-only{display:none!important}}@media (min-width:1280px){.landing-hero h1{font-size:3.5rem!important}}@media (min-width:1440px){.landing-hero h1{font-size:3.8rem!important}}@media (hover:none) and (pointer:coarse){.btn-primary:hover,.glass-card-hover:hover,.pricing-card:hover{transform:none}}