*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%}body{color:#1a2744;-webkit-font-smoothing:antialiased;background:#f0f2f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.5}body.presenting{overflow:hidden}input,textarea,select,button{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none}a{color:inherit;text-decoration:none}table{border-collapse:collapse;width:100%}.app-layout{min-height:100vh;display:flex}.main-content{flex:1;min-height:100vh;margin-left:260px;padding:32px;overflow-y:auto}.sidebar{color:#94a3b8;z-index:100;background:#1a2744;flex-direction:column;width:260px;height:100vh;display:flex;position:fixed;top:0;left:0;overflow-y:auto}.sidebar-brand{border-bottom:1px solid #ffffff14;align-items:center;gap:12px;padding:24px 20px 20px;display:flex}.sidebar-logo{color:#fff;background:linear-gradient(135deg,#2dd4bf,#14b8a6);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:15px;font-weight:700;display:flex}.sidebar-brand-name{color:#fff;font-size:14px;font-weight:600;line-height:1.2}.sidebar-brand-sub{color:#64748b;margin-top:2px;font-size:11px}.sidebar-section{padding:16px 12px 8px}.sidebar-section-label{text-transform:uppercase;letter-spacing:.05em;color:#64748b;justify-content:space-between;align-items:center;padding:0 8px 8px;font-size:11px;font-weight:600;display:flex}.sidebar-add-btn{color:#2dd4bf;background:#2dd4bf26;border-radius:6px;justify-content:center;align-items:center;width:22px;height:22px;font-size:16px;font-weight:600;transition:background .15s;display:flex}.sidebar-add-btn:hover{background:#2dd4bf4d}.sidebar-item{color:#94a3b8;text-align:left;border-radius:8px;align-items:center;gap:10px;width:100%;padding:8px 12px;font-size:13px;transition:all .15s;display:flex}.sidebar-item:hover{color:#e2e8f0;background:#ffffff0f}.sidebar-item.active{color:#2dd4bf;background:#2dd4bf1f}.sidebar-item-icon{text-align:center;flex-shrink:0;width:20px;font-size:14px}.sidebar-client-dot{background:#475569;border-radius:50%;flex-shrink:0;width:8px;height:8px}.sidebar-item.active .sidebar-client-dot{background:#2dd4bf}.sidebar-clients-list{flex-direction:column;gap:2px;display:flex}.sidebar-empty{color:#475569;padding:8px 12px;font-size:12px;font-style:italic}.btn{border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.btn-primary{color:#fff;background:#2dd4bf}.btn-primary:hover{background:#14b8a6}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{color:#1a2744;background:#fff;border-color:#d1d5db}.btn-secondary:hover{background:#f9fafb;border-color:#9ca3af}.btn-danger{color:#fff;background:#ef4444}.btn-danger:hover{background:#dc2626}.btn-accent{color:#2dd4bf;background:#1a2744;border:1px solid #2dd4bf}.btn-accent:hover{background:#243352}.btn-sm{padding:5px 12px;font-size:12px}.btn-xs{border-radius:6px;padding:3px 8px;font-size:11px}.btn-back{color:#64748b;padding:4px 0;font-size:13px;transition:color .15s}.btn-back:hover{color:#1a2744}.hero-card{color:#fff;background:linear-gradient(135deg,#1a2744,#243352,#1a2744);border-radius:16px;margin-bottom:32px;padding:40px}.hero-title{margin-bottom:4px;font-size:28px;font-weight:700}.hero-subtitle{color:#94a3b8;margin-bottom:28px;font-size:14px}.hero-stats{background:#ffffff1a;border-radius:12px;gap:1px;display:flex;overflow:hidden}.hero-stat{text-align:center;background:#ffffff0d;flex:1;padding:16px 20px}.hero-stat-value{color:#2dd4bf;font-size:24px;font-weight:700}.hero-stat-label{color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;margin-top:4px;font-size:11px}.section-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.section-header h2{color:#1a2744;font-size:18px;font-weight:600}.client-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.client-card{cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;transition:all .15s}.client-card:hover{border-color:#2dd4bf;transform:translateY(-1px);box-shadow:0 4px 12px #2dd4bf1a}.client-card-name{color:#1a2744;margin-bottom:4px;font-size:16px;font-weight:600}.client-card-desc{color:#64748b;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:12px;font-size:13px;display:-webkit-box;overflow:hidden}.client-card-meta{color:#94a3b8;font-size:12px}.empty-state{text-align:center;color:#64748b;padding:60px 20px}.empty-state-icon{opacity:.3;margin-bottom:12px;font-size:40px}.empty-state h3{color:#1a2744;margin-bottom:6px;font-size:16px;font-weight:600}.empty-state p{margin-bottom:20px;font-size:13px}.client-header{flex-wrap:wrap;align-items:flex-start;gap:16px;margin-bottom:28px;display:flex}.client-header-info{flex:1}.client-header-info h1{color:#1a2744;margin:0;font-size:24px;font-weight:700}.client-header-desc{color:#64748b;margin-top:4px;font-size:14px}.client-header-actions{gap:8px;display:flex}.table-wrap{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.data-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:#64748b;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:12px 16px;font-size:11px;font-weight:600}.data-table td{vertical-align:middle;border-bottom:1px solid #f3f4f6;padding:12px 16px;font-size:13px}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:#f9fafb}.cell-title{color:#1a2744;font-weight:500}.cell-client{color:#1a2744;font-weight:600}.cell-template{text-transform:capitalize}.col-actions{text-align:right;white-space:nowrap}.col-actions .btn{margin-left:4px}.editor-toolbar{border-bottom:1px solid #e5e7eb;align-items:center;gap:16px;margin-bottom:20px;padding:12px 0;display:flex}.editor-title-input{color:#1a2744;background:0 0;border:none;outline:none;flex:1;font-size:16px;font-weight:600}.editor-title-input::placeholder{color:#94a3b8}.editor-toolbar-right{align-items:center;gap:10px;display:flex}.save-indicator{border-radius:20px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;display:flex}.save-dot{border-radius:50%;width:8px;height:8px}.save-indicator--saved{color:#14b8a6}.save-indicator--saved .save-dot{background:#14b8a6}.save-indicator--saving{color:#f59e0b}.save-indicator--saving .save-dot{background:#f59e0b;animation:1s infinite pulse-dot}.save-indicator--dirty{color:#94a3b8}.save-indicator--dirty .save-dot{background:#94a3b8}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.editor-content{max-width:900px;margin:0 auto}.editor-loading,.editor-error{color:#64748b;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:300px;display:flex}.steerco{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #00000014}.steerco-header{color:#fff;background:#1a2744;justify-content:space-between;align-items:center;gap:16px;padding:20px 28px;display:flex}.steerco-header-company{font-size:18px;font-weight:700}.steerco-header-doctype{color:#94a3b8;font-size:14px}.steerco-header-date{color:#64748b;font-size:13px}.steerco-inline-input{color:#1a2744;font-size:inherit;font-weight:inherit;background:#ffffff14;border:1px solid #ffffff26;border-radius:6px;outline:none;padding:4px 8px;transition:border-color .15s}.steerco-inline-input:focus{border-color:#2dd4bf}.steerco-inline-input--light{color:#fff}.steerco-inline-input--light::placeholder{color:#fff6}.steerco-meta{border-bottom:1px solid #e5e7eb;display:flex}.steerco-meta-item{border-right:1px solid #e5e7eb;flex:1;align-items:center;gap:10px;padding:12px 20px;display:flex}.steerco-meta-item:last-child{border-right:none}.steerco-meta-label{text-transform:uppercase;letter-spacing:.04em;color:#64748b;white-space:nowrap;font-size:11px;font-weight:600}.steerco-meta-value{font-size:14px;font-weight:600}.steerco-meta-cost{background:#fffbeb}.steerco-meta-cost .steerco-meta-value,.steerco-meta-cost .steerco-inline-input{color:#d97706}.steerco-meta-revenue{background:#fff5f5}.steerco-meta-revenue .steerco-meta-value,.steerco-meta-revenue .steerco-inline-input{color:#e76f51}.steerco-meta-date{background:#f8fafc}.steerco-grid{background:#e5e7eb;grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.steerco-panel{background:#fff;flex-direction:column;min-height:180px;transition:all .4s;display:flex}.steerco-panel--active{outline-offset:-3px;z-index:2;outline:3px solid #f59e0b;animation:2s ease-in-out infinite panel-pulse;transform:scale(1.02);box-shadow:0 8px 24px #f59e0b40}.steerco-panel--dim{opacity:.35;transition:opacity .4s}@keyframes panel-pulse{0%,to{outline-color:#f59e0b}50%{outline-color:#fbbf24}}.steerco-panel-header{color:#fff;align-items:center;gap:8px;padding:10px 16px;display:flex}.steerco-panel-icon{color:#fff;background:#fff3;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:13px;display:flex}.steerco-panel-title{color:#fff;font-size:13px;font-weight:600}.steerco-panel-body{border-left:4px solid #0000;flex:1;padding:10px 16px 14px}.steerco-panel--status .steerco-panel-header{background:#5b9cf3}.steerco-panel--status .steerco-panel-body{border-left-color:#5b9cf3}.steerco-panel--status .steerco-panel-body strong{color:#4a85d6}.steerco-panel--accomplishments .steerco-panel-header{background:#14b8a6}.steerco-panel--accomplishments .steerco-panel-body{border-left-color:#14b8a6}.steerco-panel--accomplishments .steerco-panel-body strong{color:#0f9688}.steerco-panel--next-steps .steerco-panel-header{background:#8b5cf6}.steerco-panel--next-steps .steerco-panel-body{border-left-color:#8b5cf6}.steerco-panel--next-steps .steerco-panel-body strong{color:#7340e0}.steerco-panel--risks .steerco-panel-header{background:#e85a4f}.steerco-panel--risks .steerco-panel-body{border-left-color:#e85a4f}.steerco-panel--risks .steerco-panel-body strong{color:#cc4440}.steerco-panel--decisions .steerco-panel-header{background:#f59e0b}.steerco-panel--decisions .steerco-panel-body{border-left-color:#f59e0b}.steerco-panel--decisions .steerco-panel-body strong{color:#d68a09}.steerco-panel--dependencies .steerco-panel-header{background:#3b82f6}.steerco-panel--dependencies .steerco-panel-body{border-left-color:#3b82f6}.steerco-panel--dependencies .steerco-panel-body strong{color:#2f6ad0}.steerco-panel-textarea{color:#374151;resize:vertical;border:1px solid #e5e7eb;border-radius:6px;outline:none;width:100%;height:100%;min-height:120px;padding:8px 10px;font-size:12px;line-height:1.6;transition:border-color .15s}.steerco-panel-textarea:focus{border-color:#2dd4bf}.steerco-panel-textarea::placeholder{color:#9ca3af}.steerco-panel-text{color:#374151;white-space:pre-wrap;font-size:12px;line-height:1.6}.steerco-footer{color:#64748b;background:#1a2744;justify-content:space-between;padding:12px 28px;font-size:11px;display:flex}.modal-overlay{z-index:200;background:#00000080;justify-content:center;align-items:center;animation:.15s fade-in;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:16px;width:440px;max-width:90vw;animation:.2s slide-up;box-shadow:0 20px 60px #0003}.modal-sm{width:380px}.modal-header{justify-content:space-between;align-items:center;padding:20px 24px 0;display:flex}.modal-header h2{color:#1a2744;font-size:18px;font-weight:600}.modal-close{color:#94a3b8;padding:0;font-size:24px;line-height:1}.modal-close:hover{color:#1a2744}.modal-body{padding:20px 24px}.modal-body p{color:#64748b;font-size:14px;line-height:1.6}.modal-label{color:#374151;margin-bottom:14px;font-size:13px;font-weight:500;display:block}.modal-input,.modal-textarea{border:1px solid #d1d5db;border-radius:8px;outline:none;width:100%;margin-top:6px;padding:8px 12px;font-size:14px;transition:border-color .15s;display:block}.modal-input:focus,.modal-textarea:focus{border-color:#2dd4bf}.modal-textarea{resize:vertical}.modal-actions{justify-content:flex-end;gap:8px;padding:0 24px 20px;display:flex}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.present-overlay{z-index:300;background:#0a0f1cf2;flex-direction:column;justify-content:center;align-items:center;padding:48px 0 60px;animation:.3s fade-in;display:flex;position:fixed;inset:0}.present-exit-btn{color:#ffffffb3;z-index:301;background:#ffffff14;border-radius:8px;padding:8px 16px;font-size:14px;transition:all .15s;position:fixed;top:20px;right:24px}.present-exit-btn:hover{color:#fff;background:#ffffff26}.present-dashboard{border-radius:12px;flex:auto;width:95vw;max-width:1800px;min-height:0;overflow:hidden}.present-dashboard-inner{width:100%;transition:transform .15s}body.presenting .steerco-header{padding:28px 36px}body.presenting .steerco-header-company{font-size:28px}body.presenting .steerco-header-doctype{font-size:20px}body.presenting .steerco-header-date{font-size:16px}body.presenting .steerco-meta-label{font-size:13px}body.presenting .steerco-meta-value,body.presenting .steerco-meta .steerco-inline-input{font-size:24px}body.presenting .steerco-meta-item{padding:16px 24px}body.presenting .steerco-panel-header{padding:14px 22px}body.presenting .steerco-panel-icon{width:30px;height:30px;font-size:16px}body.presenting .steerco-panel-title{font-size:17px}body.presenting .steerco-panel-body{padding:20px 24px 24px}body.presenting .steerco-panel-text{font-size:16px;line-height:1.7}body.presenting .steerco-panel{min-height:220px}body.presenting .steerco-footer{padding:14px 36px;font-size:13px}.narration-bar{color:#fff;z-index:302;background:#1a2744e6;border-radius:14px 14px 0 0;width:90vw;max-width:760px;padding:10px 20px 8px;animation:.3s slide-up;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.narration-ticker{white-space:nowrap;flex-shrink:0;width:95vw;max-width:1800px;margin-bottom:10px;overflow:hidden}.narration-ticker-text{color:#e2e8f0;will-change:transform;background:#1a2744cc;border-radius:8px;padding:6px 16px;font-size:15px;font-weight:500;animation:30s linear forwards ticker-scroll;display:inline-block}@keyframes ticker-scroll{0%{transform:translate(100vw)}to{transform:translate(-100%)}}.narration-controls{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.narration-buttons{gap:6px;display:flex}.narration-settings{flex:1;align-items:center;gap:14px;min-width:0;display:flex}.narration-control-group{cursor:pointer;align-items:center;gap:6px;display:flex}.narration-label{color:#94a3b8;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;font-size:11px;font-weight:600}.narration-select{color:#e2e8f0;background:#ffffff1a;border:1px solid #ffffff26;border-radius:6px;outline:none;max-width:160px;padding:3px 6px;font-size:11px}.narration-range{accent-color:#2dd4bf;width:80px}.narration-rate-value{color:#94a3b8;min-width:28px;font-size:11px}.narration-hint{color:#64748b;text-align:center;margin-top:6px;font-size:11px}.present-progress{gap:8px;margin-left:auto;display:flex}.present-dot{background:#fff3;border-radius:50%;width:10px;height:10px;transition:all .3s}.present-dot--active{background:#f59e0b;transform:scale(1.3)}.present-dot--done{background:#2dd4bf}.spinner{border:2px solid #2dd4bf33;border-top-color:#2dd4bf;border-radius:50%;width:20px;height:20px;animation:.6s linear infinite spin}.spinner-lg{border-width:3px;width:48px;height:48px}@keyframes spin{to{transform:rotate(360deg)}}.auth-loading{background:#1a2744;justify-content:center;align-items:center;min-height:100vh;display:flex}.login-page{background:linear-gradient(135deg,#1a2744 0%,#243352 50%,#1a2744 100%);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-card{background:#fff;border-radius:16px;width:100%;max-width:400px;overflow:hidden;box-shadow:0 20px 60px #0000004d}.login-header{text-align:center;background:#1a2744;padding:36px 32px 28px}.login-logo{color:#fff;background:linear-gradient(135deg,#2dd4bf,#14b8a6);border-radius:14px;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:16px;font-size:20px;font-weight:700;display:inline-flex}.login-header h1{color:#fff;margin:0 0 4px;font-size:22px;font-weight:700}.login-header p{color:#64748b;margin:0;font-size:13px}.login-form{flex-direction:column;gap:18px;padding:28px 32px 32px;display:flex}.login-error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:10px 14px;font-size:13px}.login-label{color:#374151;flex-direction:column;gap:6px;font-size:13px;font-weight:500;display:flex}.login-input{border:1px solid #d1d5db;border-radius:8px;outline:none;padding:10px 14px;font-size:14px;transition:border-color .15s}.login-input:focus{border-color:#2dd4bf;box-shadow:0 0 0 3px #2dd4bf1a}.login-submit{color:#fff;background:#2dd4bf;border-radius:8px;margin-top:4px;padding:12px;font-size:14px;font-weight:600;transition:background .15s}.login-submit:hover:not(:disabled){background:#14b8a6}.login-submit:disabled{opacity:.6;cursor:not-allowed}.login-forgot{text-align:center;color:#94a3b8;cursor:default;margin:0;font-size:12px}.login-forgot--link{cursor:pointer;color:#2dd4bf;transition:color .15s}.login-forgot--link:hover{color:#14b8a6}.sidebar-user{border-top:1px solid #ffffff14;margin-top:auto;padding:8px 12px;position:relative}.sidebar-user-trigger{text-align:left;border-radius:8px;align-items:center;gap:10px;width:100%;padding:8px;transition:background .15s;display:flex}.sidebar-user-trigger:hover{background:#ffffff0f}.sidebar-user-email{color:#94a3b8;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;overflow:hidden}.sidebar-user-role{color:#2dd4bf;font-size:10px}.sidebar-user-menu{z-index:150;background:#fff;border-radius:10px;margin-bottom:6px;padding:6px 0;animation:.15s slide-up;position:absolute;bottom:100%;left:12px;right:12px;box-shadow:0 8px 30px #0003}.sidebar-menu-email{color:#1a2744;border-bottom:1px solid #f3f4f6;padding:10px 14px 8px;font-size:12px;font-weight:600}.sidebar-menu-item{color:#374151;text-align:left;width:100%;padding:8px 14px;font-size:13px;transition:background .1s;display:block}.sidebar-menu-item:hover{background:#f9fafb}.sidebar-menu-item--danger{color:#ef4444}.sidebar-menu-item--danger:hover{background:#fef2f2}.sidebar-menu-divider{background:#f3f4f6;height:1px;margin:4px 0}.login-flash{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:10px 14px;font-size:13px}.user-admin{max-width:1100px}.user-admin-header{justify-content:space-between;align-items:flex-start;margin-bottom:24px;display:flex}.user-admin-header h1{color:#1a2744;margin:8px 0 0;font-size:24px;font-weight:700}.user-admin-stats{gap:16px;margin-bottom:24px;display:flex}.user-stat{text-align:center;background:#fff;border:1px solid #e5e7eb;border-radius:10px;min-width:100px;padding:16px 24px}.user-stat-value{color:#1a2744;font-size:22px;font-weight:700}.user-stat-label{color:#64748b;text-transform:uppercase;letter-spacing:.04em;margin-top:2px;font-size:11px}.role-badge{border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.role-badge--system_owner{color:#1d4ed8;background:#dbeafe}.role-badge--user{color:#6b7280;background:#f3f4f6}.status-badge{border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.status-badge--active{color:#15803d;background:#dcfce7}.status-badge--inactive{color:#dc2626;background:#fef2f2}.badge-you{color:#2dd4bf;font-size:11px;font-weight:600}.row-inactive td{opacity:.5}.role-select{cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:2px 4px;font-size:11px}.role-select:disabled{opacity:.5;cursor:not-allowed}.temp-pw-email{color:#374151;margin-bottom:12px;font-size:14px}.temp-pw-label{color:#64748b;margin-bottom:8px;font-size:13px;font-weight:500}.temp-pw-box{gap:8px;margin-bottom:12px;display:flex}.temp-pw-value{color:#1a2744;letter-spacing:.5px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;flex:1;padding:10px 14px;font-family:Courier New,Courier,monospace;font-size:18px;font-weight:700}.temp-pw-copy-error{color:#dc2626;margin-bottom:8px;font-size:12px}.temp-pw-warning{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:10px 14px;font-size:12px;line-height:1.5}.email-config{max-width:700px}.email-config-form{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:24px}.email-config-grid{flex-direction:column;gap:16px;display:flex}.email-config-row{align-items:flex-end;gap:12px;display:flex}.email-config-toggle{flex-direction:column;align-items:center;gap:6px;padding-bottom:8px;display:flex}.email-config-toggle input[type=checkbox]{accent-color:#2dd4bf;width:18px;height:18px}.email-config-note{color:#0369a1;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;padding:10px 14px;font-size:12px;line-height:1.5}.email-config-test{align-items:flex-end;gap:12px;display:flex}
