html,body,#root{width:100%;height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#84868980;color:#333}@media (max-width: 768px){body{font-size:14px}}button{cursor:pointer;border:none;border-radius:6px;font-size:14px;font-weight:500;padding:10px 16px;transition:all .2s ease;font-family:inherit}.btn-primary{background:#007aff;color:#fff}.btn-primary:hover:not(:disabled){background:#0051d5}.btn-secondary{background:#f0f0f0;color:#333;border:1px solid #ddd}.btn-secondary:hover:not(:disabled){background:#e5e5e5}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.btn-danger{background:#ff3b30;color:#fff}.btn-danger:hover:not(:disabled){background:#cc2922}.btn-back{background:none;color:#007aff;padding:8px 0;font-size:16px;border:none}.btn-back:hover{opacity:.7}.btn-view{background:#007aff;color:#fff;padding:8px 12px;font-size:13px}input,textarea,select{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:14px;font-family:inherit;transition:border-color .2s}input:focus,textarea:focus,select:focus{outline:none;border-color:#007aff;box-shadow:0 0 0 3px #007aff1a}input:disabled,textarea:disabled,select:disabled{background:#f5f5f5;color:#999;cursor:not-allowed}label{display:block;margin-bottom:6px;font-weight:500;font-size:14px}.error-message{background:#fff3cd;color:#856404;border:1px solid #ffeaa7;padding:12px;border-radius:6px;margin-bottom:16px;font-size:14px}.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.loading{text-align:center;padding:40px;color:#999}.empty-state{text-align:center;padding:40px 20px;background:#fff;border-radius:8px;color:#999}.empty-state p{margin-bottom:16px}.logo-container{display:flex;align-items:center;gap:12px}.logo-container.logo-vertical{flex-direction:column;text-align:center;gap:8px}.logo-image{height:auto;width:auto}.logo-text{font-size:24px;font-weight:700;color:#333;white-space:nowrap}.logo-small .logo-image{max-height:32px}.logo-small .logo-text{font-size:18px}.logo-medium .logo-image{max-height:48px}.logo-medium .logo-text{font-size:24px}.logo-large .logo-image{max-height:64px}.logo-large .logo-text{font-size:28px}@media (max-width: 768px){.logo-medium .logo-image{max-height:36px}.logo-medium .logo-text{font-size:20px}.logo-large .logo-image{max-height:48px}.logo-large .logo-text{font-size:24px}}@media (max-width: 480px){.logo-small .logo-image{max-height:28px}.logo-medium .logo-image{max-height:32px}.logo-large .logo-image{max-height:56px}.logo-large .logo-text{font-size:22px}}.activate-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2)}.activate-card{background:#fff;border-radius:12px;padding:40px;width:100%;max-width:500px;box-shadow:0 10px 40px #0003}.activate-card .logo-container{justify-content:center;margin-bottom:24px}.activate-header{text-align:center;margin-bottom:32px}.activate-header h1{font-size:28px;margin:0 0 8px;color:#333}.activate-header .subtitle{color:#666;font-size:14px;margin:0}.activate-form,.activate-form .form-group{margin-bottom:24px}.activate-form label{display:block;font-weight:600;margin-bottom:8px;color:#333}.license-key-input{width:100%;padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;font-family:Courier New,monospace;text-transform:uppercase;transition:border-color .3s}.license-key-input:focus{outline:none;border-color:#667eea}.license-key-input:disabled{background:#f5f5f5;cursor:not-allowed}.input-help{font-size:12px;color:#999;margin:8px 0 0}.activate-actions{display:flex;flex-direction:column;gap:12px}.activate-actions button{width:100%}.activate-help{text-align:center;padding-top:24px;border-top:1px solid #e0e0e0;color:#666;font-size:14px}.activate-help a{color:#667eea;text-decoration:none;font-weight:600}.activate-help a:hover{text-decoration:underline}.success-message{text-align:center;padding:32px 0}.success-icon{width:80px;height:80px;margin:0 auto 24px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:48px;color:#fff;animation:scaleIn .5s ease}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.success-message h3{color:#333;margin:0 0 12px;font-size:24px}.success-message p{color:#666;margin:8px 0}.redirect-message{font-size:12px;color:#999;font-style:italic;margin-top:16px!important}.error-message{background:#ffe0e0;border:1px solid #ffcccc;color:#c00;padding:12px;border-radius:6px;margin-bottom:16px;font-size:14px}@media (max-width: 768px){.activate-card{padding:24px}.activate-header h1{font-size:24px}}.mobile-menu{display:none;position:relative}.mobile-menu-toggle{background:transparent;border:none;padding:8px;cursor:pointer;z-index:1001}.hamburger{width:24px;height:20px;position:relative;display:flex;flex-direction:column;justify-content:space-between}.hamburger span{display:block;height:3px;width:100%;background:#333;border-radius:2px;transition:all .3s ease}.hamburger.open span:nth-child(1){transform:translateY(8.5px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-8.5px) rotate(-45deg)}.mobile-menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:999}.mobile-menu-dropdown{position:absolute;top:100%;right:0;margin-top:8px;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:200px;z-index:1000;overflow:hidden}.mobile-menu-item{display:block;width:100%;padding:14px 20px;background:#fff;border:none;text-align:left;font-size:15px;font-weight:500;color:#333;cursor:pointer;transition:background .2s ease;border-bottom:1px solid #f0f0f0}.mobile-menu-item:last-child{border-bottom:none}.mobile-menu-item:hover{background:#f5f5f5}.mobile-menu-item:active{background:#e8e8e8}@media (min-width: 769px){.mobile-menu{display:none!important}}@media (max-width: 768px){.mobile-menu{display:block}}.zeroing-container{min-height:100vh;display:flex;flex-direction:column;background:transparent}.zeroing-header{background:#fff;border-bottom:1px solid #ddd;padding:16px 20px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 8px #00000014}.zeroing-header .header-left{display:flex;flex-direction:column;gap:4px}.zeroing-header .welcome{font-size:14px;color:#999;margin:4px 0 0}.zeroing-header .guest-badge{color:#856404;font-weight:600}.zeroing-header .header-right{display:flex;gap:12px}.zeroing-header .desktop-only{display:flex}@media (max-width: 768px){.zeroing-header .desktop-only{display:none!important}}.zeroing-main{flex:1;padding:24px 20px;max-width:900px;margin:0 auto;width:100%;display:flex;flex-direction:column;gap:32px}.zeroing-card{background:#fff;border-radius:12px;padding:28px 28px 32px;box-shadow:0 2px 12px #00000014;display:flex;flex-direction:column;gap:20px}.zeroing-card__title-row{border-bottom:1px solid #f0f0f0;padding-bottom:16px}.zeroing-card__title{font-size:24px;font-weight:700;color:#1a1a2e;margin:0 0 6px}.zeroing-card__subtitle{font-size:14px;color:#666;margin:0}.zeroing-section{display:flex;flex-direction:column;gap:8px}.zeroing-section--half{flex:1;min-width:0}.zeroing-row{display:flex;gap:20px}@media (max-width: 600px){.zeroing-row{flex-direction:column}}.zeroing-label{font-size:14px;font-weight:600;color:#333}.zeroing-label .optional{font-weight:400;color:#999;font-size:12px}.zeroing-hint{font-size:13px;color:#888;margin:0}.zeroing-input{width:100%;padding:10px 14px;border:1px solid #ddd;border-radius:8px;font-size:15px;color:#333;background:#fafafa;transition:border-color .15s}.zeroing-input:focus{outline:none;border-color:#1a1a2e;background:#fff}.zeroing-input--offset{width:160px;flex-shrink:0}.zeroing-select{width:100%;padding:10px 14px;border:1px solid #ddd;border-radius:8px;font-size:15px;color:#333;background:#fafafa;cursor:pointer;transition:border-color .15s}.zeroing-select:focus{outline:none;border-color:#1a1a2e;background:#fff}.system-toggle{display:flex;gap:0;border:1px solid #ddd;border-radius:8px;overflow:hidden;width:fit-content}.system-btn{padding:10px 28px;font-size:15px;font-weight:600;border:none;background:#f5f5f5;color:#666;cursor:pointer;transition:background .15s,color .15s}.system-btn+.system-btn{border-left:1px solid #ddd}.system-btn--active{background:#1a1a2e;color:#fff}.direction-toggle{display:flex;gap:8px;flex-wrap:wrap}.wind-compass{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-width:360px}.wind-compass .toggle-btn{width:100%;padding:10px 0;text-align:center}.wind-compass__target{display:flex;align-items:center;justify-content:center;border:2px dashed #d4d4d8;border-radius:8px;background:#fafafa;color:#666;font-size:12px;font-weight:600}@media (max-width: 600px){.wind-compass{max-width:100%}}.toggle-btn{padding:8px 16px;font-size:13px;font-weight:600;border:2px solid #ddd;border-radius:8px;background:#fff;color:#555;cursor:pointer;transition:border-color .15s,color .15s,background .15s;white-space:nowrap}.toggle-btn--active{border-color:#1a1a2e;background:#1a1a2e;color:#fff}.offset-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.zeroing-actions{display:flex;gap:12px;padding-top:8px}.btn-primary{padding:12px 32px;background:#1a1a2e;color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:background .15s,transform .1s}.btn-primary:hover{background:#0d0d1f}.btn-primary:active{transform:scale(.98)}.btn-secondary{padding:12px 24px;background:transparent;color:#555;border:2px solid #ddd;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:border-color .15s,color .15s}.btn-secondary:hover{border-color:#999;color:#333}.zeroing-results{border-top:2px solid #f0f0f0;padding-top:24px;display:flex;flex-direction:column;gap:12px}.zeroing-results__title{font-size:20px;font-weight:700;color:#1a1a2e;margin:0}.zeroing-results__scope-label{font-weight:400;font-size:17px;color:#555}.zeroing-results__meta{font-size:13px;color:#888;margin:0}.results-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 600px){.results-grid{grid-template-columns:1fr}}.result-card{background:#f8f9fa;border-radius:10px;padding:20px;border:1px solid #e9ecef;display:flex;flex-direction:column;gap:6px}.result-card__label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#888}.result-card__clicks{font-size:28px;font-weight:800;line-height:1.1}.result-card__angular{font-size:14px;color:#555;font-variant-numeric:tabular-nums}.result-card__warning{font-size:12px;color:#856404;background:#fff3cd;border-radius:6px;padding:6px 10px;margin-top:4px}.result-card__zero{font-size:13px;color:#28a745;font-weight:600}.zeroing-results__note{font-size:13px;color:#888;font-style:italic;margin:0}.zeroing-reference{background:#fff;border-radius:12px;padding:24px 28px;box-shadow:0 2px 12px #00000014}.zeroing-reference__title{font-size:18px;font-weight:700;color:#1a1a2e;margin:0 0 16px}.reference-tables{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media (max-width: 640px){.reference-tables{grid-template-columns:1fr}}.reference-table h3{font-size:13px;font-weight:700;color:#555;margin:0 0 8px;text-transform:uppercase;letter-spacing:.05em}.reference-table table{width:100%;border-collapse:collapse;font-size:13px}.reference-table th{text-align:left;padding:6px 10px;background:#f5f5f5;color:#555;font-weight:600;border-radius:4px}.reference-table td{padding:5px 10px;color:#333;border-bottom:1px solid #f0f0f0;font-variant-numeric:tabular-nums}.reference-table tr:last-child td{border-bottom:none}.image-viewer-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.image-viewer-content{background:#fff;border-radius:12px;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.image-viewer-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #f0f0f0}.image-viewer-header h3{margin:0;font-size:18px;color:#333}.image-viewer-body{flex:1;overflow:auto;display:flex;align-items:center;justify-content:center;padding:20px;background:#f9f9f9}.image-viewer-body img{max-width:100%;max-height:70vh;object-fit:contain;border-radius:8px;box-shadow:0 4px 12px #0000001a}.image-viewer-footer{display:flex;gap:12px;padding:16px 20px;border-top:1px solid #f0f0f0;background:#fff}.image-viewer-footer button{flex:1}@media (max-width: 768px){.image-viewer-content{max-width:100vw;max-height:100vh;border-radius:0}.image-viewer-body img{max-height:60vh}}.competency-page{min-height:100vh;display:flex;flex-direction:column;background:transparent}.competency-header{background:#fff;border-bottom:1px solid #ddd;padding:16px 20px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 8px #00000014}.competency-main{flex:1;padding:20px;max-width:1200px;margin:0 auto;width:100%}.competency-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;margin-top:20px}.competency-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000001a;transition:transform .2s,box-shadow .2s;cursor:pointer}.competency-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #00000026}.competency-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;flex-wrap:wrap;margin-bottom:12px}.competency-number{font-size:18px;font-weight:600;color:#333;flex:1;min-width:120px}.competency-type-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;background:#e0e7ff;color:#3730a3}.competency-status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.competency-status-badge.active{background:#d1fae5;color:#065f46}.competency-status-badge.expiring-soon{background:#fed7aa;color:#92400e}.competency-status-badge.expired{background:#fecaca;color:#991b1b}.competency-types{margin:16px 0}.competency-types-label{font-size:12px;color:#666;margin-bottom:8px}.competency-type-tags{display:flex;flex-wrap:wrap;gap:6px}.competency-type-tag{background:#ede9fe;color:#5b21b6;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:500}.competency-expiry{display:flex;align-items:center;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid #f0f0f0;font-size:14px;color:#666}.competency-no-expiry{display:flex;align-items:center;gap:8px;margin-top:12px;padding:8px 12px;background:#f0f9ff;border-radius:8px;font-size:14px;color:#0369a1;font-weight:500}.competency-photos{margin-top:12px}.competency-photo-count{font-size:12px;color:#666}.competency-actions{display:flex;gap:8px;margin-top:16px;padding-top:12px;border-top:1px solid #f0f0f0}.btn-action{flex:1;padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;background:#fff}.btn-action:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.btn-view{color:#2563eb;border-color:#2563eb}.btn-view:hover{background:#eff6ff}.btn-edit{color:#059669;border-color:#059669}.btn-edit:hover{background:#d1fae5}.empty-state{text-align:center;padding:60px 20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-top:20px}.empty-state-icon{font-size:64px;margin-bottom:16px}.empty-state h2{font-size:20px;color:#333;margin-bottom:8px}.empty-state p{color:#666;margin-bottom:24px}.filter-toggle{margin-bottom:16px}@media (max-width: 768px){.competency-header{padding:12px 16px}.header-left .welcome{font-size:13px}.competency-main{padding:12px}.competency-grid{grid-template-columns:1fr}}.license-detail-container{min-height:100vh;display:flex;flex-direction:column;background:transparent}.detail-header{background:#fff;border-bottom:1px solid #ddd;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}.header-left{display:flex;align-items:center;gap:12px}.firearm-name{font-size:18px;font-weight:600;margin:0;color:#333}.header-actions{display:flex;gap:8px}@media (max-width: 768px){.detail-header{padding:12px 16px}.firearm-name{font-size:16px}}.detail-main{flex:1;padding:20px;max-width:600px;margin:0 auto;width:100%}.license-form{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 8px #00000014}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-actions{display:flex;gap:12px;margin-top:24px}.form-actions button{flex:1}.license-details{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 8px #00000014}.detail-item{display:grid;grid-template-columns:140px 1fr;gap:16px;padding:16px 0;border-bottom:1px solid #f0f0f0}.detail-item:last-child{border-bottom:none}.detail-item .label{font-weight:600;color:#666}.detail-item .value{color:#333;word-break:break-word}.detail-item .value.status-active{color:#34c759;font-weight:600}.detail-item .value.status-expired{color:#ff3b30;font-weight:600}.detail-item .value.status-pending{color:#ff9500;font-weight:600}.detail-actions{display:flex;gap:12px;margin-top:24px;flex-wrap:wrap}.detail-actions button{flex:1;min-width:140px}@media (max-width: 768px){.detail-main{padding:12px}.license-form,.license-details{padding:16px}.form-row{grid-template-columns:1fr}.detail-item{grid-template-columns:1fr;gap:8px}.form-actions,.detail-actions{flex-direction:column}.form-actions button,.detail-actions button{width:100%}}.detail-view{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 8px #00000014}.detail-section{margin-bottom:32px}.detail-section h2{font-size:16px;font-weight:600;color:#333;margin:0 0 16px;border-bottom:2px solid #f0f0f0;padding-bottom:8px}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.detail-item{display:flex;flex-direction:column}.detail-item .label{font-size:12px;font-weight:600;color:#999;text-transform:uppercase;margin-bottom:4px}.detail-item .value{font-size:16px;color:#333}.detail-item .value.status{font-weight:600;padding:4px 12px;border-radius:4px;display:inline-block;width:fit-content}.detail-item .value.status.active{background:#d4edda;color:#155724}.detail-item .value.status.expiring_soon{background:#fff3cd;color:#856404}.detail-item .value.status.expired{background:#f8d7da;color:#721c24}.tag-list{display:flex;flex-wrap:wrap;gap:8px}.tag{display:inline-block;background:#e8f4f8;color:#0d6a8f;padding:6px 12px;border-radius:16px;font-size:13px;font-weight:500}.header-actions{display:flex;gap:8px;margin-left:auto}.btn-danger{background:#f44336;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease}.btn-danger:hover{background:#d32f2f;transform:translateY(-2px);box-shadow:0 4px 12px #f443364d}.input-group select{flex:0 0 90px;width:auto!important}.photos-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.photo-category{margin-bottom:24px}.photo-category:last-child{margin-bottom:0}.photo-category h3{font-size:16px;font-weight:600;color:#333;margin:0 0 16px}.photo-item{display:flex;flex-direction:column;background:#f9f9f9;border-radius:8px;padding:12px;border:1px solid #e0e0e0}.photo-item h3{font-size:14px;font-weight:600;color:#666;margin:0 0 12px}.detail-photo{width:100%;max-width:100%;height:auto;max-height:500px;border-radius:6px;border:1px solid #ddd;object-fit:contain;background:#fff;display:block}.photo-preview{margin-top:12px;border-radius:8px;border:1px solid #e0e0e0;background:#f9f9f9;padding:12px;position:relative}.photo-preview img{width:100%;max-width:100%;height:auto;max-height:300px;display:block;object-fit:contain;margin-bottom:12px;border-radius:6px}.btn-remove-photo{width:100%;background:#f44336;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s}.btn-remove-photo:hover{background:#d32f2f;transform:translateY(-1px);box-shadow:0 2px 8px #f443364d}.btn-remove-photo:active{transform:translateY(0)}.application-section{background:#f8f9fa;padding:20px;border-radius:8px;border:2px solid #e3f2fd}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-header h2{margin:0;border:none;padding:0}.btn-small{padding:8px 16px;font-size:13px;white-space:nowrap}.detail-item .value.app-status{font-weight:600;padding:4px 12px;border-radius:4px;display:inline-block;width:fit-content}.detail-item .value.app-status.pending_submission{background:#e3f2fd;color:#1565c0}.detail-item .value.app-status.submitted,.detail-item .value.app-status.under_review{background:#fff9c4;color:#f57f17}.detail-item .value.app-status.additional_info_required{background:#ffe0b2;color:#e65100}.detail-item .value.app-status.approved{background:#c8e6c9;color:#2e7d32}.detail-item .value.app-status.rejected{background:#ffcdd2;color:#c62828}.detail-item .value.app-status.completed{background:#b2dfdb;color:#00695c}.detail-item .value.saps-availability{font-weight:600;padding:4px 12px;border-radius:4px;display:inline-block;width:fit-content}.detail-item .value.saps-availability.online{background:#c8e6c9;color:#2e7d32}.detail-item .value.saps-availability.degraded{background:#fff9c4;color:#f57f17}.detail-item .value.saps-availability.offline,.detail-item .value.saps-availability.unknown{background:#ffcdd2;color:#c62828}.detail-item .value.saps-site{font-weight:600;padding:4px 12px;border-radius:4px;display:inline-block;width:fit-content}.detail-item .value.saps-site.reachable{background:#c8e6c9;color:#2e7d32}.detail-item .value.saps-site.unreachable{background:#ffcdd2;color:#c62828}.detail-item .value.saps-site.checking{background:#e3f2fd;color:#1565c0}.status-result{margin-top:16px;padding:12px 16px;border-radius:6px;font-weight:500}.status-result.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.status-result.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.status-result.warning{background:#fff3cd;color:#856404;border:1px solid #ffeeba}@media (max-width: 768px){.detail-header{flex-wrap:wrap;padding:12px 16px;gap:12px}.detail-header h1{font-size:16px;flex:1;min-width:140px}.detail-main{padding:12px}.photos-grid{grid-template-columns:1fr}.detail-photo{max-height:400px}.photo-preview img{max-height:250px}.section-header{flex-direction:column;align-items:flex-start;gap:12px}.btn-small{width:100%}}.btn-back-desktop{background:transparent;color:#007aff;padding:10px 16px;font-size:14px;font-weight:500;border:none;cursor:pointer;transition:opacity .2s ease}.btn-back-desktop:hover{opacity:.7}.header-actions .btn-primary,.header-actions .btn-danger{width:100px;padding:10px 16px}.delete-modal{background:#fff;border-radius:12px;padding:24px;max-width:400px;width:90%;box-shadow:0 4px 20px #00000026}.delete-modal h2{margin:0 0 16px;font-size:20px;color:#333}.delete-modal p{margin:0 0 12px;color:#666;line-height:1.5}.delete-warning{color:#ff3b30!important;font-weight:500;margin-bottom:24px!important}.modal-actions{display:flex;gap:12px;margin-top:24px}.modal-actions button{flex:1;padding:12px;font-size:14px;font-weight:500}.license-actions{display:flex;gap:12px;margin-top:32px;padding-top:24px;border-top:1px solid #e5e7eb}.license-actions button{flex:1;padding:14px;font-size:15px;font-weight:500;border-radius:8px;cursor:pointer;transition:all .2s}@media (max-width: 640px){.license-actions{flex-direction:column}}.pdf-preview-container{width:100%;display:flex;flex-direction:column;gap:8px}.pdf-preview-small{width:100%;height:300px;border:1px solid #e5e7eb;border-radius:8px}.pdf-preview-container{width:100%}.pdf-preview-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#f9fafb;border:1px solid #e5e7eb;border-bottom:none;border-radius:8px 8px 0 0}.pdf-preview-header span{font-size:13px;color:#374151;font-weight:500}.pdf-preview-frame{width:100%;height:600px;border:1px solid #e5e7eb;border-radius:0;display:block;pointer-events:auto}.pdf-fallback{font-size:12px;color:#666;text-align:center;padding:8px;margin:0;background:#f9fafb;border:1px solid #e5e7eb;border-top:none;border-radius:0 0 8px 8px}.btn-link{background:none;border:none;color:#3b82f6;text-decoration:underline;cursor:pointer;padding:0;font-size:12px}.pdf-viewer-container{width:100%;background:#fff;border:1px solid #e5e7eb}.pdf-canvas{width:100%;height:auto;display:block}.pdf-loading{padding:40px;text-align:center;color:#666;font-size:14px}.pdf-viewer-error{padding:40px;text-align:center;color:#dc2626;font-size:14px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px}.pdf-controls{display:flex;align-items:center;justify-content:center;gap:16px;padding:12px;background:#f9fafb;border-top:1px solid #e5e7eb}.pdf-controls button{padding:6px 12px;background:#3b82f6;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:13px}.pdf-controls button:hover:not(:disabled){background:#2563eb}.pdf-controls button:disabled{opacity:.5;cursor:not-allowed}.pdf-controls span{font-size:13px;color:#374151;font-weight:500}.pdf-thumbnail{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 16px;background:#f9fafb;border:2px dashed #d1d5db;border-radius:8px;cursor:pointer;transition:all .2s;min-height:200px}.pdf-thumbnail:hover{background:#f3f4f6;border-color:#3b82f6}.pdf-icon-large{font-size:64px;margin-bottom:12px;opacity:.7}.pdf-filename{font-size:12px;color:#6b7280;text-align:center;word-break:break-all;margin-bottom:16px;max-width:200px}.btn-open-pdf{padding:8px 12px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:13px;cursor:pointer;transition:background .2s}.btn-open-pdf:hover{background:#2563eb}.btn-remove-photo{margin-top:8px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:flex-end;justify-content:center;z-index:9999;padding:16px;overflow-y:auto}.modal-content{background:#fff;border-radius:12px 12px 0 0;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 -4px 24px #00000026}.modal-content-large{max-width:700px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #f0f0f0;position:sticky;top:0;background:#fff}.modal-header h2{margin:0;font-size:18px}.close-button{background:none;border:none;color:#999;font-size:24px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.close-button:hover{color:#333}.license-form{padding:20px}.license-form .error-message{background:#fff3cd;border:1px solid #ffc107;color:#856404;padding:12px 16px;border-radius:6px;margin-bottom:20px;font-size:14px;position:relative;z-index:2000}.license-form .form-group{margin-bottom:16px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-row .form-group{margin-bottom:0}.modal-actions,.modal-footer{display:flex;gap:12px;padding:20px;border-top:1px solid #f0f0f0;background:#f9f9f9}.modal-footer button{flex:1;padding:12px;font-size:14px;font-weight:500}.modal-actions button{flex:1}@media (max-width: 768px){.modal-overlay{align-items:stretch}.modal-content{border-radius:0;max-height:100vh}.form-row{grid-template-columns:1fr;gap:0}.form-row .form-group{margin-bottom:16px}}@media (min-width: 769px){.modal-overlay{align-items:center}.modal-content{border-radius:12px;max-height:80vh}}.form-section{border:1px solid #e0e0e0;border-radius:8px;padding:16px;margin-bottom:16px}.form-section legend{font-weight:600;font-size:14px;color:#333;padding:0 8px;margin-left:-8px}.section-help{font-size:12px;color:#999;margin:8px 0 16px}.checkbox-group{display:grid;grid-template-columns:1fr 1fr;gap:12px}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px}.checkbox-label input[type=checkbox]{cursor:pointer;width:18px;height:18px}.checkbox-label span{-webkit-user-select:none;user-select:none}.input-group{display:flex;gap:8px;align-items:center;width:100%}.input-group input{flex:1;min-width:0;width:auto!important}.input-group select{flex:0 0 110px;min-width:110px;width:auto!important}.form-group.full-width{grid-column:1 / -1}.photo-preview{margin-top:12px;border-radius:6px;overflow:hidden;background:#f5f5f5;max-width:150px}.photo-preview img{width:100%;height:auto;display:block;border:1px solid #ddd}.license-type-selection{padding:40px 20px;text-align:center}.license-type-selection h3{font-size:20px;margin-bottom:32px;color:#333}.license-type-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:600px;margin:0 auto}.license-type-card{background:#fff;border:2px solid #e0e0e0;border-radius:12px;padding:32px 20px;cursor:pointer;transition:all .2s ease;text-align:center}.license-type-card:hover{border-color:var(--color-primary, #3b82f6);transform:translateY(-2px);box-shadow:0 4px 12px #3b82f626}.license-type-icon{font-size:48px;margin-bottom:16px}.license-type-card h4{font-size:18px;margin-bottom:8px;color:#333}.license-type-card p{font-size:14px;color:#666;line-height:1.5;margin:0}.license-type-badge{display:flex;align-items:center;gap:12px;padding:12px 20px;background:#f0f9ff;border-bottom:1px solid #bfdbfe}.change-type-btn{background:none;border:none;color:var(--color-primary, #3b82f6);cursor:pointer;padding:4px 8px;font-size:14px;font-weight:600;border-radius:4px}.change-type-btn:hover{background:#dbeafe}.selected-type{font-weight:600;color:#1e40af;font-size:14px}.field-help{font-size:12px;color:#999;margin-top:4px;font-style:italic}.document-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;margin-top:12px}.document-item{position:relative;border-radius:8px;overflow:hidden;border:2px solid #e5e7eb;transition:all .2s}.document-item:hover{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f633}.image-item img{width:100%;height:120px;object-fit:cover}.pdf-item{background:#f9fafb;padding:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:120px}.pdf-link{display:flex;flex-direction:column;align-items:center;gap:8px;text-decoration:none;color:#374151;text-align:center}.pdf-link:hover{color:#3b82f6}.pdf-icon{font-size:32px}.pdf-link span:last-child{font-size:11px;word-break:break-word}.document-preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;margin-top:12px}.document-preview-item{position:relative;border-radius:8px;overflow:hidden;border:2px solid #e5e7eb}.document-preview-item img{width:100%;height:120px;object-fit:cover}.pdf-preview{background:#f9fafb;padding:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:120px;gap:8px}.pdf-name{font-size:11px;color:#374151;text-align:center;word-break:break-word}.remove-preview-btn{position:absolute;top:4px;right:4px;background:#ef4444e6;color:#fff;border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;transition:all .2s}.remove-preview-btn:hover{background:#dc2626;transform:scale(1.1)}.existing-documents{margin-bottom:16px}.existing-documents label{display:block;margin-bottom:8px;font-weight:600;color:#374151}.view-section{padding:20px}.view-row{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.view-row label{font-weight:600;color:#374151;font-size:14px}.view-value{font-size:15px;color:#1f2937}.documents-container{display:flex;flex-direction:column;gap:20px;margin-top:12px}.pdf-preview-container,.image-preview-container{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background:#f9fafb}.pdf-preview-header,.image-preview-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fff;border-bottom:1px solid #e5e7eb;font-size:14px;font-weight:500}.btn-open-new{padding:6px 12px;background:#3b82f6;color:#fff;border:none;border-radius:4px;font-size:13px;cursor:pointer;transition:background .2s}.btn-open-new:hover{background:#2563eb}.pdf-preview-frame{width:100%;height:600px;border:none;display:block;pointer-events:auto}.pdf-fallback{font-size:12px;color:#666;text-align:center;padding:8px;margin:0}.btn-link{background:none;border:none;color:#3b82f6;text-decoration:underline;cursor:pointer;font-size:12px;padding:0}.btn-link:hover{color:#2563eb}.image-preview{width:100%;max-height:600px;object-fit:contain;display:block;cursor:pointer;background:#fff}@media (max-width: 640px){.license-type-cards{grid-template-columns:1fr}.document-grid,.document-preview-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.pdf-preview-frame{height:400px}.image-preview{max-height:400px}}.license-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.license-card{background:#fff;border-radius:8px;border-left:4px solid #007AFF;overflow:hidden;box-shadow:0 2px 8px #00000014;transition:transform .2s,box-shadow .2s;cursor:pointer;display:flex;flex-direction:column}.license-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #0000001f}.license-card.status-expired{border-left-color:#ff3b30;opacity:.7}.license-card.status-expiring{border-left-color:#ff9500}.license-card.status-active{border-left-color:#34c759}.card-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid #f0f0f0}.card-header h3{margin:0;font-size:16px;font-weight:600}.header-badges{display:flex;gap:8px;align-items:center}.status-badge{padding:4px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase}.status-badge.active{background:#d1f5d9;color:#0a6e0a}.status-badge.expired{background:#ffebee;color:#b71c1c}.status-badge.expiring_soon{background:#fff3e0;color:#e65100}.application-badge{padding:4px 8px;border-radius:4px;font-size:11px;font-weight:600}.application-badge.app-status-pending{background:#e3f2fd;color:#1565c0}.application-badge.app-status-in-progress{background:#fff9c4;color:#f57f17}.application-badge.app-status-action-needed{background:#ffe0b2;color:#e65100}.application-badge.app-status-approved{background:#c8e6c9;color:#2e7d32}.application-badge.app-status-rejected{background:#ffcdd2;color:#c62828}.application-badge.app-status-completed{background:#b2dfdb;color:#00695c}.card-body{padding:16px;flex:1}.detail{display:flex;justify-content:space-between;margin-bottom:12px;font-size:13px}.detail:last-child{margin-bottom:0}.detail .label{color:#999;font-weight:500}.detail .value{color:#333;font-weight:500;text-align:right;flex:1;margin-left:8px}.detail .days{color:#007aff}.detail .days.negative{color:#ff3b30}.card-footer{padding:12px 16px;background:#f9f9f9;border-top:1px solid #f0f0f0}.license-actions{display:flex;gap:8px}.btn-action{flex:1;padding:8px 12px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:4px}.btn-action:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.btn-action:active{transform:translateY(0)}.btn-view{background:#007aff;color:#fff}.btn-view:hover{background:#0056b3}.btn-edit{background:#34c759;color:#fff}.btn-edit:hover{background:#28a745}.empty{text-align:center;padding:40px 20px;color:#999}@media (max-width: 768px){.license-list{grid-template-columns:1fr}}.notification-banner-container{position:fixed;top:80px;right:20px;width:100%;max-width:500px;z-index:1000;display:flex;flex-direction:column;gap:12px}.notification-banner{background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;padding:16px;display:flex;align-items:flex-start;gap:16px;animation:slideInRight .3s ease-out;border-left:4px solid #3498db}.notification-banner.critical{border-left-color:#e74c3c;background:linear-gradient(to right,#e74c3c0d,#fff 20%)}.notification-banner.warning{border-left-color:#f39c12;background:linear-gradient(to right,#f39c120d,#fff 20%)}.notification-banner.info{border-left-color:#3498db;background:linear-gradient(to right,#3498db0d,#fff 20%)}.notification-content{flex:1;display:flex;gap:12px;align-items:flex-start}.notification-icon{font-size:24px;line-height:1;flex-shrink:0}.notification-message{flex:1}.notification-message strong{display:block;margin-bottom:8px;color:#2c3e50;font-size:15px}.notification-message p{margin:0;color:#7f8c8d;font-size:14px;line-height:1.5}.notification-actions{display:flex;flex-direction:column;gap:8px;align-items:flex-end}.notification-actions .btn-view{padding:8px 16px;background:#3498db;color:#fff;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s;white-space:nowrap}.notification-actions .btn-view:hover{background:#2980b9}.notification-banner.critical .btn-view{background:#e74c3c}.notification-banner.critical .btn-view:hover{background:#c0392b}.notification-banner.warning .btn-view{background:#f39c12}.notification-banner.warning .btn-view:hover{background:#e67e22}.notification-actions .btn-dismiss{width:32px;height:32px;padding:0;background:transparent;border:none;color:#95a5a6;font-size:20px;cursor:pointer;transition:all .2s;border-radius:4px;display:flex;align-items:center;justify-content:center}.notification-actions .btn-dismiss:hover{background:#ecf0f1;color:#7f8c8d}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@media (max-width: 768px){.notification-banner-container{top:60px;right:10px;left:10px;max-width:none}.notification-banner{padding:12px;gap:12px}.notification-icon{font-size:20px}.notification-message strong{font-size:14px}.notification-message p{font-size:13px}.notification-actions{flex-direction:row;align-items:center}}.notification-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.notification-modal{background:#fff;border-radius:12px;max-width:700px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 10px 40px #0003}.notification-modal-header{padding:24px 28px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px 12px 0 0}.notification-modal-header h2{margin:0;font-size:24px;font-weight:600;color:#fff}.close-button{background:#fff3;border:none;font-size:24px;cursor:pointer;color:#fff;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .2s}.close-button:hover{background:#ffffff4d}.notification-modal-body{padding:20px 28px;overflow-y:auto;flex:1}.loading-text{text-align:center;color:#6b7280;padding:40px 0}.notification-section{margin-bottom:32px}.notification-section:last-child{margin-bottom:0}.section-title{font-size:18px;font-weight:600;color:#1f2937;margin:0 0 16px;padding-bottom:8px;border-bottom:2px solid #e5e7eb}.notification-list{display:flex;flex-direction:column;gap:12px}.notification-card{padding:16px;border-radius:8px;border:1px solid #e5e7eb;background:#fff;transition:box-shadow .2s}.notification-card:hover{box-shadow:0 2px 8px #0000001a}.expiry-critical{border-left:4px solid #ef4444;background:linear-gradient(to right,#fef2f2,#fff 20%)}.expiry-warning{border-left:4px solid #f59e0b;background:linear-gradient(to right,#fffbeb,#fff 20%)}.expiry-info,.announcement-info{border-left:4px solid #3b82f6;background:linear-gradient(to right,#eff6ff,#fff 20%)}.announcement-warning{border-left:4px solid #f59e0b;background:linear-gradient(to right,#fffbeb,#fff 20%)}.announcement-update{border-left:4px solid #10b981;background:linear-gradient(to right,#f0fdf4,#fff 20%)}.announcement-alert{border-left:4px solid #ef4444;background:linear-gradient(to right,#fef2f2,#fff 20%)}.notification-content{margin-bottom:12px}.notification-title{font-size:16px;font-weight:600;color:#1f2937;margin-bottom:8px}.notification-message{font-size:14px;color:#4b5563;line-height:1.5;margin-bottom:8px}.announcement-message{white-space:pre-wrap;word-wrap:break-word}.notification-date{font-size:12px;color:#9ca3af}.notification-actions{display:flex;gap:8px;flex-wrap:wrap}.action-button{padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;border:none;transition:all .2s}.view-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.view-button:hover{opacity:.9;transform:translateY(-1px)}.dismiss-button{background:#f3f4f6;color:#6b7280}.dismiss-button:hover{background:#e5e7eb;color:#374151}.notification-modal-footer{padding:16px 28px;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end}.close-modal-button{padding:10px 24px;background:#f3f4f6;color:#374151;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.close-modal-button:hover{background:#e5e7eb}@media (max-width: 768px){.notification-modal-backdrop{padding:10px}.notification-modal{max-height:95vh}.notification-modal-header{padding:20px}.notification-modal-header h2{font-size:20px}.notification-modal-body{padding:16px 20px}.section-title{font-size:16px}.notification-card{padding:12px}.notification-actions{flex-direction:column}.action-button{width:100%}}.dashboard-container{min-height:100vh;display:flex;flex-direction:column;background:transparent}.dashboard-header{background:#fff;border-bottom:1px solid #ddd;padding:16px 20px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 8px #00000014}.header-left{display:flex;flex-direction:column;gap:4px}.header-left .welcome{font-size:14px;color:#999;margin:4px 0 0}.guest-badge{display:inline-block;background:#ffc107;color:#000;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;margin-top:8px}.header-right{display:flex;gap:12px}.desktop-only{display:flex}@media (max-width: 768px){.desktop-only{display:none!important}}.guest-banner{background:linear-gradient(135deg,#fff3cd,#ffecb5);border-left:4px solid #ffc107;padding:16px 20px;margin:0;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.guest-banner p{margin:0;color:#856404;font-size:14px;flex:1;min-width:200px}.btn-primary-small{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .3s ease}.btn-primary-small:hover{transform:translateY(-2px);box-shadow:0 8px 16px #667eea4d}.btn-primary-small:active{transform:translateY(0)}.dashboard-main{flex:1;padding:20px;max-width:1200px;margin:0 auto;width:100%}.add-license-bar{width:100%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:12px 18px;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-bottom:20px;box-shadow:0 4px 12px #667eea4d}.add-license-bar:hover{transform:translateY(-2px);box-shadow:0 8px 20px #667eea66}.add-license-bar:active{transform:translateY(0)}.licenses-section{background:transparent;border-radius:0;padding:0;box-shadow:none}.filter-toggle{display:flex;justify-content:flex-end;margin-bottom:20px}.refresh-toast{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-radius:8px;font-size:14px;font-weight:500;margin-bottom:12px;animation:fadeInDown .2s ease}.refresh-toast--ok{background-color:#1a3a2a;color:#6ee7a8;border:1px solid #2d6a4a}.refresh-toast--warn{background-color:#3a2a10;color:#f5c842;border:1px solid #7a5a20}.refresh-toast__close{background:none;border:none;cursor:pointer;color:inherit;font-size:13px;opacity:.7;padding:0 4px;line-height:1;flex-shrink:0}.refresh-toast__close:hover{opacity:1}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.header-actions .btn-secondary,.header-actions .btn-primary{min-width:150px;padding:12px 18px;border-radius:8px;font-weight:600;font-size:15px;display:inline-flex;justify-content:center;align-items:center;gap:8px}.filter-bar{display:flex;align-items:center;gap:16px;margin-bottom:20px;flex-wrap:wrap;background:#f8f9fa;padding:16px;border-radius:8px;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.filter-group{display:flex;flex-direction:column;gap:6px;min-width:150px}.filter-group label{font-weight:500;font-size:13px;color:#666}.filter-group select{padding:8px 12px;border:1px solid #ddd;border-radius:4px;background:#fff;font-size:14px;cursor:pointer}.filter-group select:focus{outline:none;border-color:#007bff}.filter-bar label{font-weight:500;color:#666}.filter-bar select{flex:1;min-width:150px}@media (max-width: 768px){.dashboard-header{padding:12px 16px}.header-left .welcome{font-size:13px}.section-header{flex-direction:column;align-items:stretch}.header-actions{width:100%;flex-direction:column}.header-actions .btn-secondary,.header-actions .btn-primary{width:100%;min-width:unset}.dashboard-main,.licenses-section{padding:12px}.filter-bar{flex-direction:column;gap:12px}.filter-group,.filter-group select,.filter-bar select{width:100%}}.tools-section{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px}.tool-card{display:flex;align-items:center;gap:12px;background:#fff;border:2px solid #e9ecef;border-radius:10px;padding:14px 20px;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .1s;text-align:left;font-family:inherit}.tool-card:hover{border-color:#1a1a2e;box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.tool-card:active{transform:translateY(0)}.tool-card__icon{font-size:24px;line-height:1}.tool-card__label{font-size:15px;font-weight:700;color:#1a1a2e;display:block}.tool-card__desc{font-size:12px;color:#888;display:block;margin-top:2px}.success-message{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724;padding:12px;border-radius:8px;margin-bottom:20px;font-size:14px}.landing-container{min-height:100vh;width:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.landing-card{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;padding:24px 20px;max-width:420px;width:100%;max-height:95vh;overflow-y:auto}.landing-header{text-align:center;margin-bottom:20px;display:flex;flex-direction:column;align-items:center;padding-top:20px}.landing-header .logo-container{justify-content:center;margin-bottom:12px}.landing-header .app-name{font-size:24px;font-weight:700;color:#1a1a2e;margin:8px 0 4px;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-header h1{font-size:42px;font-weight:700;color:#1a1a2e;margin:0 0 8px;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-header .subtitle{font-size:14px;color:#666;margin:4px 0 0;font-weight:600}.landing-description{text-align:center;margin-bottom:16px}.landing-description p{font-size:13px;color:#333;margin:0 0 6px;line-height:1.5}.landing-description .description-secondary{color:#999;font-size:14px}.landing-divider{height:1px;background:#eee;margin:16px 0}.landing-actions{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.btn-primary,.btn-guest{padding:12px 18px;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 25px #667eea66}.btn-primary:active{transform:translateY(0)}.btn-guest{background:#f5f5f5;color:#333;border:2px solid #e0e0e0}.btn-guest:hover{background:#f0f0f0;border-color:#d0d0d0;transform:translateY(-2px);box-shadow:0 10px 25px #0000001a}.btn-guest:active{transform:translateY(0)}.btn-icon{font-size:18px}.or-divider{text-align:center;color:#999;font-size:14px;margin:16px 0}.guest-note{font-size:12px;color:#999;text-align:center;margin:12px 0 0;line-height:1.4}.landing-footer{text-align:center;border-top:1px solid #eee;padding-top:24px}.landing-footer p{font-size:14px;color:#666;margin:0 0 8px}.btn-link{background:none;border:none;color:#667eea;font-size:14px;font-weight:600;cursor:pointer;padding:0;text-decoration:underline;transition:color .3s ease}.btn-link:hover{color:#764ba2}@media (max-width: 480px){.landing-card{padding:32px 20px}.landing-header h1{font-size:36px}.landing-header .subtitle{font-size:16px}.landing-description p{font-size:14px}.landing-header .logo-container svg,.landing-header .logo-container img{max-width:150px}}.status-timeline{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 8px #00000014;margin-top:24px}.status-timeline h3{margin:0 0 24px;font-size:18px;font-weight:600;color:#333}.status-timeline-empty{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 8px #00000014;margin-top:24px;text-align:center}.status-timeline-empty p{color:#999;margin:0}.timeline-items{position:relative;padding-left:40px}.timeline-items:before{content:"";position:absolute;left:15px;top:8px;bottom:8px;width:2px;background:linear-gradient(to bottom,#e0e0e0,#e0e0e0)}.timeline-item{position:relative;margin-bottom:24px;display:flex;align-items:flex-start}.timeline-item:last-child{margin-bottom:0}.timeline-marker{position:absolute;left:-40px;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #00000026;z-index:1}.timeline-icon{font-size:16px}.timeline-content{flex:1;background:#f9f9f9;border-radius:8px;padding:12px 16px;position:relative}.timeline-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}.status-change{display:flex;align-items:center;gap:8px;font-weight:600;font-size:14px}.status-old{color:#999;text-decoration:line-through}.arrow{color:#999}.status-new{font-weight:700}.timeline-date{font-size:12px;color:#666}.timeline-badge{display:inline-block;background:#4caf50;color:#fff;padding:2px 8px;border-radius:12px;font-size:10px;font-weight:600;text-transform:uppercase;margin-top:8px}.timeline-meta{margin-top:8px;display:grid;gap:6px}.timeline-status-text{font-size:13px;color:#37474f}.timeline-warning{font-size:12px;color:#ef6c00}.timeline-details-grid{margin-top:10px;display:grid;gap:4px}.timeline-detail-row{display:grid;grid-template-columns:160px 1fr;gap:8px;align-items:start}.timeline-detail-label{font-size:12px;color:#607d8b;font-weight:600}.timeline-detail-value{font-size:12px;color:#263238;word-break:break-word}@media (max-width: 768px){.status-timeline{padding:16px}.timeline-items{padding-left:32px}.timeline-marker{left:-32px;width:28px;height:28px}.timeline-icon{font-size:14px}.timeline-header{flex-direction:column;align-items:flex-start}.timeline-detail-row{grid-template-columns:1fr;gap:2px}}.conflict-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.conflict-modal{background:#fff;border-radius:12px;max-width:900px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 10px 40px #0000004d}.conflict-modal-header{padding:24px;border-bottom:1px solid #e5e7eb}.conflict-modal-header h2{margin:0 0 8px;color:#1f2937;font-size:24px}.conflict-description{margin:0;color:#6b7280;font-size:14px;line-height:1.5}.conflict-modal-body{flex:1;overflow-y:auto;padding:24px}.conflict-modal-footer{padding:20px 24px;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;gap:12px}.conflict-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:20px;margin-bottom:20px}.conflict-card:last-child{margin-bottom:0}.conflict-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.conflict-title{margin:0;font-size:18px;color:#1f2937;flex:1}.conflict-subtitle{color:#6b7280;font-size:14px}.resolved-badge{background:#10b981;color:#fff;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.quick-select{display:flex;gap:12px;margin-bottom:20px}.btn-quick-select{flex:1;padding:10px 16px;background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#4b5563;font-size:14px;cursor:pointer;transition:all .2s}.btn-quick-select:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.btn-quick-select:disabled{opacity:.5;cursor:not-allowed}.field-conflict{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px;margin-bottom:16px}.field-conflict:last-child{margin-bottom:0}.field-name{font-weight:600;color:#1f2937;margin-bottom:16px;font-size:16px}.value-comparison{display:grid;grid-template-columns:1fr 1fr;gap:16px}.value-container{background:#f9fafb;border:2px solid #e5e7eb;border-radius:6px;padding:16px;transition:all .2s}.value-container:has(.choice-button.selected){border-color:#4c51bf;background:#eef2ff}.value-label{font-size:13px;font-weight:600;color:#6b7280;margin-bottom:8px}.value-text{color:#1f2937;font-size:14px;line-height:1.6;margin-bottom:12px;min-height:40px;word-break:break-word;white-space:pre-wrap;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.choice-button{width:100%;padding:10px;background:#fff;border:2px solid #d1d5db;border-radius:6px;color:#4b5563;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.choice-button:hover:not(:disabled){border-color:#4c51bf;color:#4c51bf}.choice-button.selected{background:#4c51bf;border-color:#4c51bf;color:#fff}.choice-button:disabled{opacity:.5;cursor:not-allowed}.conflict-error{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:12px 16px;margin:0 24px 16px;color:#991b1b;font-size:14px}@media (max-width: 768px){.conflict-modal{max-width:100%;max-height:100vh;border-radius:0}.value-comparison{grid-template-columns:1fr}.quick-select{flex-direction:column}.conflict-modal-footer{flex-direction:column-reverse}.conflict-modal-footer button{width:100%}}.slide-to-confirm{position:relative;width:100%;height:60px;background:#fff1f1;border:2px solid #dc2626;border-radius:30px;overflow:hidden;cursor:pointer;-webkit-user-select:none;user-select:none;margin-top:20px}.slide-to-confirm.disabled{opacity:.5;cursor:not-allowed}.slide-to-confirm.confirmed{background:#dcfce7;border-color:#16a34a}.slide-background{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;z-index:1}.slide-text{color:#991b1b;font-weight:600;font-size:14px;pointer-events:none;transition:opacity .3s}.slide-to-confirm.confirmed .slide-text{color:#15803d}.slide-button{position:absolute;left:0;top:50%;transform:translateY(-50%);width:60px;height:56px;background:linear-gradient(135deg,#dc2626,#991b1b);border-radius:28px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:24px;font-weight:700;cursor:grab;z-index:2;transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #dc26264d}.slide-button:active{cursor:grabbing}.slide-to-confirm.confirmed .slide-button{background:linear-gradient(135deg,#16a34a,#15803d);box-shadow:0 2px 8px #16a34a4d}.slide-to-confirm.disabled .slide-button{cursor:not-allowed}@media (max-width: 768px){.slide-to-confirm{height:50px}.slide-button{width:50px;height:46px}.slide-text{font-size:12px}}.profile-container{min-height:100vh;display:flex;flex-direction:column;background:transparent}.profile-header{background:#fff;border-bottom:1px solid #ddd;padding:16px 20px;display:flex;align-items:center;gap:16px}.profile-header h1{font-size:20px;margin:0}.profile-main{flex:1;padding:20px;max-width:600px;margin:0 auto;width:100%}.profile-card{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 8px #00000014}.profile-info{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid #f0f0f0}.profile-info p{margin:12px 0;font-size:14px}.profile-info strong{color:#666;display:block;margin-bottom:4px}.profile-form .form-group{margin-bottom:16px}.profile-form .form-actions{display:flex;gap:12px;margin-top:24px}.profile-form .form-actions button{flex:1}.message{padding:12px;border-radius:6px;margin-bottom:16px;font-size:14px}.message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.message.error{background:#fff3cd;color:#856404;border:1px solid #ffeaa7}@media (max-width: 768px){.profile-main{padding:12px}.profile-card{padding:16px}.profile-form .form-actions{flex-direction:column}}.danger-zone{background:#fff;border-radius:8px;padding:24px;margin-top:24px;box-shadow:0 2px 8px #00000014;border:2px solid #fee2e2}.danger-zone h2{color:#dc2626;font-size:18px;margin:0 0 16px}.danger-warning{background:#fff1f1;border-left:4px solid #dc2626;padding:12px;margin-bottom:20px;color:#991b1b;font-size:14px;line-height:1.5}.btn-danger{background:linear-gradient(135deg,#dc2626,#991b1b);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s;font-size:14px}.btn-danger:hover{transform:translateY(-2px);box-shadow:0 4px 12px #dc26264d}.btn-danger:active{transform:translateY(0)}.delete-confirmation{margin-top:20px}.delete-confirmation h3{color:#dc2626;font-size:16px;margin:0 0 12px}.warning-text{background:#fff1f1;border:1px solid #fecaca;padding:12px;border-radius:6px;color:#991b1b;font-size:13px;margin-bottom:20px;line-height:1.5}.final-warning{background:#fef2f2;border:2px solid #dc2626;padding:16px;border-radius:8px;color:#991b1b;font-weight:600;font-size:14px;text-align:center;margin-top:20px}.btn-secondary{background:#f3f4f6;color:#374151;border:1px solid #d1d5db;padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s;font-size:14px;width:100%}.btn-secondary:hover{background:#e5e7eb}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.licensing-status{margin-bottom:24px;padding:20px;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:8px;border:2px solid #667eea}.licensing-status h3{margin:0 0 16px;font-size:16px;color:#333}.tier-info{display:flex;align-items:center;gap:16px;margin-bottom:16px}.tier-badge-large{padding:12px 20px;border-radius:8px;font-weight:700;font-size:18px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 6px #0000001a}.tier-details{flex:1}.tier-details p{margin:8px 0;font-size:14px;color:#333}.license-key-display{font-family:Courier New,monospace;background:#ffffffb3;padding:4px 8px;border-radius:4px;font-size:12px;color:#667eea}.btn-upgrade{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s;font-size:14px;width:100%;box-shadow:0 4px 6px #0000001a}.btn-upgrade:hover{transform:translateY(-2px);box-shadow:0 6px 12px #00000026}.login-container,.register-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2)}.login-card,.register-card{background:#fff;border-radius:12px;padding:40px;width:100%;max-width:400px;box-shadow:0 10px 40px #0003}.login-logo-wrapper{display:flex;justify-content:center;margin-bottom:16px}@media (max-width: 600px){.login-logo-wrapper{flex-direction:column!important;align-items:center!important}}.login-card h1,.register-card h1{font-size:28px;margin-bottom:8px;color:#333;text-align:center}.login-card .subtitle,.register-card .subtitle{text-align:center;color:#999;margin-bottom:32px;font-size:14px}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{padding-right:45px;width:100%}.password-toggle{position:absolute;right:12px;background:none;border:none;cursor:pointer;font-size:20px;padding:4px;display:flex;align-items:center;justify-content:center;opacity:.6;transition:opacity .2s;-webkit-user-select:none;user-select:none}.password-toggle:hover{opacity:1}.password-toggle:focus{outline:none;opacity:1}.login-card form,.register-card form{margin-bottom:20px}.login-card .form-group,.register-card .form-group{margin-bottom:16px}.login-card label,.register-card label{font-weight:600;color:#333}.form-footer{text-align:center;font-size:14px;color:#666}.form-footer a{color:#007aff;text-decoration:none;font-weight:500}.form-footer a:hover{text-decoration:underline}.submit-button{width:100%;max-width:200px;display:block;margin:0 auto;background:#007aff;color:#fff;padding:12px 24px;font-size:16px;font-weight:600}.submit-button:hover:not(:disabled){background:#0051d5}.submit-button:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 600px){.login-card,.register-card{padding:24px 20px}.login-card h1,.register-card h1{font-size:24px}}.register-logo-wrapper{display:flex;justify-content:center;margin-bottom:16px}.success-message{background-color:#d4edda;border:1px solid #c3e6cb;border-radius:4px;color:#155724;padding:15px;margin-bottom:15px}.legal-acceptance-section{margin-top:20px;padding-top:16px;border-top:1px solid #e5e7eb}.legal-checkboxes{display:flex;flex-direction:column;gap:14px;font-size:14px;width:100%;padding-right:8px}.legal-checkbox-label{display:flex;align-items:flex-start;cursor:pointer;width:100%;max-width:100%}.legal-checkbox-label input[type=checkbox]{margin-right:10px;margin-top:2px;cursor:pointer;flex-shrink:0;min-width:20px;width:20px;height:20px}.legal-checkbox-label span{line-height:1.5;flex:1;word-break:break-word;overflow-wrap:break-word;max-width:calc(100% - 30px)}.legal-link{color:#2563eb;text-decoration:underline;background:none;border:none;padding:0;cursor:pointer;font:inherit}.legal-link:hover{color:#1d4ed8}@media (min-width: 768px){.legal-checkboxes{flex-direction:row;flex-wrap:wrap;gap:16px}.legal-checkbox-label{align-items:center}.legal-checkbox-label span{white-space:nowrap}}.error-message{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24;padding:12px;border-radius:8px;margin-bottom:20px;font-size:14px}.btn-primary{width:100%;padding:12px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.setup-2fa-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.setup-2fa-card{background:#fff;border-radius:12px;padding:40px;box-shadow:0 4px 20px #0000001a;max-width:600px;width:100%}.setup-2fa-card h1{margin:0 0 8px;font-size:24px;text-align:center;color:#333}.subtitle{text-align:center;color:#666;margin:0 0 32px}.qr-code-section{display:flex;flex-direction:column;align-items:center;margin-bottom:32px}.qr-code{background:#fff;padding:20px;border-radius:12px;border:2px solid #e0e0e0;margin-bottom:16px}.qr-code svg{display:block;max-width:100%;height:auto}.qr-instructions{text-align:center;color:#666;font-size:14px;line-height:1.6}.backup-codes-section{margin-bottom:32px}.backup-codes-display{margin-top:20px;padding:20px;background:#f9f9f9;border-radius:8px;border:1px solid #e0e0e0}.warning-box{background:#fff3cd;border:1px solid #ffc107;border-radius:6px;padding:12px;margin-bottom:20px;color:#856404;font-size:14px}.codes-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px}.backup-code{background:#fff;border:1px solid #ddd;border-radius:6px;padding:12px;text-align:center;font-family:Courier New,monospace;font-size:16px;font-weight:600;color:#333}.btn-download{width:100%;background:#4caf50;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s}.btn-download:hover{background:#45a049;transform:translateY(-2px);box-shadow:0 4px 12px #4caf504d}.actions{display:flex;justify-content:center}.actions .btn-primary{padding:14px 40px;font-size:16px}.actions .btn-primary:disabled{background:#ccc;cursor:not-allowed;transform:none}.warning-text{text-align:center;color:#f44336;font-size:14px;margin-top:16px;font-weight:500}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;padding:32px;max-width:500px;width:90%;box-shadow:0 8px 32px #0003}.modal-content h3{margin:0 0 16px;font-size:20px;color:#333}.modal-content p{margin:0 0 16px;color:#666;line-height:1.5}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.modal-actions .btn-secondary{background:#6c757d;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;cursor:pointer;transition:background .2s}.modal-actions .btn-secondary:hover{background:#5a6268}.modal-actions .btn-primary{background:#4c51bf;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;cursor:pointer;transition:background .2s}.modal-actions .btn-primary:hover{background:#434190}@media (max-width: 768px){.setup-2fa-card{padding:24px}.codes-grid{grid-template-columns:1fr}.backup-code{font-size:14px}}.app-download-links{margin-top:20px;text-align:center}.download-label{font-size:14px;color:#666;margin-bottom:12px}.download-buttons{display:flex;gap:12px;justify-content:center}.download-link{display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;background:#007aff;color:#fff;text-decoration:none;border-radius:8px;font-weight:500;font-size:14px;transition:all .2s ease;width:130px}.download-link:hover{background:#0051d5;transform:translateY(-2px);box-shadow:0 4px 12px #007aff4d}@media (max-width: 768px){.download-buttons{flex-direction:column}.download-link{width:100%}}.manual-entry-section{margin-bottom:32px;text-align:center}.btn-link{background:none;border:none;color:#007aff;cursor:pointer;font-size:14px;padding:8px;text-decoration:none;transition:opacity .2s ease}.btn-link:hover{opacity:.7;text-decoration:underline}.manual-entry-display{margin-top:16px;padding:20px;background:#f9f9f9;border-radius:8px;border:1px solid #e0e0e0;text-align:left}.manual-instructions{color:#666;font-size:14px;line-height:1.6;margin-bottom:16px}.secret-key-container{display:flex;align-items:center;gap:8px;margin-bottom:16px;background:#fff;padding:12px;border-radius:6px;border:1px solid #ddd}.secret-key{flex:1;font-family:Courier New,monospace;font-size:14px;font-weight:600;color:#333;word-break:break-all}.btn-copy{background:#007aff;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-copy:hover{background:#0051d5}.manual-note{color:#666;font-size:13px;line-height:1.6;margin:0}.manual-note strong{color:#333}.legal-container{max-width:900px;margin:0 auto;padding:20px;background-color:#f9f9f9;min-height:100vh}.legal-header{background-color:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px}.legal-header h1{margin:10px 0 0;color:#333;font-size:28px}.btn-back{background:none;border:none;color:#4a90e2;cursor:pointer;font-size:16px;padding:5px 10px;margin-bottom:10px}.btn-back:hover{text-decoration:underline}.legal-content{background-color:#fff;padding:40px;border-radius:8px;box-shadow:0 2px 4px #0000001a;line-height:1.8;color:#333}.legal-content .last-updated{color:#666;font-size:14px;margin-bottom:10px}.legal-content .disclaimer{color:#d9534f;font-size:14px;margin-bottom:20px}.legal-content hr{border:none;border-top:2px solid #e0e0e0;margin:30px 0}.legal-content section{margin-bottom:30px}.legal-content h2{color:#2c3e50;font-size:20px;margin-top:30px;margin-bottom:15px;font-weight:600}.legal-content h3{color:#34495e;font-size:18px;margin-top:20px;margin-bottom:10px;font-weight:600}.legal-content p{margin-bottom:15px;text-align:justify}.legal-content ul{margin-left:30px;margin-bottom:15px}.legal-content ul li{margin-bottom:8px}.legal-content .acceptance-notice{background-color:#fff3cd;border:2px solid #ffc107;padding:20px;border-radius:5px;text-align:center;margin-top:30px;font-size:14px}.legal-content table{width:100%;border-collapse:collapse;margin:20px 0}.legal-content table th,.legal-content table td{border:1px solid #ddd;padding:12px;text-align:left}.legal-content table th{background-color:#f2f2f2;font-weight:600}@media (max-width: 768px){.legal-container{padding:10px}.legal-content{padding:20px}.legal-header h1{font-size:24px}.legal-content h2{font-size:18px}.legal-content p{text-align:left}}.upgrade-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2)}.upgrade-card{background:#fff;border-radius:12px;padding:40px;width:100%;max-width:900px;box-shadow:0 10px 40px #0003}.upgrade-card .logo-container{justify-content:center;margin-bottom:24px}.upgrade-header{text-align:center;margin-bottom:32px}.upgrade-header h1{font-size:32px;margin:0 0 8px;color:#333}.upgrade-header .subtitle{color:#666;font-size:16px;margin:0}.upgrade-content{margin-top:32px}.tier-comparison{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:32px}.tier-box{border:2px solid #e0e0e0;border-radius:12px;padding:24px;position:relative}.tier-box.premium-tier{border-color:#667eea;background:linear-gradient(135deg,#667eea0d,#764ba20d)}.tier-badge{position:absolute;top:-12px;left:20px;background:#999;color:#fff;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.tier-badge.premium{background:linear-gradient(135deg,#667eea,#764ba2)}.tier-box h3{margin:8px 0 12px;font-size:24px;color:#333}.tier-price{font-size:32px;font-weight:700;color:#667eea;margin-bottom:4px}.tier-price-note{font-size:14px;color:#999;margin-bottom:12px}.tier-limit{font-size:18px;font-weight:600;color:#667eea;margin-bottom:16px}.tier-features{list-style:none;padding:0;margin:0}.tier-features li{padding:8px 0;color:#666;font-size:14px}.upgrade-instructions{background:#f9f9f9;border-radius:8px;padding:24px;margin-bottom:24px}.upgrade-instructions h3{margin-top:0;color:#333}.upgrade-instructions p{color:#666;margin-bottom:16px}.upgrade-instructions ol{padding-left:24px;color:#666}.upgrade-instructions ol li{margin-bottom:8px}.upgrade-instructions a{color:#667eea;text-decoration:none;font-weight:600}.upgrade-instructions a:hover{text-decoration:underline}.upgrade-actions{display:flex;flex-direction:column;gap:12px;align-items:center}.upgrade-actions .btn-primary,.upgrade-actions .btn-secondary,.upgrade-actions .btn-link{width:100%;max-width:400px}@media (max-width: 768px){.upgrade-card{padding:24px}.tier-comparison{grid-template-columns:1fr}.upgrade-header h1{font-size:24px}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#84868980}#root{min-height:100vh;width:100%;background:transparent}
