body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--success:#4caf50;--warning:#ff9800;--error:#f44336}.auth-container,body{background:linear-gradient(135deg,#1a5c5a,#2a7c78);background:linear-gradient(135deg,var(--primary-teal) 0,var(--secondary-teal) 100%);min-height:100vh}.auth-container{align-items:center;display:flex;justify-content:center;padding:20px}.auth-wrapper{grid-gap:0;background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;display:grid;gap:0;grid-template-columns:1fr 1fr;max-width:1000px;overflow:hidden;width:100%}.auth-wrapper-wide{grid-template-columns:.8fr 1.2fr;max-width:1150px}.form-grid{grid-gap:0 20px;display:grid;gap:0 20px;grid-template-columns:1fr 1fr}.form-grid .btn-submit,.form-grid .error-message{grid-column:1/-1}.auth-left{background:linear-gradient(135deg,#1a5c5a,#2a7c78);background:linear-gradient(135deg,var(--primary-teal) 0,var(--secondary-teal) 100%);color:#fff;flex-direction:column;padding:60px 50px}.auth-left,.auth-logo{display:flex;justify-content:center}.auth-logo{margin-bottom:30px}.auth-logo img{background:#fff;border-radius:30px;box-shadow:0 10px 30px #0003;height:180px;object-fit:contain;padding:25px;width:180px}.auth-left h1{font-size:32px;font-weight:700;margin-bottom:5px;text-align:center}.auth-left p{font-size:18px;font-weight:300;margin-bottom:50px;opacity:.9;text-align:center}.auth-features{display:flex;flex-direction:column;gap:20px}.feature-item{align-items:center;display:flex;font-size:14px;gap:15px;opacity:.95}.feature-icon{font-size:24px;min-width:30px}.auth-right,.feature-icon{display:flex;justify-content:center}.auth-right{flex-direction:column;padding:60px 50px}.auth-form-wrapper h2{color:#1a1a1a;color:var(--dark-gray);font-size:28px;font-weight:700;margin-bottom:10px}.auth-subtitle{color:#666;font-size:14px;margin-bottom:30px}.error-message{background-color:#ffebee;border-left:4px solid #f44336;border-left:4px solid var(--error);color:#f44336;color:var(--error)}.error-message,.success-message{border-radius:8px;font-size:14px;margin-bottom:20px;padding:12px 15px}.success-message{background-color:#e8f5e9;border-left:4px solid #4caf50;border-left:4px solid var(--success);color:#1b5e20}.form-group{margin-bottom:20px}.form-group label{color:#1a1a1a;color:var(--dark-gray);display:block;font-size:13px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.password-input-wrapper{align-items:center;display:flex;position:relative}.password-input-wrapper input{border:2px solid #e0e0e0;border:2px solid var(--border-color);border-radius:8px;font-family:inherit;font-size:14px;padding:12px 45px 12px 15px;transition:all .3s ease;width:100%}.password-input-wrapper input:focus{border-color:#1a5c5a;border-color:var(--primary-teal);box-shadow:0 0 0 3px #1a5c5a1a;outline:none}.password-input-wrapper input:disabled{background-color:#f8f9fa;background-color:var(--light-gray);cursor:not-allowed}.password-toggle{align-items:center;background:none;border:none;cursor:pointer;display:flex;font-size:18px;justify-content:center;padding:5px 8px;position:absolute;right:12px;transition:opacity .3s ease}.password-toggle:hover:not(:disabled){opacity:.7}.password-toggle:disabled{cursor:not-allowed;opacity:.5}.form-group input,.form-group select{border:2px solid #e0e0e0;border:2px solid var(--border-color);border-radius:8px;font-family:inherit;font-size:14px;padding:12px 15px;transition:all .3s ease;width:100%}.form-group input:focus,.form-group select:focus{border-color:#1a5c5a;border-color:var(--primary-teal);box-shadow:0 0 0 3px #1a5c5a1a;outline:none}.form-group input:disabled,.form-group select:disabled{background-color:#f8f9fa;background-color:var(--light-gray);cursor:not-allowed}.btn-submit{background:linear-gradient(135deg,#f44,#f66);background:linear-gradient(135deg,var(--primary-red) 0,#f66 100%);border:none;border-radius:8px;box-shadow:0 4px 15px #ff44444d;color:#fff;cursor:pointer;font-size:15px;font-weight:600;letter-spacing:.5px;margin-top:10px;padding:13px 20px;text-transform:uppercase;transition:all .3s ease;width:100%}.btn-submit:hover:not(:disabled){box-shadow:0 6px 20px #f446;transform:translateY(-2px)}.btn-submit:active:not(:disabled){transform:translateY(0)}.btn-submit:disabled{cursor:not-allowed;opacity:.6}.auth-links{color:#666;font-size:14px;margin-top:20px;text-align:center}.auth-links a{color:#f44;color:var(--primary-red);font-weight:600;text-decoration:none;transition:color .3s ease}.auth-links a:hover{color:#1a5c5a;color:var(--primary-teal)}.demo-info{background-color:#e8f5e9;border-left:4px solid #4caf50;border-left:4px solid var(--success);border-radius:8px;color:#1b5e20;font-size:13px;margin-top:20px;padding:15px}.demo-info p{margin:5px 0}.demo-info .info-title{font-weight:600;margin-bottom:8px}@media (max-width:768px){.auth-wrapper,.auth-wrapper-wide,.form-grid{grid-template-columns:1fr}.auth-left,.auth-right{padding:40px 30px}.auth-left h1{font-size:24px}.auth-logo img{height:140px;width:140px}.form-group{margin-bottom:15px}}@media (max-width:480px){.auth-container{padding:10px}.auth-left,.auth-right{padding:30px 20px}.auth-left h1{font-size:20px}.auth-left p{font-size:16px;margin-bottom:30px}.auth-form-wrapper h2{font-size:22px}.auth-features{gap:12px}.feature-item{font-size:12px;gap:10px}}:root{--primary-red:#f44;--primary-teal:#1a5c5a;--secondary-teal:#2a7c78;--light-gray:#f8f9fa;--medium-gray:#eceff1;--dark-gray:#1a1a1a;--text-color:#333;--border-color:#e0e0e0;--shadow:0 2px 8px #0000001a;--shadow-lg:0 10px 30px #00000026}body{color:#333;color:var(--text-color)}.dashboard,body{background-color:#f8f9fa;background-color:var(--light-gray)}.dashboard{display:flex;min-height:100vh}.sidebar{background:linear-gradient(135deg,#1a5c5a,#2a7c78);background:linear-gradient(135deg,var(--primary-teal) 0,var(--secondary-teal) 100%);box-shadow:4px 0 20px #0000001a;color:#fff;height:100vh;left:0;overflow-y:auto;padding:30px 20px;position:fixed;top:0;transition:all .3s ease;width:280px;z-index:100}.sidebar.closed{width:100px}.sidebar-backdrop{display:none}.sidebar-header{align-items:center;border-bottom:1px solid #fff3;display:flex;gap:15px;margin-bottom:40px;padding-bottom:20px}.sidebar-logo{background:#ffffff1a;border-radius:8px;height:50px;object-fit:contain;padding:5px;width:50px}.sidebar-header h2{font-size:22px;font-weight:700;white-space:nowrap}.sidebar-nav{display:flex;flex-direction:column;gap:10px}.nav-item{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:15px;padding:12px 15px;transition:all .3s ease;white-space:nowrap}.nav-item:hover{background:#fff3;border-color:#ffffff4d}.nav-item.active{background:#f44;background:var(--primary-red);border-color:#f44;border-color:var(--primary-red);font-weight:600}.nav-icon{font-size:18px;min-width:20px}.nav-menu-group{display:flex;flex-direction:column}.nav-parent{align-items:center;display:flex;justify-content:space-between}.menu-arrow{font-size:12px;margin-left:auto;transition:transform .3s ease}.nav-parent.expanded .menu-arrow{transform:rotate(180deg)}.submenu{border-left:2px solid #fff3;display:flex;flex-direction:column;gap:5px;margin-left:20px;padding:8px 0 8px 10px}.submenu-item{align-items:center;background:#ffffff0d;border:1px solid #ffffff26;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:12px;padding:10px 12px;transition:all .3s ease;white-space:nowrap}.submenu-item:hover{background:#ffffff26;border-color:#ffffff40}.submenu-item.active{background:#f44;background:var(--primary-red);border-color:#f44;border-color:var(--primary-red);font-weight:600}.submenu-icon{font-size:16px;min-width:18px}.sidebar-toggle{background:#fff3;border:1px solid #ffffff4d;border-radius:8px;bottom:30px;color:#fff;cursor:pointer;font-size:16px;height:40px;left:50%;position:absolute;transform:translateX(-50%);transition:all .3s ease;width:40px}.sidebar-toggle:hover{background:#ffffff4d}.main-content{display:flex;flex:1 1;flex-direction:column;margin-left:280px;transition:margin-left .3s ease}.dashboard.sidebar.closed~.main-content{margin-left:100px}.dashboard-header{align-items:center;background:#fff;box-shadow:0 2px 8px #0000001a;box-shadow:var(--shadow);display:flex;gap:20px;padding:20px 30px;position:-webkit-sticky;position:sticky;top:0;z-index:50}.dashboard-header h1{flex:1 1;font-weight:700}.dashboard-header h1,.menu-toggle{color:#1a1a1a;color:var(--dark-gray);font-size:24px}.menu-toggle{background:none;border:none;cursor:pointer;display:none}.header-right{align-items:center;display:flex;gap:15px}.user-name{color:#333;color:var(--text-color);font-weight:500}.btn-logout{background:#f44;background:var(--primary-red);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .3s ease}.btn-logout:hover{background:#f33;transform:translateY(-2px)}.content{flex:1 1;overflow-y:auto;padding:30px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.section-header h2{color:#1a1a1a;color:var(--dark-gray);font-size:26px;font-weight:700}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.stat-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;box-shadow:var(--shadow);display:flex;gap:20px;padding:25px;transition:all .3s ease}.stat-card:hover{box-shadow:0 10px 30px #00000026;box-shadow:var(--shadow-lg);transform:translateY(-5px)}.stat-icon{align-items:center;border-radius:12px;color:#fff;display:flex;font-size:28px;height:60px;justify-content:center;width:60px}.stat-content{flex:1 1}.stat-label{color:#999;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:5px;text-transform:uppercase}.stat-value{color:#1a1a1a;color:var(--dark-gray);font-size:28px;font-weight:700}.dashboard-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-bottom:30px}.card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;box-shadow:var(--shadow);padding:25px;transition:all .3s ease}.card:hover{box-shadow:0 10px 30px #00000026;box-shadow:var(--shadow-lg)}.card h3{font-size:18px;font-weight:700;margin-bottom:20px}.card h3,.card h4{color:#1a1a1a;color:var(--dark-gray)}.card h4{font-size:16px;font-weight:600;margin-bottom:8px}.vessel-list{display:flex;flex-direction:column;gap:12px}.vessel-item{align-items:center;background:#f8f9fa;background:var(--light-gray);border-radius:8px;display:flex;justify-content:space-between;padding:15px;transition:all .3s ease}.vessel-item:hover{background:#eceff1;background:var(--medium-gray)}.vessel-info{flex:1 1}.vessel-name{color:#1a1a1a;color:var(--dark-gray);font-weight:600;margin-bottom:3px}.vessel-location{color:#999;font-size:12px}.status-badge{border-radius:20px;font-size:12px;font-weight:600;padding:5px 12px;text-transform:capitalize;white-space:nowrap}.status-badge.active{background:#e8f5e9;color:#2e7d32}.status-badge.in-port{background:#fff3e0;color:#e65100}.status-badge.maintenance{background:#f3e5f5;color:#6a1b9a}.alerts-list{display:flex;flex-direction:column;gap:12px}.alert-item{border-left:4px solid;border-radius:8px;display:flex;gap:12px;padding:15px}.alert-item.warning{background:#fffbea;border-left-color:var(--warning)}.alert-item.info{background:#e3f2fd;border-left-color:#2196f3}.alert-icon{font-size:16px;min-width:20px}.alert-content{flex:1 1}.alert-message{color:#333;color:var(--text-color);font-size:13px;font-weight:500;margin-bottom:3px}.alert-time{color:#999;font-size:11px}.vessels-table{border-collapse:collapse;width:100%}.vessels-table thead{background:#f8f9fa;background:var(--light-gray);border-bottom:2px solid #e0e0e0;border-bottom:2px solid var(--border-color)}.vessels-table th{color:#333;color:var(--text-color);font-size:13px;font-weight:600;letter-spacing:.5px;padding:15px;text-align:left;text-transform:uppercase}.vessels-table td{border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color);font-size:14px;padding:15px}.vessels-table tbody tr:hover{background:#f8f9fa;background:var(--light-gray)}.btn-danger,.btn-primary,.btn-secondary,.btn-small{border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:600;letter-spacing:.5px;padding:10px 16px;text-transform:uppercase;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#f44,#f66);background:linear-gradient(135deg,var(--primary-red) 0,#f66 100%);box-shadow:0 4px 15px #ff44444d;color:#fff}.btn-primary:hover{box-shadow:0 6px 20px #f446;transform:translateY(-2px)}.btn-secondary{background:#eceff1;background:var(--medium-gray);color:#333;color:var(--text-color)}.btn-secondary:hover{background:#e0e0e0;background:var(--border-color)}.btn-small{background:#1a5c5a;background:var(--primary-teal);color:#fff;font-size:12px;margin-right:5px;padding:6px 12px}.btn-small:hover{background:#2a7c78;background:var(--secondary-teal)}.btn-small-primary{background:linear-gradient(135deg,#f44,#f66);background:linear-gradient(135deg,var(--primary-red) 0,#f66 100%)}.btn-small-primary:hover{background:linear-gradient(135deg,#f33,#f55)}.btn-small:disabled{cursor:not-allowed;opacity:.6}.btn-danger{background:#f44336;color:#fff}.btn-danger:hover{background:#d32f2f}.toast{align-items:center;animation:toastSlideIn .3s ease;border-radius:8px;box-shadow:0 10px 30px #00000040;color:#fff;display:flex;font-size:14px;font-weight:500;gap:10px;max-width:360px;padding:14px 20px;position:fixed;right:24px;top:24px;z-index:2000}.toast-error{background:linear-gradient(135deg,#f44,#f66);background:linear-gradient(135deg,var(--primary-red) 0,#f66 100%)}.toast-success{background:linear-gradient(135deg,#1a5c5a,#2a7c78);background:linear-gradient(135deg,var(--primary-teal) 0,var(--secondary-teal) 100%)}.toast-icon{font-size:18px}@keyframes toastSlideIn{0%{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal{animation:modalSlideIn .3s ease;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:860px;overflow-y:auto;width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.modal-header{align-items:center;border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:20px 25px}.modal-header h3{color:#1a1a1a;color:var(--dark-gray);font-size:20px;margin:0}.modal-title{display:flex;flex-direction:column;gap:4px}.step-indicator{color:#1a5c5a;color:var(--primary-teal);font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.premium-step{padding:25px}.premium-breakdown{border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:10px;margin-bottom:22px;overflow:hidden}.breakdown-row{align-items:center;border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color);display:flex;font-size:14px;justify-content:space-between;padding:15px 20px}.breakdown-row:last-child{border-bottom:none}.breakdown-row span:first-child{color:#333;color:var(--text-color)}.breakdown-row span:last-child{color:#1a1a1a;color:var(--dark-gray);font-weight:600}.breakdown-row.total{background:#1a5c5a14}.breakdown-row.total span{font-size:15px}.breakdown-row.total span,.details-section-title{color:#1a5c5a;color:var(--primary-teal);font-weight:700}.details-section-title{border-bottom:2px solid #f8f9fa;border-bottom:2px solid var(--light-gray);font-size:12px;letter-spacing:.5px;margin:6px 0 10px;padding-bottom:5px;text-transform:uppercase}.details-grid{grid-gap:12px 20px;display:grid;gap:12px 20px;grid-template-columns:1fr 1fr;margin-bottom:20px}.details-grid>div{display:flex;flex-direction:column;gap:2px}.details-grid span{color:#999;font-size:11px;letter-spacing:.5px;text-transform:uppercase}.details-grid strong{color:#1a1a1a;color:var(--dark-gray);font-size:14px;font-weight:600}.success-state{padding:10px 0 20px;text-align:center}.success-badge{align-items:center;background:linear-gradient(135deg,#1a5c5a,#2a7c78);background:linear-gradient(135deg,var(--primary-teal) 0,var(--secondary-teal) 100%);border-radius:50%;box-shadow:0 8px 20px #1a5c5a4d;color:#fff;display:flex;font-size:30px;height:60px;justify-content:center;margin:0 auto 16px;width:60px}.success-state h3{color:#1a1a1a;color:var(--dark-gray);font-size:20px;margin:0 0 6px}.success-state p{color:#666;font-size:14px;margin:4px 0}.success-ref{color:#1a5c5a!important;color:var(--primary-teal)!important;font-size:13px!important}.step4-options{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:22px}.option-card{align-items:center;background:#f8f9fa;background:var(--light-gray);border:2px solid #e0e0e0;border:2px solid var(--border-color);border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:6px;padding:24px 16px;transition:all .3s ease}.option-card:hover:not(:disabled){background:#1a5c5a0d;border-color:#1a5c5a;border-color:var(--primary-teal);box-shadow:0 8px 20px #1a5c5a1f;transform:translateY(-3px)}.option-card:disabled{cursor:not-allowed;opacity:.6}.option-icon{font-size:30px}.option-title{color:#1a1a1a;color:var(--dark-gray);font-size:15px;font-weight:700}.option-sub{color:#888;font-size:12px}.profile-section .card{margin-bottom:20px}.profile-card-header{align-items:center;border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.profile-card-header h3{color:#1a1a1a;color:var(--dark-gray);font-size:18px;margin:0}.profile-edit-actions{display:flex;gap:10px}.profile-form-grid{grid-gap:0 20px;display:grid;gap:0 20px;grid-template-columns:1fr 1fr}.profile-form-grid .form-group{margin-bottom:18px}.profile-form-grid .form-group label{color:#1a1a1a;color:var(--dark-gray);display:block;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.profile-form-grid .form-group input{border:2px solid #e0e0e0;border:2px solid var(--border-color);border-radius:8px;font-family:inherit;font-size:14px;padding:11px 14px;width:100%}.profile-form-grid .form-group input:focus{border-color:#1a5c5a;border-color:var(--primary-teal);box-shadow:0 0 0 3px #1a5c5a1a;outline:none}.welcome-banner{background:linear-gradient(135deg,#1a5c5a,#2a7c78);background:linear-gradient(135deg,var(--primary-teal) 0,var(--secondary-teal) 100%);border-radius:16px;box-shadow:0 10px 30px #00000026;box-shadow:var(--shadow-lg);color:#fff;gap:20px;justify-content:space-between;margin-bottom:24px;padding:28px 32px}.welcome-banner,.welcome-top{align-items:center;display:flex}.welcome-top{flex-wrap:wrap;gap:14px}.welcome-text h2{color:#fff;font-size:26px;font-weight:700;margin:0}.agency-badge{border-radius:20px;font-size:12px;font-weight:700;letter-spacing:.5px;padding:5px 14px;text-transform:uppercase}.agency-badge.approved{background:#fffffff2;color:#1b7d3f}.agency-badge.unapproved{background:#00000040;color:#ffd6d6}.welcome-date{font-size:14px;margin:12px 0 4px;opacity:.9}.welcome-phrase{font-size:18px;font-style:italic;font-weight:300;margin:0}.welcome-logo{background:#fff;border-radius:16px;flex-shrink:0;height:84px;object-fit:contain;padding:10px;width:84px}.overview-controls{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:16px}.overview-controls h3{color:#1a1a1a;color:var(--dark-gray);font-size:18px;margin:0}.control-group{display:flex;gap:10px}.chart-header select,.control-group select{background:#fff;border:2px solid #e0e0e0;border:2px solid var(--border-color);border-radius:8px;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;padding:9px 14px}.chart-header select:focus,.control-group select:focus{border-color:#1a5c5a;border-color:var(--primary-teal);outline:none}.overview-analytics{grid-template-columns:2fr 1fr}.chart-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.chart-header h3{margin:0}.bar-chart{align-items:flex-end;height:220px;justify-content:space-between;padding-top:10px}.bar-chart,.bar-col{display:flex;gap:8px}.bar-col{align-items:center;flex:1 1;flex-direction:column;height:100%}.bar-track{align-items:flex-end;display:flex;flex:1 1;justify-content:center;width:100%}.bar-fill{background:linear-gradient(180deg,#2a7c78,#1a5c5a);background:linear-gradient(180deg,var(--secondary-teal) 0,var(--primary-teal) 100%);border-radius:6px 6px 0 0;cursor:pointer;min-height:2px;transition:height .4s ease;width:70%}.bar-fill:hover{background:linear-gradient(180deg,#f66,#f44);background:linear-gradient(180deg,#f66 0,var(--primary-red) 100%)}.bar-label{color:#999;font-size:11px;font-weight:600}.chart-caption{color:#999;font-size:12px;margin-top:12px;text-align:center}.donut-wrap{align-items:center;display:flex;flex-direction:column;gap:20px}.donut{height:150px;width:150px}.donut,.donut-hole{align-items:center;border-radius:50%;display:flex;justify-content:center}.donut-hole{background:#fff;flex-direction:column;height:96px;width:96px}.donut-total{color:#1a1a1a;color:var(--dark-gray);font-size:26px;font-weight:700}.donut-sub{color:#999;font-size:11px;text-transform:uppercase}.donut-legend{display:flex;flex-direction:column;gap:10px;width:100%}.donut-legend>div{align-items:center;color:#333;color:var(--text-color);display:flex;font-size:13px;gap:8px}.donut-legend strong{color:#1a1a1a;color:var(--dark-gray);margin-left:auto}.dot{border-radius:3px;height:12px;width:12px}.dot.teal{background:#1a5c5a;background:var(--primary-teal)}.dot.red{background:#f44;background:var(--primary-red)}.ytd-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:24px}.ytd-tile{background:#fff;border-left:4px solid #1a5c5a;border-left:4px solid var(--primary-teal);border-radius:12px;box-shadow:0 2px 8px #0000001a;box-shadow:var(--shadow);padding:22px}.ytd-label{color:#999;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.ytd-value{color:#1a1a1a;color:var(--dark-gray);font-size:22px;font-weight:700}.settings-grid{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:20px}.settings-card{display:flex;flex-direction:column}.settings-card h3{color:#1a1a1a;color:var(--dark-gray);font-size:16px;font-weight:700;margin-bottom:6px;padding-bottom:14px}.settings-card h3,.settings-row{border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color)}.settings-row{align-items:center;display:flex;gap:20px;justify-content:space-between;padding:14px 0}.settings-row:last-child{border-bottom:none}.settings-logout{align-self:flex-start;margin-top:16px}.settings-row-sub a{color:#1a5c5a;color:var(--primary-teal);font-weight:600;text-decoration:none;word-break:break-all}.settings-row-sub a:hover{text-decoration:underline}.settings-about-card{padding:30px 25px;text-align:center}.about-logo{height:56px;margin-bottom:12px;object-fit:contain;opacity:.9;width:56px}.settings-about-card p{color:#999;font-size:13px;margin:4px 0}.settings-row-title{color:#1a1a1a;color:var(--dark-gray);font-size:14px;font-weight:600;margin:0}.settings-row-sub{color:#999;font-size:12px;margin:3px 0 0}.theme-toggle{background:#f8f9fa;background:var(--light-gray);border-radius:8px;display:flex;gap:8px;padding:4px}.theme-option{background:#0000;border:none;border-radius:6px;color:#333;color:var(--text-color);cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s ease}.theme-option.active{background:#1a5c5a;background:var(--primary-teal);color:#fff}.switch{display:inline-block;flex-shrink:0;height:26px;position:relative;width:46px}.switch input{height:0;opacity:0;width:0}.slider{background:#ccc;border-radius:26px;cursor:pointer;inset:0}.slider,.slider:before{position:absolute;transition:.3s}.slider:before{background:#fff;border-radius:50%;bottom:3px;content:"";height:20px;left:3px;width:20px}.switch input:checked+.slider{background:#1a5c5a;background:var(--primary-teal)}.switch input:checked+.slider:before{transform:translateX(20px)}.settings-about-card .about-version{color:#1a5c5a!important;color:var(--primary-teal)!important;font-size:14px!important;font-weight:700;margin-top:4px}.settings-about-card a{color:#f44;color:var(--primary-red);font-weight:600;text-decoration:none}.settings-about-card a:hover{text-decoration:underline}.report-table-wrap{overflow-x:auto}.report-table-wrap .policies-table{min-width:720px}.report-table-wrap tfoot th{background:#f0f4f4;border-top:2px solid #e0e0e0;border-top:2px solid var(--border-color);color:#1a5c5a;color:var(--primary-teal);font-size:13px;padding:14px 15px;text-align:left}.folder-grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.folder-card{align-items:flex-start;background:#f8f9fa;background:var(--light-gray);border:2px solid #e0e0e0;border:2px solid var(--border-color);border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:20px;text-align:left;transition:all .3s ease}.folder-card:hover{background:#1a5c5a0d;border-color:#1a5c5a;border-color:var(--primary-teal);box-shadow:0 8px 20px #1a5c5a1f;transform:translateY(-3px)}.folder-icon{font-size:34px}.folder-name{color:#1a1a1a;color:var(--dark-gray);font-size:15px;font-weight:700}.folder-client{color:#1a5c5a;color:var(--primary-teal);font-size:13px;font-weight:600}.folder-count{color:#999;font-size:12px}.folder-breadcrumb{align-items:center;border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color);display:flex;gap:14px;margin-bottom:18px;padding-bottom:14px}.breadcrumb-current{color:#1a1a1a;color:var(--dark-gray);font-weight:700}.doc-file-list{display:flex;flex-direction:column;gap:10px}.doc-file-item{align-items:center;background:#f8f9fa;background:var(--light-gray);border-radius:8px;display:flex;gap:12px;justify-content:space-between;padding:14px 16px}.doc-file-name{color:#1a1a1a;color:var(--dark-gray);font-size:14px;word-break:break-all}.doc-file-actions{display:flex;flex-shrink:0;gap:8px}.attachments{border-top:1px solid #e0e0e0;border-top:1px solid var(--border-color);margin:18px 0;padding-top:16px}.attachments-label{color:#1a1a1a;color:var(--dark-gray);display:block;font-size:13px;font-weight:600;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.file-input{display:none}.file-input-btn{background:#f8f9fa;background:var(--light-gray);border:2px dashed #e0e0e0;border:2px dashed var(--border-color);border-radius:8px;color:#1a5c5a;color:var(--primary-teal);cursor:pointer;display:inline-block;font-size:13px;font-weight:600;padding:10px 18px;transition:all .3s ease}.file-input-btn:hover{background:#1a5c5a0d;border-color:#1a5c5a;border-color:var(--primary-teal)}.file-list{display:flex;flex-direction:column;gap:8px;list-style:none;margin:14px 0 0;padding:0}.file-list li{align-items:center;background:#f8f9fa;background:var(--light-gray);border-radius:8px;display:flex;font-size:13px;justify-content:space-between;padding:10px 14px}.file-name{color:#1a1a1a;color:var(--dark-gray);word-break:break-all}.file-remove{background:none;border:none;color:#999;cursor:pointer;flex-shrink:0;font-size:20px;line-height:1;margin-left:10px}.file-remove:hover{color:#f44;color:var(--primary-red)}.client-search{margin-bottom:18px}.client-search>label{color:#1a1a1a;color:var(--dark-gray);display:block;font-size:13px;font-weight:600;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.client-search-input{position:relative}.client-search-input>input{border:2px solid #e0e0e0;border:2px solid var(--border-color);border-radius:8px;font-family:inherit;font-size:14px;padding:12px 40px 12px 15px;width:100%}.client-search-input>input:focus{border-color:#1a5c5a;border-color:var(--primary-teal);box-shadow:0 0 0 3px #1a5c5a1a;outline:none}.client-clear{background:none;border:none;color:#999;cursor:pointer;font-size:22px;line-height:1;position:absolute;right:10px;top:50%;transform:translateY(-50%)}.client-clear:hover{color:#f44;color:var(--primary-red)}.client-suggestions{background:#fff;border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:8px;box-shadow:0 10px 30px #0000001f;left:0;max-height:240px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 4px);z-index:10}.client-suggestion{align-items:center;background:none;border:none;border-bottom:1px solid #f8f9fa;border-bottom:1px solid var(--light-gray);cursor:pointer;display:flex;font-size:14px;gap:12px;justify-content:space-between;padding:12px 15px;text-align:left;transition:background .2s ease;width:100%}.client-suggestion:last-child{border-bottom:none}.client-suggestion:hover{background:#f8f9fa;background:var(--light-gray)}.client-suggestion.muted{color:#999;cursor:default;justify-content:flex-start}.client-suggestion .client-name{color:#1a1a1a;color:var(--dark-gray);font-weight:600}.client-suggestion .client-id{color:#999;font-size:12px}.selected-client{align-items:center;background:#1a5c5a0f;border:1px solid #1a5c5a33;border-radius:8px;display:flex;gap:12px;margin-top:12px;padding:14px 16px}.selected-check{align-items:center;background:#1a5c5a;background:var(--primary-teal);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:14px;height:26px;justify-content:center;width:26px}.selected-client-name{color:#1a1a1a;color:var(--dark-gray);font-weight:600;margin:0}.selected-client-id{color:#777;font-size:12px;margin:2px 0 0}.create-client-btn{margin-bottom:18px;width:100%}.new-client-form{background:#f8f9fa;background:var(--light-gray);border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:10px;margin-bottom:18px;padding:18px}.new-client-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.new-client-header h4{color:#1a1a1a;color:var(--dark-gray);margin:0}.new-client-grid{grid-gap:0 18px;display:grid;gap:0 18px;grid-template-columns:1fr 1fr}.new-client-grid .form-group{margin-bottom:15px}.new-client-grid .form-group.full-width{grid-column:1/-1}.new-client-grid .form-group label{color:#1a1a1a;color:var(--dark-gray);display:block;font-size:12px;font-weight:600;margin-bottom:6px}.new-client-grid .form-group input{background:#fff;border:2px solid #e0e0e0;border:2px solid var(--border-color);border-radius:8px;font-family:inherit;font-size:14px;padding:10px 12px;width:100%}.new-client-grid .form-group input:focus{border-color:#1a5c5a;border-color:var(--primary-teal);box-shadow:0 0 0 3px #1a5c5a1a;outline:none}.modal-close{background:none;border:none;color:#999;cursor:pointer;font-size:28px;line-height:1;transition:color .3s ease}.modal-close:hover{color:#f44;color:var(--primary-red)}.modal form{grid-gap:0 22px;display:grid;gap:0 22px;grid-template-columns:1fr 1fr;padding:25px}.modal .form-group{margin-bottom:22px}.modal .form-group.full-width,.modal .modal-actions{grid-column:1/-1}.modal .form-group label{color:#1a1a1a;color:var(--dark-gray);display:block;font-size:13px;font-weight:600;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.modal .form-group input,.modal .form-group select,.modal .form-group textarea{background:#fff;border:2px solid #e0e0e0;border:2px solid var(--border-color);border-radius:8px;font-family:inherit;font-size:14px;padding:12px 15px;transition:all .3s ease;width:100%}.modal .form-group textarea{min-height:70px;resize:vertical}.modal .form-group input:disabled{background:#f8f9fa;background:var(--light-gray);color:#888;cursor:not-allowed}.currency-input{align-items:stretch;border:2px solid #e0e0e0;border:2px solid var(--border-color);border-radius:8px;display:flex;overflow:hidden;transition:all .3s ease}.currency-input:focus-within{border-color:#1a5c5a;border-color:var(--primary-teal);box-shadow:0 0 0 3px #1a5c5a1a}.currency-prefix{align-items:center;background:#f8f9fa;background:var(--light-gray);border-right:2px solid #e0e0e0;border-right:2px solid var(--border-color);color:#1a5c5a;color:var(--primary-teal);display:flex;font-size:13px;font-weight:700;padding:0 14px}.currency-input input{border:none!important;border-radius:0!important;flex:1 1}.currency-input input:focus{box-shadow:none!important;outline:none}.modal .form-group input:focus,.modal .form-group select:focus,.modal .form-group textarea:focus{border-color:#1a5c5a;border-color:var(--primary-teal);box-shadow:0 0 0 3px #1a5c5a1a;outline:none}.radio-group{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.radio-option{align-items:center;border:2px solid #e0e0e0;border:2px solid var(--border-color);border-radius:8px;cursor:pointer;display:flex;font-weight:500!important;gap:10px;letter-spacing:normal!important;margin-bottom:0!important;padding:14px 15px;text-transform:none!important;transition:all .3s ease}.radio-option.selected,.radio-option:hover{border-color:#1a5c5a;border-color:var(--primary-teal)}.radio-option.selected{background:#1a5c5a0f}.radio-option input[type=radio]{accent-color:#1a5c5a;accent-color:var(--primary-teal);cursor:pointer;width:auto}.radio-option span{color:#333;color:var(--text-color);font-size:14px}.field-hint{color:#999;font-size:12px;font-weight:400;letter-spacing:normal;margin-top:8px;text-transform:none}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:10px}.modal-actions .btn-primary:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}.proposals-list{display:flex;flex-direction:column;gap:15px}.proposal-item{background:#f8f9fa;background:var(--light-gray);border-left:4px solid #f44;border-left:4px solid var(--primary-red);border-radius:8px;padding:20px;transition:all .3s ease}.proposal-item:hover{box-shadow:0 4px 12px #ff444426;transform:translateX(5px)}.proposal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.proposal-header h4{color:#1a1a1a;color:var(--dark-gray);font-size:15px;margin:0}.proposal-status{border-radius:12px;font-size:11px;font-weight:600;padding:4px 12px;text-transform:uppercase}.proposal-status.new{background:#fff3cd;color:#856404}.proposal-status.pending{background:#fff3e0;color:#e65100}.proposals-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:18px}.proposals-search{border:2px solid #e0e0e0;border:2px solid var(--border-color);border-radius:8px;flex:1 1;font-family:inherit;font-size:14px;min-width:240px;padding:11px 15px}.proposals-search:focus{border-color:#1a5c5a;border-color:var(--primary-teal);box-shadow:0 0 0 3px #1a5c5a1a;outline:none}.date-filter{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.date-filter label{color:#333;color:var(--text-color);font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.date-filter input[type=date]{border:2px solid #e0e0e0;border:2px solid var(--border-color);border-radius:8px;font-family:inherit;font-size:13px;padding:9px 12px}.date-filter input[type=date]:focus{border-color:#1a5c5a;border-color:var(--primary-teal);box-shadow:0 0 0 3px #1a5c5a1a;outline:none}.proposal-description{color:#666;font-size:13px;line-height:1.4;margin:8px 0}.proposal-details{color:#999;display:flex;font-size:12px;gap:20px;margin:10px 0}.proposal-actions{display:flex;gap:8px;margin-top:12px}.policies-table{border-collapse:collapse;width:100%}.policies-table thead{background:#f8f9fa;background:var(--light-gray);border-bottom:2px solid #e0e0e0;border-bottom:2px solid var(--border-color)}.policies-table th{color:#333;color:var(--text-color);font-size:13px;font-weight:600;letter-spacing:.5px;padding:15px;text-align:left;text-transform:uppercase}.policies-table td{border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color);font-size:13px;padding:15px}.policies-table tbody tr:hover{background:#f8f9fa;background:var(--light-gray)}.reports-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.report-item{background:#f8f9fa;background:var(--light-gray);border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:8px;padding:20px;transition:all .3s ease}.report-item:hover{border-color:#1a5c5a;border-color:var(--primary-teal);box-shadow:0 4px 12px #1a5c5a1a}.report-item p{color:#666;font-size:13px;line-height:1.5;margin:10px 0}.report-item .btn-secondary{display:block;margin-top:15px;padding:8px 0;text-align:center;width:100%}.settings-content{max-width:600px}.settings-group{border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color);margin-bottom:30px;padding-bottom:30px}.settings-group:last-child{border-bottom:none}.settings-group h3{color:#1a1a1a;color:var(--dark-gray);font-size:16px;font-weight:600;margin-bottom:15px}.settings-item{margin-bottom:15px}.settings-item label{color:#333;color:var(--text-color);display:block;font-size:13px;font-weight:600;margin-bottom:5px}.settings-item input[type=email],.settings-item input[type=text]{background:#f8f9fa;background:var(--light-gray);border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:6px;font-size:13px;padding:10px 12px;width:100%}.settings-item input[type=checkbox]{cursor:pointer;margin-right:8px}.settings-group.danger-zone{background:#ffebee;border-color:#ffcdd2;border-radius:8px;padding:15px}@media (max-width:1024px){.dashboard-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.overview-analytics{grid-template-columns:1fr}}@media (max-width:768px){.sidebar{height:100vh;left:-300px;position:fixed;transition:left .3s ease;width:280px}.sidebar.open{left:0}.sidebar-backdrop{background:#00000080;display:block;inset:0;position:fixed;z-index:99}.main-content{margin-left:0}.dashboard-header{padding:15px}.menu-toggle{display:block}.dashboard-header h1{font-size:17px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content{padding:20px}.stats-grid{grid-template-columns:1fr}.section-header{align-items:flex-start;flex-direction:column;gap:15px}.section-header button{width:100%}.proposals-toolbar{align-items:stretch;flex-direction:column}.proposals-search{width:100%}.date-filter{flex-wrap:wrap}.overview-controls{align-items:stretch;flex-direction:column}.overview-analytics{grid-template-columns:1fr}}@media (max-width:640px){.details-grid,.modal form,.new-client-grid,.profile-form-grid,.radio-group,.step4-options{grid-template-columns:1fr}.welcome-banner{flex-direction:column-reverse;text-align:center}.welcome-top{justify-content:center}.welcome-logo{height:64px;width:64px}}@media (max-width:600px){.user-name{display:none}}@media (max-width:480px){.dashboard-header h1{font-size:15px}.header-right{gap:10px}.content{padding:15px}.stat-card{flex-direction:row;text-align:left}.reports-grid{grid-template-columns:1fr}.modal-overlay{padding:10px}.modal-actions{flex-wrap:wrap}.bar-chart{gap:4px}}body.dark{--light-gray:#23232b;--medium-gray:#2c2c36;--dark-gray:#f0f0f2;--text-color:#cfcfd6;--border-color:#3a3a46}body.dark,body.dark .content,body.dark .dashboard,body.dark .main-content{background-color:#16161c}body.dark .alert-item,body.dark .card,body.dark .dashboard-header,body.dark .doc-file-item,body.dark .folder-card,body.dark .modal,body.dark .new-client-form,body.dark .premium-breakdown,body.dark .proposal-item,body.dark .report-item,body.dark .selected-client,body.dark .stat-card,body.dark .vessel-item{background-color:#21212a;color:#333;color:var(--text-color)}body.dark .breadcrumb-current,body.dark .folder-name,body.dark .settings-row-title,body.dark .stat-value,body.dark .vessel-name,body.dark h1,body.dark h2,body.dark h3,body.dark h4,body.dark strong{color:#f0f0f2}body.dark .client-search-input>input,body.dark .currency-input,body.dark .proposals-search,body.dark input,body.dark select,body.dark textarea{background-color:#2a2a34;border-color:#3a3a46;color:#eaeaef}body.dark .currency-prefix{background-color:#33333f}body.dark .policies-table tbody tr:hover,body.dark .policies-table thead,body.dark .report-table-wrap tfoot th,body.dark .vessels-table tbody tr:hover,body.dark .vessels-table thead{background-color:#2a2a34}body.dark .client-suggestions{background-color:#21212a;border-color:#3a3a46}body.dark .client-suggestion:hover{background-color:#2a2a34}body.dark .theme-option{color:#cfcfd6}body.dark .btn-secondary{background-color:#33333f;color:#e0e0e6}body.dark .donut-hole,body.dark .ytd-tile{background-color:#21212a}body.dark .chart-header select,body.dark .control-group select{background-color:#2a2a34;border-color:#3a3a46;color:#eaeaef}body.dark .donut-total,body.dark .ytd-value{color:#f0f0f2}*{box-sizing:border-box;margin:0;padding:0}#root,body,html{height:100%;width:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.App{height:100%;width:100%}
/*# sourceMappingURL=main.b7cc0d69.css.map*/