@import"https://fonts.googleapis.com/css2?family=Jost:wght@400;500;600;700&family=DM+Mono:wght@400;500&display=swap";.logout-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f6f7f8;font-family:Jost,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;padding:20px;position:relative}.back-button{position:absolute;top:20px;left:20px;padding:10px 16px;background-color:#fff;color:#35c0ca;border:1px solid rgba(53,192,202,.3);border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;transition:all .3s ease;white-space:nowrap;box-shadow:0 2px 8px #0000000f;z-index:10}.back-button:hover{background-color:#35c0ca14;color:#095359;transform:translate(-2px)}.logout-container{background:#fff;border-radius:20px;box-shadow:0 25px 80px #0000001a;width:100%;max-width:500px;padding:60px 50px;text-align:center;position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.2)}.logout-container:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#35c0ca,#0ae5ac,#e57b3e);background-size:200% 100%;animation:gradientShift 4s ease infinite}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.logout-header{margin-bottom:40px}.logout-icon{font-size:64px;margin-bottom:20px;animation:wave 2s ease-in-out infinite}@keyframes wave{0%,to{transform:rotate(0)}25%{transform:rotate(20deg)}75%{transform:rotate(-10deg)}}.logout-header h1{font-size:32px;color:#095359;margin:0 0 15px;font-weight:700;letter-spacing:-.5px}.logout-header p{color:#666;font-size:16px;margin:0;font-weight:400}.logout-content{margin-bottom:40px}.logout-message{margin-bottom:30px}.logout-message h3{font-size:20px;color:#151e31;margin:0 0 15px;font-weight:600}.logout-message p{color:#666;font-size:14px;line-height:1.6;margin:0 0 10px}.logout-actions{display:flex;justify-content:center}.login-again-btn{padding:14px 32px;background:linear-gradient(135deg,#35c0ca,#095359);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #35c0ca4d;position:relative;overflow:hidden;min-width:160px;font-family:Jost,sans-serif;letter-spacing:.03em}.login-again-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.login-again-btn:hover:before{left:100%}.login-again-btn:hover{transform:translateY(-3px);box-shadow:0 8px 25px #35c0ca66;background:linear-gradient(135deg,#095359,#151e31)}.login-again-btn:active{transform:translateY(-1px);box-shadow:0 4px 15px #35c0ca4d}@media(max-width:600px){.logout-container{padding:40px 30px;margin:20px}.logout-header h1{font-size:28px}.logout-icon{font-size:48px}.login-again-btn{width:100%;padding:16px 24px}}.dashboard-page{min-height:100vh;background:#f6f7f8}.not-authenticated{display:flex;justify-content:center;align-items:center;min-height:100vh;text-align:center}.not-authenticated h1{font-size:36px;color:#666;margin:0;font-weight:500}.dashboard-navbar{background:#fff;box-shadow:0 2px 8px #0000000f;padding:16px 24px;display:flex;justify-content:space-between;align-items:center}.navbar-brand h1{margin:0;font-size:22px;font-family:Jost,sans-serif}.navbar-logo{height:64px;width:auto;object-fit:contain}.navbar-logo-fallback{margin:0;font-size:22px;font-family:Jost,sans-serif}.navbar-user{display:flex;align-items:center;gap:16px}.navbar-user span{color:#666;font-size:14px}.logout-button{padding:8px 12px;background-color:#ffe8e8;color:#d32f2f;border:1px solid #ff9999;border-radius:50%;cursor:pointer;font-size:16px;transition:all .3s ease;display:flex;align-items:center;justify-content:center;min-width:36px;min-height:36px}.logout-button:hover{background-color:#ff6b6b;color:#fff;transform:scale(1.1)}.profile-icon-btn{padding:8px 12px;background-color:#35c0ca1a;color:#35c0ca;border:1px solid rgba(53,192,202,.3);border-radius:50%;cursor:pointer;font-size:16px;transition:all .3s ease;display:flex;align-items:center;justify-content:center;min-width:36px;min-height:36px}.profile-icon-btn:hover{background-color:#0ae5ac26;transform:scale(1.1)}.dashboard-content{padding:32px 24px;max-width:1200px;margin:0 auto}.dashboard-content h2{font-size:28px;color:#151e31;margin:0 0 24px;font-family:Jost,sans-serif}.loading-container{display:flex;align-items:center;justify-content:center;min-height:100vh;font-size:18px;color:#666}.welcome-section{background:linear-gradient(135deg,#35c0ca,#095359);color:#fff;padding:30px;border-radius:12px;margin-bottom:24px;box-shadow:0 10px 30px #09535926;border:1px solid rgba(9,83,89,.1)}.welcome-section h2{margin:0;font-size:32px;color:#fff;font-family:Jost,sans-serif}.welcome-section p{display:none}.user-info{background:#fff;padding:24px;border-radius:8px;box-shadow:0 2px 8px #0000000d}.user-info h3{color:#151e31;margin-top:0;margin-bottom:16px;font-size:18px;font-family:Jost,sans-serif}.user-info p{margin:12px 0;color:#666;font-size:14px}.user-info strong{color:#151e31}.security-section{background:#fff;padding:24px;border-radius:8px;box-shadow:0 2px 8px #0000000d;margin-top:24px}.security-section h3{color:#151e31;margin-top:0;margin-bottom:20px;font-size:18px;font-family:Jost,sans-serif}.mfa-enabled,.mfa-disabled{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px;border-radius:6px}.mfa-enabled{background:#35c0ca14;border:1px solid rgba(53,192,202,.3)}.mfa-disabled{background:#fff3cd;border:1px solid #ffc107;flex-direction:column;align-items:flex-start}.mfa-status,.mfa-warning{flex:1}.status-badge{display:inline-block;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600;margin-bottom:8px;font-family:DM Mono,monospace;letter-spacing:.04em}.status-badge.enabled{background:#35c0ca;color:#fff}.status-badge.disabled{background:#dc3545;color:#fff}.mfa-status p,.mfa-warning p{margin:8px 0 0;color:#666;font-size:14px;line-height:1.5}.warning-text{color:#856404}.setup-mfa-button,.manage-mfa-button{padding:10px 20px;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap;flex-shrink:0;font-family:Jost,sans-serif}.setup-mfa-button{background:linear-gradient(135deg,#35c0ca,#095359);color:#fff}.setup-mfa-button:hover{transform:translateY(-2px);box-shadow:0 5px 15px #0953594d}.manage-mfa-button{background:#fff;color:#35c0ca;border:1px solid #35C0CA}.manage-mfa-button:hover{background:#35c0ca14}.loading-page{min-height:100vh;display:flex;align-items:center;justify-content:center;font-size:18px;color:#666}.floating-action-button{position:fixed;bottom:32px;right:32px;z-index:100}.upload-document-btn{padding:12px 24px;background:linear-gradient(135deg,#35c0ca,#095359);color:#fff;border:none;border-radius:50px;cursor:pointer;font-size:14px;font-weight:600;box-shadow:0 4px 15px #35c0ca66;transition:all .3s ease;font-family:Jost,sans-serif;letter-spacing:.03em}.upload-document-btn:hover{transform:translateY(-2px);box-shadow:0 6px 25px #35c0ca80;background:linear-gradient(135deg,#095359,#151e31)}.upload-document-btn:active{transform:translateY(0)}@media(max-width:768px){.dashboard-navbar{flex-direction:column;gap:12px;text-align:center}.navbar-user{width:100%;justify-content:center;gap:12px}.dashboard-content{padding:16px}.floating-action-button{bottom:16px;right:16px}.upload-document-btn{padding:10px 20px;font-size:13px}.mfa-enabled,.mfa-disabled{flex-direction:column;align-items:flex-start}.mfa-status,.mfa-warning{width:100%}.setup-mfa-button,.manage-mfa-button{width:100%;margin-top:12px}.welcome-section h2{font-size:24px}.user-info,.security-section,.user-info p{font-size:13px}}.document-upload-page{min-height:100vh;background:#f6f7f8;padding:20px;font-family:Jost,Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.upload-container{max-width:1000px;margin:0 auto;padding:40px 30px}.page-header{display:flex;align-items:center;gap:16px;margin-bottom:30px}.page-header h1{font-size:36px;color:#095359;margin:0;font-weight:700;flex:1}.back-button{padding:10px 16px;background-color:#35c0ca14;color:#35c0ca;border:1px solid rgba(53,192,202,.3);border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;transition:all .3s ease;white-space:nowrap;flex-shrink:0}.upload-container h1{font-size:36px;color:#095359;margin-bottom:30px;text-align:center;font-weight:700}.upload-content{display:grid;gap:25px}.data-display{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.data-field{display:flex;flex-direction:column;gap:8px}.data-field label{font-size:13px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px;font-family:DM Mono,monospace}.data-field span{font-size:15px;color:#333;padding:12px;background:#f8f9fa;border-radius:6px;border-left:3px solid #35C0CA}.citizenship-select{font-size:15px;color:#333;padding:12px;background:#f8f9fa;border:1px solid #ddd;border-left:3px solid #35C0CA;border-radius:6px;cursor:pointer;transition:all .3s ease;font-family:Jost,sans-serif}.citizenship-select:hover{border-color:#0ae5ac;background:#35c0ca0d}.citizenship-select:focus{outline:none;border-color:#35c0ca;box-shadow:0 0 0 3px #35c0ca1f}.no-data{color:#999;font-style:italic;padding:20px;text-align:center}.upload-section{grid-column:1 / -1}.upload-area{border:2px dashed rgba(53,192,202,.5);border-radius:10px;padding:40px 20px;text-align:center;background:#35c0ca08;cursor:pointer;transition:all .3s ease;margin-bottom:20px;position:relative}.upload-area:hover{border-color:#35c0ca;background:#35c0ca0f}.file-input{display:none}.upload-label{display:block;font-size:18px;font-weight:600;color:#35c0ca;cursor:pointer;margin-bottom:10px}.upload-hint{font-size:13px;color:#999;margin:0}.selected-files{background:#35c0ca14;border-left:4px solid #35C0CA;padding:15px;border-radius:6px;margin-bottom:20px}.selected-files h3{margin:0 0 10px;font-size:14px;color:#095359}.selected-files ul{list-style:none;padding:0;margin:0}.selected-files li{padding:8px 0;color:#333;font-size:14px;border-bottom:1px solid rgba(53,192,202,.2)}.selected-files li:last-child{border-bottom:none}.upload-button{width:100%;padding:14px 24px;background:linear-gradient(135deg,#35c0ca,#095359);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #35c0ca4d;font-family:Jost,sans-serif;letter-spacing:.03em}.upload-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #35c0ca66}.upload-button:disabled{opacity:.5;cursor:not-allowed}.toast-error{position:fixed;top:24px;right:24px;z-index:9999;background:#fff;border-left:4px solid #d32f2f;border-radius:10px;box-shadow:0 6px 28px #0000002e;padding:16px 18px;display:flex;align-items:flex-start;gap:12px;max-width:420px;min-width:280px;animation:toastSlideIn .3s ease}.toast-icon{width:22px;height:22px;background:#d32f2f;border-radius:50%;color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}.toast-message{flex:1;font-size:14px;color:#222;line-height:1.55;white-space:pre-wrap;word-break:break-word;font-family:Jost,sans-serif}.toast-close{background:none;border:none;cursor:pointer;color:#aaa;font-size:16px;padding:0;flex-shrink:0;line-height:1;transition:color .2s}.toast-close:hover{color:#d32f2f}@keyframes toastSlideIn{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.clickable-address{cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .3s ease;display:block;padding:12px;background:#f8f9fa;border-radius:6px;border-left:3px solid #35C0CA}.clickable-address:hover{background:#35c0ca14;border-left-color:#0ae5ac}.address-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.address-modal{background:#fff;border-radius:12px;padding:0;max-width:500px;width:90%;box-shadow:0 10px 40px #0000004d;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.address-modal .modal-header{padding:20px 24px;border-bottom:1px solid #eee;background:#fff;display:flex;justify-content:space-between;align-items:center}.address-modal .modal-header h2{margin:0;font-size:20px;color:#095359;font-family:Jost,sans-serif}.address-modal .modal-close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#666;transition:all .3s ease}.address-modal .modal-close-btn:hover{color:#d32f2f;transform:scale(1.1)}.address-modal .modal-content{padding:24px;max-height:60vh;overflow-y:auto}.form-group{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.form-group input{font-size:15px;color:#333;padding:12px;border:1px solid #ddd;border-left:3px solid #35C0CA;border-radius:6px;font-family:Jost,sans-serif;transition:all .3s ease}.form-group input:focus{outline:none;border-color:#35c0ca;box-shadow:0 0 0 3px #35c0ca1f}.form-group input::placeholder{color:#999}.address-modal .modal-footer{padding:16px 24px;border-top:1px solid #eee;display:flex;gap:12px;justify-content:flex-end}.btn-cancel,.btn-save{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;font-family:Jost,sans-serif}.btn-cancel{background:#f5f5f5;color:#333}.btn-save{background:linear-gradient(135deg,#35c0ca,#095359);color:#fff}.btn-save:hover{transform:translateY(-2px);box-shadow:0 4px 12px #35c0ca4d}.patient-input{padding:10px 12px;border:1px solid #ddd;border-left:3px solid #35C0CA;border-radius:6px;font-size:14px;font-family:Jost,sans-serif;color:#333;background:#f8f9fa;width:100%;transition:all .2s ease}.patient-input:focus{outline:none;border-color:#35c0ca;box-shadow:0 0 0 3px #35c0ca1f;background:#fff}.patient-input::placeholder{color:#bbb}.patient-input--mono{font-family:DM Mono,monospace;letter-spacing:.05em;text-transform:uppercase}.mandatory-section{border:1.5px solid rgba(53,192,202,.4)}.mandatory-section h2{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.section-badge{font-size:10px;font-weight:700;padding:3px 8px;border-radius:20px;letter-spacing:.06em;text-transform:uppercase;font-family:DM Mono,monospace;flex-shrink:0}.section-badge.required{background:#35c0ca1f;color:#095359;border:1px solid rgba(53,192,202,.4)}.exam-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.exam-full-width{grid-column:1 / -1}.exam-select,.exam-datetime,.exam-text-input{padding:12px;border:1px solid #ddd;border-left:3px solid #35C0CA;border-radius:6px;font-size:15px;font-family:Jost,sans-serif;color:#333;background:#f8f9fa;transition:all .2s ease;width:100%}.exam-select:focus,.exam-datetime:focus,.exam-text-input:focus{outline:none;border-color:#35c0ca;box-shadow:0 0 0 3px #35c0ca1f;background:#fff}.field-mandatory{border-color:#35c0ca!important}.field-mandatory.field-required{border-color:#e57b3e!important;background:#e57b3e0a!important}.clickable-address.field-mandatory{border-left-color:#35c0ca}.clickable-address.field-required{border-left-color:#e57b3e;background:#e57b3e0a;color:#e57b3e}.upload-area.field-mandatory{border-color:#35c0ca}.upload-area--required{border-color:#e57b3e;background:#e57b3e0a}.upload-area--required .upload-label{color:#e57b3e}.report-textarea{padding:14px;border:1px solid #ddd;border-left:3px solid #35C0CA;border-radius:6px;font-size:15px;font-family:Jost,sans-serif;color:#333;background:#f8f9fa;resize:vertical;transition:all .2s ease;width:100%;line-height:1.6}.report-textarea:focus{outline:none;border-color:#35c0ca;box-shadow:0 0 0 3px #35c0ca1f;background:#fff}.report-textarea.field-required{border-left-color:#e57b3e}.char-count{font-size:12px;color:#999;text-align:right;font-family:DM Mono,monospace;margin-top:-4px}@media(max-width:768px){.upload-container{padding:20px 15px}.upload-container h1{font-size:28px}.data-display{grid-template-columns:1fr}.upload-area{padding:30px 15px}.exam-fields{grid-template-columns:1fr}.address-modal{width:95%;max-height:90vh}.address-modal .modal-content{max-height:calc(90vh - 120px)}.address-modal .modal-footer{flex-direction:column-reverse}.btn-cancel,.btn-save{width:100%}}.profile-settings-page{min-height:100vh;background:#f6f7f8;padding:20px;font-family:Jost,Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.settings-container{max-width:1000px;margin:0 auto;padding:40px 30px}.settings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-wrap:wrap;gap:15px}.settings-header h1{font-size:36px;color:#095359;margin:0;font-weight:700;flex:1;text-align:center}.back-button{padding:10px 16px;background-color:#35c0ca14;color:#35c0ca;border:1px solid rgba(53,192,202,.3);border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;transition:all .3s ease;white-space:nowrap;flex-shrink:0;order:-1}.back-button:hover{background-color:#35c0ca26;color:#095359;transform:translate(-2px)}.edit-toggle-btn{padding:10px 20px;background:linear-gradient(135deg,#35c0ca,#095359);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #35c0ca40;font-family:Jost,sans-serif}.edit-toggle-btn:hover{transform:translateY(-2px);box-shadow:0 6px 15px #35c0ca59}.edit-toggle-btn.editing{background:#ff6b6b;color:#fff}.settings-content{display:grid;gap:25px}.section-card{background:#fff;border-radius:12px;padding:30px;box-shadow:0 4px 15px #0000000f;border:1px solid rgba(53,192,202,.1)}.section-card h2{font-size:22px;color:#095359;margin:0 0 20px;padding-bottom:15px;border-bottom:2px solid #35C0CA;display:flex;align-items:center;gap:10px;font-family:Jost,sans-serif}.data-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:13px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px;font-family:DM Mono,monospace}.form-group input{padding:12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:all .3s ease;font-family:Jost,sans-serif}.form-group input:focus{outline:none;border-color:#35c0ca;box-shadow:0 0 0 3px #35c0ca1f;background:#f8fafa}.data-value{padding:12px;background:#f8f9fa;border-radius:6px;border-left:3px solid #35C0CA;color:#333;font-size:15px;display:flex;align-items:center;min-height:40px}.no-data{color:#999;font-style:italic;padding:20px;text-align:center;grid-column:1 / -1}.action-buttons{display:flex;gap:15px;margin-top:30px;grid-column:1 / -1;justify-content:center}.save-btn,.cancel-btn{padding:14px 32px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #0000001a;font-family:Jost,sans-serif}.save-btn{background:linear-gradient(135deg,#4caf50,#388e3c);color:#fff}.save-btn:hover{transform:translateY(-2px);box-shadow:0 6px 18px #4caf5066}.cancel-btn{background:#f5f5f5;color:#333;border:1px solid #ddd}.cancel-btn:hover{background:#e8e8e8;border-color:#ccc}.error-message{background:#ffebee;color:#c62828;border-left:4px solid #f44336;padding:15px;border-radius:6px;grid-column:1 / -1}.loading-container{display:flex;justify-content:center;align-items:center;min-height:60vh;font-size:18px;color:#666}.clickable-field{cursor:pointer;-webkit-user-select:none;user-select:none;display:block;padding:12px;background:#f8f9fa;border-radius:6px;border-left:3px solid #35C0CA;color:#333;font-size:15px;min-height:40px;transition:all .2s ease}.clickable-field:hover{background:#35c0ca14;border-left-color:#0ae5ac}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.profile-modal{background:#fff;border-radius:12px;max-width:480px;width:90%;box-shadow:0 10px 40px #0000004d;animation:modalSlideIn .25s ease;overflow:hidden}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:linear-gradient(135deg,#095359,#35c0ca);color:#fff}.modal-header h2{margin:0;font-size:18px;font-weight:600;font-family:Jost,sans-serif;color:#fff}.modal-close-btn{background:none;border:none;color:#fff;font-size:20px;cursor:pointer;padding:0 4px;line-height:1;opacity:.8;transition:opacity .2s}.modal-close-btn:hover{opacity:1}.modal-content{padding:24px;display:flex;flex-direction:column;gap:16px;max-height:60vh;overflow-y:auto}.modal-content .form-group input,.modal-content .form-group select{padding:12px;border:1px solid #ddd;border-radius:6px;font-size:14px;font-family:Jost,sans-serif;transition:border-color .2s}.modal-content .form-group input:focus,.modal-content .form-group select:focus{outline:none;border-color:#35c0ca;box-shadow:0 0 0 3px #35c0ca1f}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #eee}.btn-cancel{padding:10px 22px;background:#f5f5f5;color:#333;border:1px solid #ddd;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;font-family:Jost,sans-serif}.btn-cancel:hover{background:#e8e8e8}.btn-save{padding:10px 22px;background:linear-gradient(135deg,#35c0ca,#095359);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px #35c0ca4d;font-family:Jost,sans-serif}.btn-save:hover{transform:translateY(-1px);box-shadow:0 6px 16px #35c0ca66}@media(max-width:768px){.settings-container{padding:20px 15px}.settings-header{flex-direction:column;align-items:flex-start}.settings-header h1{font-size:28px}.data-fields{grid-template-columns:1fr}.action-buttons{flex-direction:column}.save-btn,.cancel-btn{width:100%}}.lg-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f6f7f8;font-family:Jost,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;padding:32px 24px}.lg-card{background:#fff;border-radius:16px;box-shadow:0 1px 4px #0000000f,0 12px 40px #00000014;width:100%;max-width:400px;padding:40px 40px 32px;display:flex;flex-direction:column;gap:24px}.lg-brand{display:flex;align-items:center;justify-content:center;gap:10px}.lg-logo{height:auto;width:280px;object-fit:contain}.lg-brand-fallback{display:flex;align-items:center;gap:10px}.lg-brand-icon{width:36px;height:36px;border-radius:8px;background:#fff;border:1px solid #f0f0f0;display:flex;align-items:center;justify-content:center;flex-shrink:0}.lg-brand-icon svg{width:28px;height:28px}.lg-brand-name{font-size:15px;font-weight:700;color:#e57b3e;letter-spacing:.01em;font-family:Jost,sans-serif}.lg-brand-name span{display:block;font-size:9px;font-weight:600;color:#35c0ca;letter-spacing:.14em;text-transform:uppercase;font-family:Jost,sans-serif;margin-top:1px}.lg-header{display:flex;flex-direction:column;gap:4px}.lg-header h1{font-size:22px;font-weight:700;color:#151e31;margin:0;letter-spacing:-.3px}.lg-header p{font-size:13px;color:#64748b;margin:0;line-height:1.5}.lg-form{display:flex;flex-direction:column;gap:14px}.lg-error{font-size:13px;color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:10px 14px;margin:0}.lg-field{display:flex;flex-direction:column;gap:4px}.lg-field label{font-size:12px;font-weight:500;color:#475569;text-transform:uppercase;letter-spacing:.06em;font-family:DM Mono,monospace}.lg-field input{padding:9px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:13px;color:#0f172a;background:#fff;outline:none;transition:border-color .15s,box-shadow .15s;width:100%;font-family:Jost,sans-serif}.lg-field input:focus{border-color:#35c0ca;box-shadow:0 0 0 3px #35c0ca1f}.lg-field input::placeholder{color:#cbd5e1}.lg-btn{padding:11px 18px;background:#35c0ca;color:#fff;border:none;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s,transform .1s;display:flex;align-items:center;justify-content:center;min-height:42px;margin-top:4px;font-family:Jost,sans-serif;letter-spacing:.03em}.lg-btn:hover:not(:disabled){background:#095359}.lg-btn:active:not(:disabled){transform:scale(.985)}.lg-btn:disabled{opacity:.5;cursor:not-allowed}.lg-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:lgSpin .7s linear infinite}@keyframes lgSpin{to{transform:rotate(360deg)}}.lg-mfa-hint{font-size:13px;color:#475569;margin:0;line-height:1.5}.lg-code-input{letter-spacing:.25em;font-size:20px!important;text-align:center;font-variant-numeric:tabular-nums;font-family:DM Mono,monospace!important}.lg-btn-back{padding:10px 18px;background:transparent;color:#64748b;border:1px solid #e2e8f0;border-radius:10px;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s;text-align:center;font-family:Jost,sans-serif}.lg-btn-back:hover{background:#f8fafc}.lg-footer{font-size:13px;color:#64748b;text-align:center;margin:0}.lg-link-btn{background:none;border:none;color:#35c0ca;font-size:13px;font-weight:500;cursor:pointer;padding:0;font-family:Jost,sans-serif}.lg-link-btn:hover{text-decoration:underline;color:#095359}@media(max-width:480px){.lg-card{padding:32px 20px 24px}}.tut-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f6f7f8;font-family:Jost,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;padding:32px 24px}.tut-card{background:#fff;border-radius:16px;box-shadow:0 1px 4px #0000000f,0 12px 40px #00000014;width:100%;max-width:440px;padding:40px 40px 32px;display:flex;flex-direction:column;gap:24px}.tut-brand{display:flex;align-items:center;gap:10px}.tut-brand-icon{width:36px;height:36px;border-radius:8px;background:#fff;border:1px solid #f0f0f0;display:flex;align-items:center;justify-content:center;flex-shrink:0}.tut-brand-icon svg{width:28px;height:28px}.tut-brand-name{font-size:15px;font-weight:700;color:#e57b3e;letter-spacing:.01em;font-family:Jost,sans-serif}.tut-brand-name span{display:block;font-size:9px;font-weight:600;color:#35c0ca;letter-spacing:.14em;text-transform:uppercase;font-family:Jost,sans-serif;margin-top:1px}.tut-welcome{display:flex;flex-direction:column;gap:2px}.tut-welcome-label{font-size:13px;color:#64748b;margin:0}.tut-welcome-name{font-size:24px;font-weight:700;color:#151e31;margin:0;letter-spacing:-.4px}.tut-welcome-sub{font-size:13px;color:#64748b;margin:4px 0 0}.tut-step{display:flex;flex-direction:column;gap:10px;padding:20px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;min-height:160px}.tut-step-icon{color:#35c0ca;display:flex;align-items:center}.tut-step-title{font-size:16px;font-weight:600;color:#151e31;margin:0}.tut-step-desc{font-size:13px;color:#475569;margin:0;line-height:1.6}.tut-dots{display:flex;gap:6px;justify-content:center}.tut-dot{width:8px;height:8px;border-radius:50%;background:#e2e8f0;border:none;cursor:pointer;padding:0;transition:background .15s,transform .15s}.tut-dot--active{background:#0ae5ac;transform:scale(1.2)}.tut-actions{display:flex;flex-direction:column;gap:8px}.tut-btn-primary{padding:11px 18px;background:#35c0ca;color:#fff;border:none;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s;min-height:42px;font-family:Jost,sans-serif;letter-spacing:.03em}.tut-btn-primary:hover{background:#095359}.tut-btn-skip{padding:10px 18px;background:transparent;color:#64748b;border:1px solid #e2e8f0;border-radius:10px;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s;font-family:Jost,sans-serif}.tut-btn-skip:hover{background:#f8fafc}@media(max-width:480px){.tut-card{padding:32px 20px 24px}}#root{width:100%;margin:0;padding:0}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;width:100%}.card{padding:2em}.read-the-docs{color:#888}.auth-fullpage{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f6f7f8;font-family:Jost,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;padding:24px;gap:16px}.auth-card{background:#fff;border-radius:16px;box-shadow:0 1px 4px #0000000f,0 12px 40px #00000014;width:100%;max-width:360px;padding:44px 36px 36px;display:flex;flex-direction:column;align-items:center;gap:28px}.auth-brand{display:flex;flex-direction:column;align-items:center;gap:12px}.auth-brand-icon{width:52px;height:52px;border-radius:12px;background:#fff;border:1px solid #f0f0f0;display:flex;align-items:center;justify-content:center}.auth-brand-icon svg{width:40px;height:40px}.auth-brand-name{font-size:18px;font-weight:700;color:#e57b3e;letter-spacing:-.2px;font-family:Jost,sans-serif}.auth-card-body{text-align:center;display:flex;flex-direction:column;gap:8px}.auth-title{font-size:22px;font-weight:700;color:#151e31;letter-spacing:-.3px;margin:0}.auth-subtitle{font-size:14px;color:#64748b;line-height:1.6;margin:0}.auth-actions{display:flex;flex-direction:column;gap:10px;width:100%}.auth-btn{width:100%;padding:12px 20px;background:#35c0ca;color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s ease,transform .1s ease;letter-spacing:.01em;font-family:Jost,sans-serif}.auth-btn:hover{background:#095359}.auth-btn:active{transform:scale(.985)}.auth-btn-secondary{width:100%;padding:12px 20px;background:transparent;color:#35c0ca;border:1.5px solid #35C0CA;border-radius:10px;font-size:14px;font-weight:500;cursor:pointer;transition:background .15s ease,transform .1s ease;letter-spacing:.01em;font-family:Jost,sans-serif}.auth-btn-secondary:hover{background:#35c0ca14}.auth-btn-secondary:active{transform:scale(.985)}.auth-error-msg{font-size:13px;color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:12px 16px;text-align:center;width:100%;margin:0}.auth-spinner{width:22px;height:22px;border:2px solid #e2e8f0;border-top-color:#35c0ca;border-radius:50%;animation:authSpin .7s linear infinite}@keyframes authSpin{to{transform:rotate(360deg)}}.auth-hint{font-size:13px;color:#94a3b8;margin:0}.app-header{background:#fff;box-shadow:0 2px 10px #0000000f;position:sticky;top:0;z-index:100}.header-content{max-width:1200px;margin:0 auto;padding:16px 24px;display:flex;justify-content:space-between;align-items:center}.app-title{font-size:24px;color:#095359;font-weight:700;margin:0;font-family:Jost,sans-serif}.header-actions{display:flex;gap:12px}.logout-btn{padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s ease}.logout-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.cognito-logout{background:#d32f2f;color:#fff}.cognito-logout:hover{background:#b71c1c}.main-content{max-width:1200px;margin:0 auto;padding:32px 24px}.welcome-card{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;padding:32px;margin-bottom:32px}.welcome-header{display:flex;align-items:center;gap:20px}.user-avatar{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#35c0ca,#095359);color:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:600}.welcome-text h2{font-size:28px;color:#151e31;margin:0 0 8px;font-weight:600}.user-email{color:#666;font-size:16px;margin:0}.tokens-section h3{font-size:24px;color:#151e31;margin:0 0 24px;font-weight:600}.token-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:24px}.token-card{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;overflow:hidden}.token-card h4{background:#f8f9fa;padding:16px 24px;margin:0;font-size:18px;color:#151e31;font-weight:600;border-bottom:1px solid #e9ecef}.token-content{padding:20px 24px;max-height:200px;overflow-y:auto}.token-content pre{font-family:DM Mono,Monaco,Menlo,Ubuntu Mono,monospace;font-size:12px;line-height:1.4;color:#333;white-space:pre-wrap;word-break:break-all;margin:0}:root{font-family:Jost,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body,#root{height:100%;width:100%;margin:0;padding:0}body{margin:0;padding:0;background-color:#f6f7f8;color:#151e31}a{color:#35c0ca;text-decoration:none;transition:color .3s ease}a:hover{color:#095359}button{font-family:inherit;cursor:pointer;transition:all .3s ease}button:disabled{cursor:not-allowed;opacity:.6}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600}*{box-sizing:border-box}
