@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700&display=swap";:root{--bg-dark:#f8fafc;--bg-panel:#ffffffb3;--text-main:#0f172a;--text-muted:#475569;--accent-cyan:#0891b2;--accent-green:#059669;--accent-purple:#7c3aed;--accent-orange:#d97706}*{box-sizing:border-box;margin:0;padding:0;font-family:Inter,sans-serif}body{background-color:var(--bg-dark);color:var(--text-main);background-image:radial-gradient(circle at 15%,#06b6d426,#0000 25%),radial-gradient(circle at 85% 30%,#8b5cf626,#0000 25%);background-attachment:fixed;flex-direction:column;min-height:100vh;display:flex}.glass-panel{background:var(--bg-panel);-webkit-backdrop-filter:blur(12px);border:1px solid #0000000d;border-radius:16px;box-shadow:0 4px 30px #0000000d}.app-container{width:100%;max-width:1200px;margin:0 auto;padding:2rem}header{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;margin-bottom:3rem;padding-bottom:1rem;display:flex}.logo-container h1{background:linear-gradient(90deg, var(--text-main), var(--accent-cyan));-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:2.5rem;font-weight:700}.logo-container p{color:var(--text-muted);letter-spacing:1px;margin-top:.5rem;font-weight:300}.roles-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:2rem;display:grid}.role-card{cursor:pointer;padding:2rem;transition:transform .3s,box-shadow .3s;position:relative;overflow:hidden}.role-card:before{content:"";width:100%;height:4px;position:absolute;top:0;left:0}.role-card.patient:before{background-color:var(--accent-cyan)}.role-card.doctor:before{background-color:var(--accent-green)}.role-card.lab:before{background-color:var(--accent-orange)}.role-card.admin:before{background-color:var(--accent-purple)}.role-card:hover{transform:translateY(-5px);box-shadow:0 10px 40px #0003}.role-card h2{align-items:center;gap:.5rem;margin-bottom:1rem;font-size:1.5rem;display:flex}.role-card p{color:var(--text-muted);font-size:.95rem;line-height:1.6}.login-btn{color:var(--text-main);cursor:pointer;background:#0000000d;border:1px solid #0000001a;border-radius:8px;width:100%;margin-top:1.5rem;padding:.75rem 1.5rem;font-weight:600;transition:all .2s}.login-btn:hover{background:#0000001a}.workflow-section{text-align:center;margin-top:5rem}.workflow-section h2{letter-spacing:2px;color:var(--accent-cyan);margin-bottom:3rem;font-size:2rem}.workflow-steps{flex-wrap:wrap;justify-content:space-between;gap:1rem;display:flex}.step{text-align:left;flex:1;min-width:180px;padding:1.5rem}.step-number{opacity:.2;margin-bottom:.5rem;font-size:3rem;font-weight:700}.step h3{margin-bottom:.5rem}.step p{color:var(--text-muted);font-size:.85rem}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-dark);border-radius:16px;width:100%;max-width:450px;padding:3rem;position:relative}.close-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:1.5rem;position:absolute;top:1.5rem;right:1.5rem}.form-group{text-align:left;margin-bottom:1.5rem}.form-group label{color:var(--text-muted);margin-bottom:.5rem;font-size:.9rem;display:block}.form-group input{background:var(--bg-panel);width:100%;color:var(--text-main);border:1px solid #0000001a;border-radius:8px;outline:none;padding:.75rem 1rem}.error-message{color:#ef4444;background:#ef44441a;border-radius:8px;margin-bottom:1.5rem;padding:1rem;font-size:.9rem}
