*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:#f5f5f5;min-height:100vh}.header{background:#0071bd;color:#fff;padding:20px;box-shadow:0 2px 10px #0000001a}.header-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.logo-section{display:flex;align-items:center;gap:15px}.logo{width:60px;height:60px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;color:#0071bd;font-size:24px}.header h1{font-size:1.8em}.logout-btn{background:#fff;color:#0071bd;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;font-weight:600}.logout-btn:hover{background:#f0f0f0}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:#0071bd;padding:20px}.login-box{background:#fff;padding:40px;border-radius:10px;box-shadow:0 10px 30px #0003;max-width:400px;width:100%}.login-logo{width:100px;height:100px;background:#0071bd;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;font-size:36px;margin:0 auto 30px}.login-box h2{text-align:center;color:#333;margin-bottom:30px}.form-group{margin-bottom:20px}.form-group label{display:block;color:#333;font-weight:600;margin-bottom:8px}.form-group input{width:100%;padding:12px;border:2px solid #ddd;border-radius:5px;font-size:1em}.form-group input:focus{outline:none;border-color:#0071bd}.btn-primary{width:100%;background:#0071bd;color:#fff;padding:15px;border:none;border-radius:5px;font-size:1.1em;font-weight:600;cursor:pointer;margin-top:10px}.btn-primary:hover{background:#005a96}.login-help{text-align:center;margin-top:20px;color:#666;font-size:.9em}.container{max-width:1200px;margin:0 auto;padding:30px 20px}.welcome-banner{background:#fff;padding:30px;border-radius:10px;margin-bottom:30px;box-shadow:0 2px 10px #0000000d}.welcome-banner h2{color:#0071bd;margin-bottom:10px}.matter-ref{color:#666;font-size:.95em}.tab-nav{display:flex;gap:10px;margin-bottom:30px;flex-wrap:wrap}.tab-btn{background:#fff;color:#333;border:2px solid #ddd;padding:12px 24px;border-radius:5px;cursor:pointer;font-weight:600;transition:all .3s}.tab-btn:hover{border-color:#0071bd;color:#0071bd}.tab-btn.active{background:#0071bd;color:#fff;border-color:#0071bd}.tab-content{display:none}.tab-content.active{display:block}.card{background:#fff;padding:30px;border-radius:10px;box-shadow:0 2px 10px #0000000d;margin-bottom:20px}.card h3{color:#0071bd;margin-bottom:20px;font-size:1.5em}.timeline{position:relative;padding-left:40px}.timeline:before{content:"";position:absolute;left:15px;top:0;bottom:0;width:3px;background:#ddd}.timeline-item{position:relative;margin-bottom:30px;padding-bottom:30px}.timeline-item:last-child{margin-bottom:0;padding-bottom:0}.timeline-dot{position:absolute;left:-33px;top:0;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;z-index:1}.timeline-dot.completed{background:#28a745}.timeline-dot.current{background:#0071bd;box-shadow:0 0 0 4px #0071bd33}.timeline-dot.pending{background:#ccc}.timeline-content h4{color:#333;margin-bottom:5px}.timeline-date{color:#666;font-size:.9em;margin-bottom:10px}.timeline-description{color:#666;line-height:1.6}.timeline-status{display:inline-block;padding:5px 12px;border-radius:20px;font-size:.85em;font-weight:600;margin-top:10px}.status-completed{background:#d4edda;color:#155724}.status-current{background:#cce5ff;color:#004085}.status-pending{background:#f0f0f0;color:#666}.upload-area{border:3px dashed #ddd;border-radius:10px;padding:40px;text-align:center;cursor:pointer;transition:all .3s;margin-bottom:20px}.upload-area:hover{border-color:#0071bd;background:#f8f9fa}.upload-area.dragover{border-color:#0071bd;background:#e7f3ff}.upload-icon{font-size:48px;color:#0071bd;margin-bottom:15px}.file-list{list-style:none}.file-item{background:#f8f9fa;padding:15px;border-radius:5px;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center}.file-name{color:#333;font-weight:500}.file-size{color:#666;font-size:.9em}.file-status{color:#28a745;font-weight:600}.progress-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.progress-stat{background:#fff;padding:20px;border-radius:10px;text-align:center;box-shadow:0 2px 10px #0000000d}.progress-number{font-size:2.5em;font-weight:700;color:#0071bd}.progress-label{color:#666;margin-top:5px}.checklist{list-style:none}.checklist-item{padding:15px;border-bottom:1px solid #eee;display:flex;align-items:center;gap:15px}.checklist-item:last-child{border-bottom:none}.check-icon{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.check-icon.done{background:#28a745;color:#fff}.check-icon.pending{background:#f0f0f0;color:#999}.guide-section{margin-bottom:30px}.guide-section h4{color:#0071bd;margin-bottom:15px;font-size:1.2em}.guide-list{list-style:none;padding-left:0}.guide-list li{padding:10px 0 10px 30px;position:relative;color:#666;line-height:1.6}.guide-list li:before{content:"✓";position:absolute;left:0;color:#0071bd;font-weight:700;font-size:1.2em}.info-box{background:#e7f3ff;border-left:4px solid #0071bd;padding:20px;border-radius:5px;margin:20px 0}.info-box h5{color:#0071bd;margin-bottom:10px}.info-box p{color:#333;line-height:1.6}.calculator-form{background:#f8f9fa;padding:30px;border-radius:10px;margin-bottom:20px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:20px}.quote-result{background:#0071bd;color:#fff;padding:30px;border-radius:10px;margin-top:20px;display:none}.quote-result.show{display:block}.quote-amount{font-size:3em;font-weight:700;text-align:center;margin-bottom:20px}.quote-breakdown{background:#ffffff1a;padding:20px;border-radius:5px}.quote-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.2)}.quote-row:last-child{border-bottom:none;font-weight:700;font-size:1.2em;margin-top:10px}.btn-secondary{background:#fff;color:#0071bd;padding:12px 24px;border:none;border-radius:5px;font-weight:600;cursor:pointer;margin-top:20px}.btn-secondary:hover{background:#f0f0f0}@media(max-width:768px){.header-content{flex-direction:column;gap:15px}.tab-nav{flex-direction:column}.tab-btn{width:100%}.timeline{padding-left:30px}.timeline-dot{left:-28px;width:24px;height:24px;font-size:12px}}.hidden{display:none!important}
