@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";:root{--font-family:-apple-system, BlinkMacSystemFont, "Outfit", "SF Pro Display", "SF Pro Text", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace;--bg-system:#f5f5f7;--bg-sidebar:#fff9;--bg-card:#ffffffb3;--bg-hover:#0000000a;--border-color:#00000014;--border-hover:#00000026;--text-primary:#1d1d1f;--text-secondary:#86868b;--text-tertiary:#b0b0b5;--apple-blue:#0071e3;--apple-blue-hover:#0077ed;--apple-blue-light:#0071e31a;--apple-green:#34c759;--apple-green-light:#34c75926;--apple-orange:#ff9500;--apple-orange-light:#ff950026;--apple-red:#ff3b30;--apple-red-light:#ff3b301a;--apple-purple:#af52de;--apple-purple-light:#af52de26;--shadow-sm:0 1px 3px #0000000d;--shadow-md:0 4px 18px #0000000f;--shadow-lg:0 10px 30px #00000014;--blur-radius:20px;--transition-smooth:all .25s cubic-bezier(.4, 0, .2, 1);--transition-bounce:all .4s cubic-bezier(.175, .885, .32, 1.275)}.dark-theme{--bg-system:#000;--bg-sidebar:#16161799;--bg-card:#1c1c1eb3;--bg-hover:#ffffff0d;--border-color:#ffffff14;--border-hover:#ffffff26;--text-primary:#f5f5f7;--text-secondary:#86868b;--text-tertiary:#48484a;--apple-blue:#0a84ff;--apple-blue-hover:#1e90ff;--apple-blue-light:#0a84ff26;--apple-green:#30d158;--apple-green-light:#30d15826;--apple-orange:#ff9f0a;--apple-orange-light:#ff9f0a26;--apple-red:#ff453a;--apple-red-light:#ff453a26;--apple-purple:#bf5af2;--apple-purple-light:#bf5af226;--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 20px #0006;--shadow-lg:0 10px 40px #00000080}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--bg-system);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;transition:background-color .5s,color .3s;overflow-x:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.app-container{background-position:50%;background-size:cover;width:100vw;min-height:100vh;display:flex;position:relative;overflow:hidden}.apple-sidebar{background:var(--bg-sidebar);border-right:1px solid var(--border-color);width:260px;-webkit-backdrop-filter:blur(var(--blur-radius));z-index:10;transition:var(--transition-smooth);flex-direction:column;padding:24px 16px;display:flex}.sidebar-logo{border-bottom:1px solid var(--border-color);align-items:center;gap:12px;margin-bottom:20px;padding:8px 12px 24px;display:flex}.logo-icon{background:var(--apple-blue);color:#fff;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;font-size:20px;font-weight:700;display:flex;box-shadow:0 2px 8px #0071e366}.logo-text{letter-spacing:-.5px;color:var(--text-primary);font-size:20px;font-weight:600}.sidebar-nav{flex-direction:column;flex-grow:1;gap:4px;display:flex}.nav-item{color:var(--text-primary);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:12px;padding:10px 14px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.nav-item:hover{background:var(--bg-hover)}.nav-item.active{background:var(--apple-blue-light);color:var(--apple-blue);font-weight:600}.nav-item svg{stroke-width:1.8px;width:18px;height:18px}.user-profile-widget{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:14px;flex-direction:column;gap:10px;margin-top:auto;padding:14px;display:flex}.profile-info{align-items:center;gap:10px;display:flex}.profile-avatar{background:var(--apple-purple-light);width:36px;height:36px;color:var(--apple-purple);border-radius:50%;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}.profile-meta{flex-direction:column;display:flex}.profile-name{color:var(--text-primary);font-size:13px;font-weight:600}.profile-role{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:11px}.main-content{background-color:var(--bg-system);height:100vh;transition:var(--transition-smooth);flex-direction:column;flex-grow:1;display:flex;position:relative;overflow-y:auto}.apple-top-nav{border-bottom:1px solid var(--border-color);background:var(--bg-sidebar);height:70px;-webkit-backdrop-filter:blur(var(--blur-radius));z-index:9;justify-content:space-between;align-items:center;padding:0 32px;display:flex;position:sticky;top:0}.nav-title{letter-spacing:-.5px;font-size:22px;font-weight:700}.top-nav-actions{align-items:center;gap:16px;display:flex}.apple-segmented-control{border:1px solid var(--border-color);background:#0000000d;border-radius:9px;gap:2px;padding:3px;display:flex}.dark-theme .apple-segmented-control{background:#ffffff14}.segmented-btn{color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;border-radius:6px;padding:6px 12px;font-size:12px;font-weight:500}.segmented-btn:hover{color:var(--text-primary)}.segmented-btn.active{color:#000;background:#fff;font-weight:600;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.dark-theme .segmented-btn.active{color:#fff;background:#ffffff26}.page-container{flex-direction:column;gap:28px;width:100%;max-width:1400px;margin:0 auto;padding:32px;display:flex}.apple-card{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(var(--blur-radius));transition:var(--transition-smooth);border-radius:20px;padding:24px;position:relative;overflow:hidden}.apple-card:hover{box-shadow:var(--shadow-lg);border-color:var(--border-hover);transform:translateY(-2px)}.apple-card-title{color:var(--text-primary);justify-content:space-between;align-items:center;margin-bottom:16px;font-size:17px;font-weight:600;display:flex}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;display:grid}.kpi-card{flex-direction:column;gap:8px;display:flex}.kpi-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:500}.kpi-value{color:var(--text-primary);letter-spacing:-1px;font-size:32px;font-weight:700}.kpi-footer{color:var(--text-secondary);align-items:center;gap:4px;font-size:12px;display:flex}.apple-btn{background:var(--apple-blue);color:#fff;cursor:pointer;transition:var(--transition-smooth);border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:14px;font-weight:600;display:inline-flex;box-shadow:0 2px 8px #0071e340}.apple-btn:hover{background:var(--apple-blue-hover);transform:translateY(-1px)}.apple-btn:active{transform:scale(.97)}.apple-btn-secondary{background:var(--bg-hover);color:var(--text-primary);border:1px solid var(--border-color);cursor:pointer;transition:var(--transition-smooth);border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:14px;font-weight:500;display:inline-flex}.apple-btn-secondary:hover{background:var(--border-color);border-color:var(--text-secondary)}.apple-btn-danger{background:var(--apple-red);color:#fff;cursor:pointer;transition:var(--transition-smooth);border:none;border-radius:10px;padding:10px 18px;font-size:14px;font-weight:600}.apple-btn-danger:hover{opacity:.9}.apple-input-group{flex-direction:column;gap:6px;display:flex}.apple-label{color:var(--text-primary);font-size:13px;font-weight:500}.apple-input,.apple-select,.apple-textarea{border:1px solid var(--border-color);font-family:var(--font-family);color:var(--text-primary);transition:var(--transition-smooth);background:#fffc;border-radius:10px;width:100%;padding:10px 14px;font-size:14px}.dark-theme .apple-input,.dark-theme .apple-select,.dark-theme .apple-textarea{background:#1c1c1ecc}.apple-input:focus,.apple-select:focus,.apple-textarea:focus{border-color:var(--apple-blue);box-shadow:0 0 0 4px var(--apple-blue-light);outline:none}.apple-table-container{border:1px solid var(--border-color);border-radius:14px;overflow-x:auto}.apple-table{border-collapse:collapse;text-align:left;width:100%;font-size:14px}.apple-table th{background:var(--bg-hover);color:var(--text-secondary);border-bottom:1px solid var(--border-color);padding:12px 16px;font-weight:600}.apple-table td{border-bottom:1px solid var(--border-color);color:var(--text-primary);background:var(--bg-card);padding:14px 16px}.apple-table tr:last-child td{border-bottom:none}.apple-table tr:hover td{background:var(--bg-hover)}.apple-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:100px;align-items:center;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.apple-badge-success{background:var(--apple-green-light);color:var(--apple-green)}.apple-badge-warning{background:var(--apple-orange-light);color:var(--apple-orange)}.apple-badge-danger{background:var(--apple-red-light);color:var(--apple-red)}.apple-badge-info{background:var(--apple-blue-light);color:var(--apple-blue)}.layout-split{grid-template-columns:1fr 340px;gap:28px;display:grid}@media (width<=1024px){.layout-split{grid-template-columns:1fr}.apple-sidebar{width:80px;padding:24px 8px}.logo-text,.profile-meta,.profile-role{display:none}.sidebar-logo{justify-content:center;padding:8px 0 20px}.nav-item{justify-content:center;padding:12px}.nav-item span{display:none}}.blueprint-viewport{border:1px solid var(--border-color);cursor:crosshair;background-color:#0e1e38;border-radius:16px;width:100%;height:480px;position:relative;overflow:hidden;box-shadow:inset 0 0 40px #00000080}.blueprint-grid-overlay{background-image:linear-gradient(#ffffff0d 1px,#0000 1px),linear-gradient(90deg,#ffffff0d 1px,#0000 1px);background-size:20px 20px;position:absolute;inset:0}.blueprint-pin{background:var(--apple-orange);color:#fff;width:24px;height:24px;box-shadow:0 0 10px var(--apple-orange), 0 2px 4px #00000080;cursor:pointer;transition:var(--transition-bounce);z-index:3;border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:700;animation:2s infinite pulsePin;display:flex;position:absolute;transform:translate(-50%,-50%)}.blueprint-pin:hover{transform:translate(-50%,-50%)scale(1.2)}@keyframes pulsePin{0%{box-shadow:0 0 #ff9500b3}70%{box-shadow:0 0 0 8px #ff950000}to{box-shadow:0 0 #ff950000}}.login-screen{background:radial-gradient(circle at top right, #0071e314, transparent 45%), radial-gradient(circle at bottom left, #af52de0d, transparent 45%), var(--bg-system);justify-content:center;align-items:center;width:100vw;min-height:100vh;display:flex}.login-card{background:var(--bg-card);border:1px solid var(--border-color);width:440px;max-width:90%;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(var(--blur-radius));text-align:center;border-radius:24px;flex-direction:column;gap:28px;padding:40px;display:flex}.login-header h1{letter-spacing:-.8px;color:var(--text-primary);margin-bottom:8px;font-size:28px;font-weight:700}.login-header p{color:var(--text-secondary);font-size:14px}.login-roles-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.role-select-box{border:1.5px solid var(--border-color);cursor:pointer;transition:var(--transition-smooth);background:#ffffff4d;border-radius:14px;flex-direction:column;align-items:center;gap:8px;padding:16px 8px;display:flex}.dark-theme .role-select-box{background:#ffffff05}.role-select-box:hover{border-color:var(--text-secondary);background:var(--bg-hover)}.role-select-box.selected{border-color:var(--apple-blue);background:var(--apple-blue-light)}.role-icon-container{background:var(--bg-hover);width:40px;height:40px;color:var(--text-secondary);transition:var(--transition-smooth);border-radius:10px;justify-content:center;align-items:center;display:flex}.role-select-box.selected .role-icon-container{background:var(--apple-blue);color:#fff}.role-label{color:var(--text-primary);font-size:12px;font-weight:600}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.35s cubic-bezier(.16,1,.3,1) forwards fadeIn}.login-theme-toggle{background:var(--bg-card);border:1px solid var(--border-color);cursor:pointer;width:44px;height:44px;box-shadow:var(--shadow-sm);transition:var(--transition-smooth);-webkit-backdrop-filter:blur(var(--blur-radius));z-index:100;border-radius:50%;justify-content:center;align-items:center;font-size:18px;display:flex;position:absolute;top:24px;right:24px}.login-theme-toggle:hover{background:var(--bg-hover);border-color:var(--border-hover);transform:scale(1.08)rotate(15deg)}.login-theme-toggle:active{transform:scale(.95)}.forgot-password-link{color:var(--apple-blue);cursor:pointer;transition:var(--transition-smooth);text-align:left;background:0 0;border:none;align-self:flex-start;margin-top:-8px;padding:0;font-size:13px;font-weight:500;text-decoration:none;display:inline-block}.forgot-password-link:hover{color:var(--apple-blue-hover);text-decoration:underline}.demo-accounts-details{border:1px solid var(--border-color);background:var(--bg-hover);text-align:left;transition:var(--transition-smooth);border-radius:12px;margin-top:10px;padding:8px 12px}.demo-accounts-details[open]{background:var(--bg-card)}.demo-accounts-summary{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;outline:none;font-size:12px;font-weight:600}.demo-accounts-summary:hover{color:var(--text-primary)}.demo-accounts-list{border-top:1px dashed var(--border-color);flex-direction:column;gap:6px;margin-top:8px;padding-top:8px;font-size:12px;display:flex}.demo-account-item{cursor:pointer;transition:var(--transition-smooth);border-radius:6px;justify-content:space-between;align-items:center;padding:4px 6px;display:flex}.demo-account-item:hover{background:var(--bg-hover)}.demo-account-role{font-weight:600}.demo-account-creds{font-family:var(--font-mono);color:var(--text-secondary)}.login-error-alert{background:var(--apple-red-light);border:1px solid var(--apple-red);color:var(--apple-red);text-align:left;border-radius:12px;align-items:center;gap:8px;padding:12px;font-size:13px;animation:.4s ease-in-out shake;display:flex}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}
