@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Manrope:wght@600;700;800&family=Space+Grotesk:wght@400;500&display=swap";:root{--background:#f5f7fa;--surface-lowest:#fff;--surface-low:#fff;--surface:#fff;--surface-container:#f8fafc;--surface-high:#e2e8f0;--primary:#14867c;--primary-container:#0d615a;--primary-gradient:linear-gradient(135deg, #1ba69a, #14867c);--on-background:#1e293b;--on-surface:#0f172a;--on-surface-variant:#64748b;--outline-variant:#cbd5e1;--outline:#94a3b8;--tertiary:#1b4b48;--tertiary-container:#e0f2f1;--error:#ef4444}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--background);color:var(--on-background);font-family:Inter,sans-serif;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:Manrope,sans-serif;font-weight:700}.mono{font-family:Space Grotesk,monospace}.app-container{width:100vw;height:100vh;display:flex}.sidebar{background-color:var(--surface-low);border-right:1px solid var(--outline-variant);z-index:100;flex-direction:column;flex-shrink:0;gap:16px;width:280px;padding:24px;transition:margin-left .3s;display:flex;position:relative;box-shadow:2px 0 12px #0000000d}.sidebar.closed{margin-left:-280px}.sidebar-toggle{background:var(--surface-low);border:1px solid var(--outline-variant);cursor:pointer;width:40px;height:40px;color:var(--primary);z-index:101;border-left:none;border-radius:0 8px 8px 0;justify-content:center;align-items:center;transition:background .2s,color .2s;display:flex;position:absolute;top:24px;right:-40px;box-shadow:2px 0 8px #0000000d}.sidebar-toggle:hover{background:var(--surface-container)}.sidebar-hover-bridge{z-index:99;width:20px;position:absolute;top:0;bottom:0;right:-20px}.sidebar h2{background:var(--primary-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:24px;font-size:1.5rem}.menu-item{cursor:pointer;color:var(--on-surface-variant);border-radius:10px;align-items:center;gap:14px;margin-bottom:4px;padding:10px 14px;font-size:.95rem;font-weight:500;transition:all .2s;display:flex}.menu-icon{background-color:var(--surface-container-high);width:32px;height:32px;color:var(--on-surface-variant);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.menu-icon svg{width:18px;height:18px;transition:all .2s}.menu-item:hover,.menu-item.active{background-color:var(--surface-lowest);color:var(--primary);box-shadow:0 4px 12px #14867c0d, inset 4px 0 0 var(--primary)}.menu-item:hover .menu-icon,.menu-item.active .menu-icon{background-color:var(--primary-gradient);background:var(--primary-gradient);color:var(--surface-lowest)}.menu-item:hover .menu-icon svg,.menu-item.active .menu-icon svg{stroke:var(--surface-lowest)}.main-content{flex:1;padding:0 48px 32px;overflow-y:auto}.page-header{margin-bottom:32px}.top-header{-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--outline-variant);z-index:50;background-color:#ffffffe6;justify-content:space-between;align-items:center;margin:0 -48px 32px;padding:16px 48px;display:flex;position:sticky;top:0;box-shadow:0 4px 20px #00000005}.top-header h1{color:var(--on-surface);letter-spacing:-.5px;align-items:center;gap:12px;margin:0;font-family:Space Grotesk,monospace;font-size:1.35rem;font-weight:800;display:flex}.top-header h1 span{color:var(--primary)}.top-header-right{align-items:center;gap:24px;display:flex}.company-selector-container{background:var(--surface-container-lowest);border:1px solid var(--outline);border-radius:8px;align-items:center;gap:8px;padding:6px 14px;transition:all .2s;display:flex;position:relative;box-shadow:0 2px 6px #0000000a}.company-selector-container:hover{border-color:var(--primary);box-shadow:0 4px 12px #14867c1a}.company-selector-container:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-container)}.company-selector-label{color:var(--on-surface-variant);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:var(--sp-1);font-size:.7rem;font-weight:700;display:flex}.company-selector-label:before{content:"";background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23506e6b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='2' width='16' height='20' rx='2' ry='2'%3E%3C/rect%3E%3Cpath d='M9 22v-4h6v4'%3E%3C/path%3E%3Cpath d='M8 6h.01'%3E%3C/path%3E%3Cpath d='M16 6h.01'%3E%3C/path%3E%3Cpath d='M12 6h.01'%3E%3C/path%3E%3Cpath d='M12 10h.01'%3E%3C/path%3E%3Cpath d='M12 14h.01'%3E%3C/path%3E%3Cpath d='M16 10h.01'%3E%3C/path%3E%3Cpath d='M16 14h.01'%3E%3C/path%3E%3Cpath d='M8 10h.01'%3E%3C/path%3E%3Cpath d='M8 14h.01'%3E%3C/path%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;width:14px;height:14px;display:inline-block}.company-selector{color:var(--on-surface);cursor:pointer;padding-right:var(--sp-1);appearance:none;background:0 0;border:none;outline:none;font-family:Inter,sans-serif;font-size:.9375rem;font-weight:600}.company-selector-container:after{content:"";width:12px;height:12px;margin-left:var(--sp-1);pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23506e6b' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;flex-shrink:0}.user-profile-badge{align-items:center;gap:var(--sp-3);border-left:1px solid var(--outline-variant);padding-left:var(--sp-6);display:flex}.user-avatar{background:var(--primary-gradient);width:36px;height:36px;color:var(--on-primary);border:2px solid var(--surface-lowest);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.875rem;font-weight:700;display:flex;box-shadow:0 3px 10px #0a7e7347}.user-info{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.user-name{color:var(--on-surface);font-size:.875rem;font-weight:600;line-height:1.1}.user-role{text-transform:uppercase;letter-spacing:.06em;color:var(--primary-dark);background:var(--primary-container);padding:2px var(--sp-2);border-radius:var(--radius-xs);font-size:.65rem;font-weight:700}.date-badge{align-items:center;gap:var(--sp-2);color:var(--on-surface-variant);background:var(--surface-container);padding:6px var(--sp-3);border-radius:var(--radius-pill);border:1px solid var(--outline-variant);font-size:.8125rem;font-weight:500;display:flex}.page-header{margin-bottom:var(--sp-8);padding-top:var(--sp-8)}.metrics-row{gap:var(--sp-6);margin-bottom:var(--sp-8);grid-template-columns:repeat(3,1fr);display:grid}.card{background:var(--surface-lowest);border-radius:var(--radius-lg);padding:var(--sp-6);border:1px solid var(--outline-variant);box-shadow:var(--shadow-sm);transition:transform var(--transition-normal), box-shadow var(--transition-normal), border-color var(--transition-normal);position:relative;overflow:hidden}.card:after{content:"";background:var(--primary-gradient);opacity:0;height:3px;transition:opacity var(--transition-normal);border-radius:var(--radius-lg) var(--radius-lg) 0 0;position:absolute;top:0;left:0;right:0}.card:hover{box-shadow:var(--shadow-md);border-color:var(--brand-200);transform:translateY(-3px)}.card:hover:after{opacity:1}.card-title{text-transform:uppercase;letter-spacing:.06em;color:var(--on-surface-variant);margin-bottom:var(--sp-3);font-size:.8125rem;font-weight:600}.card-value{color:var(--primary);letter-spacing:-1px;font-family:Manrope,sans-serif;font-size:2.25rem;font-weight:800;line-height:1.1}.card-subtext{color:var(--on-surface-variant);margin-top:var(--sp-2);font-size:.8125rem}.content-grid{gap:var(--sp-6);grid-template-columns:2fr 1fr;display:grid}.panel{border:1px solid var(--outline-variant);padding:24px;box-shadow:0 8px 24px #0000000a}.panel h3{margin-bottom:20px;font-size:1.25rem}.alert-item{background-color:var(--surface-container);border-left:3px solid var(--tertiary-container);border-radius:8px;margin-bottom:12px;padding:16px}.alert-item p{margin-bottom:4px;font-size:.875rem}.alert-item span{color:var(--on-surface-variant);font-family:Space Grotesk,monospace;font-size:.75rem}
