@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--bg-primary: #f5f5f4;--bg-secondary: #ffffff;--bg-surface: #fafaf9;--bg-elevated: #ffffff;--text-primary: #1c1917;--text-secondary: #57534e;--text-muted: #a8a29e;--border-color: #e7e5e4;--border-dark: #d6d3d1;--accent-color: #2563eb;--accent-hover: #1d4ed8;--accent-light: #dbeafe;--success-color: #16a34a;--danger-color: #dc2626;--warning-color: #d97706;--sticky-yellow: #fef3c7;--sticky-pink: #fce7f3;--sticky-blue: #dbeafe;--sticky-green: #dcfce7;--sticky-orange: #ffedd5;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 12px 32px rgba(0, 0, 0, .12);--shadow-sticky: 2px 3px 8px rgba(0, 0, 0, .12);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--transition-fast: .1s ease;--transition-base: .15s ease;--transition-slow: .25s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--font-sans);font-size:14px;line-height:1.5;color:var(--text-primary);background-color:var(--bg-primary);-webkit-font-smoothing:antialiased}::selection{background:var(--accent-light);color:var(--text-primary)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-dark);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.page{min-height:100vh;display:flex;flex-direction:column}.loading-page,.error-page{justify-content:center;align-items:center;text-align:center;gap:var(--spacing-md);background:var(--bg-primary)}.loading-page p{color:var(--text-secondary)}.login-page{justify-content:center;align-items:center;background:var(--bg-secondary);padding:var(--spacing-xl) var(--spacing-md)}.login-shell{display:flex;flex-direction:column;align-items:stretch;width:100%;max-width:320px;gap:var(--spacing-md)}.reset-shell{max-width:380px}.login-wordmark{display:block;text-align:center;font-size:.875rem;font-weight:500;letter-spacing:.18em;color:var(--text-primary);text-decoration:none;margin-bottom:var(--spacing-xs);text-transform:uppercase;font-feature-settings:"ss01","cv11"}.login-tagline{text-align:center;color:var(--text-muted);font-size:.9rem;font-weight:400;margin-bottom:var(--spacing-lg)}.login-hint{color:var(--text-secondary);font-size:.85rem;text-align:center;margin:0}.login-hint strong{overflow-wrap:anywhere}.login-form{display:flex;flex-direction:column;gap:var(--spacing-sm)}.login-form-secondary{gap:var(--spacing-sm)}.login-form input{width:100%;padding:.65rem .85rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.9rem;color:var(--text-primary);transition:all var(--transition-fast);font-family:inherit}.login-form input:focus{outline:none;border-color:var(--text-primary);box-shadow:0 0 0 1px var(--text-primary)}.login-form .btn-primary,.login-form .btn-secondary{width:100%}.login-error{color:var(--danger-color);font-size:.8rem;margin:0;padding:0}.login-success{color:var(--success-color);background:#f0fdf4;border:1px solid #bbf7d0;border-radius:var(--radius-sm);font-size:.8rem;line-height:1.5;margin:0;padding:.65rem .75rem;text-align:center}.login-field{display:flex;flex-direction:column;gap:.35rem}.login-field>span{color:var(--text-secondary);font-size:.78rem;font-weight:500}.login-button-link{display:block;text-align:center;text-decoration:none}.password-visibility{display:flex;align-items:center;align-self:flex-start;gap:.45rem;color:var(--text-secondary);cursor:pointer;font-size:.78rem}.password-visibility input{appearance:auto;border:initial;box-shadow:none;padding:0;width:auto;margin:0}.password-requirements{color:var(--text-secondary);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.76rem;line-height:1.45;padding:.65rem .75rem}.password-requirements-title,.password-advice{margin:0}.password-requirements ul{display:flex;flex-direction:column;gap:.2rem;list-style:none;margin:.4rem 0;padding:0}.password-requirements li:before{color:var(--text-muted);content:"–";display:inline-block;width:1rem}.password-requirements li.requirement-met{color:var(--success-color)}.password-requirements li.requirement-met:before{content:"✓"}.password-requirements li.requirement-failed{color:var(--danger-color)}.password-requirements li.requirement-failed:before{content:"×"}.password-advice{color:var(--text-muted)}.login-divider{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--text-muted);font-size:.75rem;margin:var(--spacing-sm) 0}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--border-color)}.login-textlink{background:none;border:none;color:var(--text-secondary);font-size:.8rem;cursor:pointer;padding:0;margin:0 auto;text-decoration:none;font-family:inherit}.login-textlink:hover{color:var(--text-primary);text-decoration:underline}.login-switch{text-align:center;color:var(--text-muted);font-size:.8rem;margin-top:var(--spacing-md)}.login-passkey{margin-bottom:var(--spacing-xs)}.mfa-input{text-align:center;font-size:1.4rem!important;letter-spacing:.4em;font-variant-numeric:tabular-nums;padding:.6rem!important}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-group label{font-size:.875rem;font-weight:500;color:var(--text-secondary)}input[type=text],input[type=email],input[type=url]{padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:1rem;color:var(--text-primary);transition:all var(--transition-fast)}input::placeholder{color:var(--text-muted)}input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-light)}.btn-primary,.btn-secondary{padding:.6rem 1.1rem;border:none;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;letter-spacing:-.005em;cursor:pointer;transition:all var(--transition-fast);font-family:inherit}.btn-primary{background:var(--text-primary);color:#fff}.btn-primary:hover{background:#000}.btn-primary:active{transform:scale(.98)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:transparent;color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-surface);border-color:var(--border-dark)}.btn-sm{padding:var(--spacing-xs) var(--spacing-md);font-size:.8rem}.error{color:var(--danger-color);font-size:.875rem}.home-page{background:var(--bg-secondary)}.home-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-xl);background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.home-wordmark{font-size:.85rem;font-weight:500;letter-spacing:-.01em;color:var(--text-primary);font-feature-settings:"ss01","cv11"}.home-header-right{display:flex;align-items:center;gap:var(--spacing-md)}.user-name{color:var(--text-muted);font-size:.825rem}.home-main{flex:1;padding:var(--spacing-2xl) var(--spacing-xl);max-width:900px;margin:0 auto;width:100%}.section-eyebrow{font-size:.7rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:0}.boards-section{margin-top:var(--spacing-xl)}.boards-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-color)}.boards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--spacing-md)}.board-card{display:flex;flex-direction:column;gap:var(--spacing-xs);background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-lg);cursor:pointer;text-align:left;font-family:inherit;transition:border-color var(--transition-fast),background var(--transition-fast)}.board-card:hover{border-color:var(--text-primary);background:var(--bg-surface)}.board-card h3{font-size:.95rem;font-weight:500;color:var(--text-primary);margin:0}.board-card .board-date{font-size:.75rem;color:var(--text-muted);margin:0}.boards-loading{color:var(--text-muted);font-size:.85rem;padding:var(--spacing-xl) 0}.empty-boards{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);text-align:center;padding:var(--spacing-2xl) var(--spacing-md);color:var(--text-secondary);background:transparent;border:none}.empty-boards h3{font-size:1.1rem;font-weight:500;color:var(--text-primary);margin:0}.empty-boards p{color:var(--text-muted);font-size:.9rem;margin:0 0 var(--spacing-md)}.invites-section{margin-bottom:var(--spacing-xl)}.invites-section .section-eyebrow{margin-bottom:var(--spacing-sm)}.invites-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.invite-card{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md)}.invite-info{display:flex;flex-direction:column;gap:2px}.invite-board{font-weight:600;color:var(--text-primary)}.invite-from{font-size:.85rem;color:var(--text-secondary)}.invite-actions{display:flex;gap:var(--spacing-sm)}.board-page{height:100vh;overflow:hidden;background:var(--bg-primary)}.board-header{position:relative;display:flex;justify-content:center;align-items:center;padding:var(--spacing-sm) var(--spacing-lg);background:var(--bg-secondary);border-bottom:1px solid var(--border-color);min-height:80px}.back-btn{position:absolute;left:var(--spacing-lg);top:50%;transform:translateY(-50%);width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.back-btn:hover{background:var(--bg-surface);color:var(--text-primary);border-color:var(--border-dark)}.signout-btn{position:absolute;right:var(--spacing-lg);top:50%;transform:translateY(-50%);width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.signout-btn:hover{background:var(--bg-surface);color:var(--text-primary);border-color:var(--border-dark)}.board-header-center{display:flex;flex-direction:column;align-items:center;gap:2px}.board-wordmark{font-size:.65rem;font-weight:700;color:var(--text-muted);letter-spacing:.08em}.board-title{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.board-members-row{display:flex;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-xs);flex-wrap:wrap;justify-content:center}.board-member{display:flex;align-items:center;gap:4px;cursor:pointer;transition:opacity var(--transition-fast);font-size:.8rem;color:var(--text-secondary)}.board-member:hover,.board-member.selected{color:var(--text-primary)}.board-member.is-me{color:var(--text-primary);font-weight:500}.board-member.pending{opacity:.5}.board-member.pending:hover{opacity:.7}.board-member.editing{color:var(--text-primary)}.member-silhouette{color:var(--text-muted);flex-shrink:0}.board-member.is-me .member-silhouette,.board-member.selected .member-silhouette{color:var(--text-primary)}.member-name{white-space:nowrap}.member-name-input{border:none!important;background:transparent!important;padding:0!important;font-size:.8rem!important;font-weight:500;width:80px;outline:none!important;box-shadow:none!important;border-bottom:1px solid var(--accent-color)!important;border-radius:0!important}.member-remove{display:flex;align-items:center;justify-content:center;width:16px;height:16px;background:transparent;border:none;color:var(--danger-color);cursor:pointer;margin-left:2px;opacity:.6;transition:opacity var(--transition-fast)}.member-remove:hover{opacity:1}.pending-badge{font-size:.6rem;color:var(--text-muted);font-style:italic}.add-member-btn{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:transparent;border:none;color:var(--text-muted);cursor:pointer;transition:color var(--transition-fast)}.add-member-btn:hover{color:var(--text-primary)}.add-member-inline{display:flex;align-items:center;gap:4px}.add-member-inline input{width:140px;padding:4px 8px;font-size:.75rem;border-radius:var(--radius-md)}.add-member-confirm,.add-member-cancel{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;background:transparent;cursor:pointer;transition:color var(--transition-fast)}.add-member-confirm{color:var(--success-color)}.add-member-confirm:hover{color:#15803d}.add-member-cancel{color:var(--text-muted)}.add-member-cancel:hover{color:var(--text-primary)}.member-error{font-size:.7rem;color:var(--danger-color);margin-top:2px}.toolbar{position:fixed;bottom:var(--spacing-lg);left:50%;transform:translate(-50%);display:flex;align-items:center;gap:2px;padding:6px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);z-index:100}.toolbar-group{position:relative;display:flex;align-items:center}.toolbar-divider{width:1px;height:24px;background:var(--border-color);margin:0 var(--spacing-xs)}.toolbar-btn{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:none;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);color:var(--text-secondary);position:relative}.toolbar-btn:hover{background:var(--bg-surface);color:var(--text-primary)}.toolbar-btn:active{transform:scale(.95)}.toolbar-btn.active{background:var(--text-primary);color:#fff}.toolbar-btn.active:hover{background:#000}.toolbar-btn-small{padding:var(--spacing-xs);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-muted);display:flex;align-items:center}.toolbar-btn-small:hover{color:var(--text-primary)}.toolbar-color-dot{width:8px;height:8px;border-radius:var(--radius-full);position:absolute;bottom:6px;right:6px;border:1px solid rgba(0,0,0,.2)}.toolbar-btn.active .toolbar-color-dot{border-color:#ffffff80}.color-picker-dropdown{position:absolute;bottom:calc(100% + var(--spacing-sm));left:50%;transform:translate(-50%);display:flex;gap:var(--spacing-xs);padding:var(--spacing-sm);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.color-option{width:24px;height:24px;border-radius:var(--radius-full);border:2px solid transparent;cursor:pointer;transition:transform var(--transition-fast)}.color-option:hover{transform:scale(1.15)}.color-option.active{border-color:var(--text-primary)}.toolbar-icon{width:20px;height:20px}.toolbar-label{font-size:.8rem;font-weight:500}.toolbar-colors{display:flex;align-items:center;gap:4px;padding:0 var(--spacing-xs)}.toolbar-color-btn{width:20px;height:20px;border-radius:var(--radius-full);border:2px solid transparent;cursor:pointer;transition:all var(--transition-fast)}.toolbar-color-btn:hover{transform:scale(1.15)}.toolbar-color-btn.active{border-color:var(--text-primary);transform:scale(1.15)}.whiteboard-surface{flex:1;position:relative;background:#fafafa;background-image:radial-gradient(circle,#d4d4d4 1px,transparent 1px);background-size:24px 24px;overflow:hidden}.whiteboard-surface.drawing-mode{cursor:crosshair}.whiteboard-surface.erase-mode{cursor:not-allowed}.whiteboard-surface.erase-mode .whiteboard-items{cursor:default}.whiteboard-canvas{position:absolute;inset:0;z-index:1}.whiteboard-items{position:absolute;inset:0;z-index:5}.whiteboard-surface.erase-mode .whiteboard-canvas{z-index:2;pointer-events:auto}.whiteboard-surface.erase-mode .whiteboard-items{z-index:10;pointer-events:none}.whiteboard-surface.erase-mode .whiteboard-items>*{pointer-events:auto}.empty-board{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:var(--text-muted);padding:var(--spacing-2xl);pointer-events:none}.empty-board p:first-child{font-size:1rem;margin-bottom:var(--spacing-xs)}.sticky-note-rnd,.image-item-rnd,.link-item-rnd,.drawing-canvas-rnd{z-index:1}.sticky-note-rnd:hover,.image-item-rnd:hover,.link-item-rnd:hover,.drawing-canvas-rnd:hover{z-index:10!important}.sticky-note{width:100%;height:100%;padding:var(--spacing-md);border-radius:2px;box-shadow:var(--shadow-sticky);display:flex;flex-direction:column;position:relative;cursor:grab;transition:box-shadow var(--transition-base)}.sticky-note:hover{box-shadow:3px 4px 12px #00000026}.sticky-note:active{cursor:grabbing}.sticky-note-content{flex:1;overflow:hidden;word-wrap:break-word}.sticky-note-content p{color:var(--text-primary);font-size:.9rem;line-height:1.5}.sticky-note-edit{display:flex;flex-direction:column;height:100%;gap:var(--spacing-sm)}.sticky-note-edit textarea{flex:1;border:none;background:transparent;resize:none;font-family:inherit;font-size:.9rem;color:var(--text-primary);line-height:1.5}.sticky-note-edit textarea:focus{outline:none}.color-picker{display:flex;gap:var(--spacing-xs)}.color-btn{width:18px;height:18px;border-radius:var(--radius-full);border:2px solid transparent;cursor:pointer;transition:transform var(--transition-fast)}.color-btn:hover{transform:scale(1.2)}.color-btn.active{border-color:var(--text-primary)}.sticky-note-meta{font-size:.65rem;color:#00000059;margin-top:var(--spacing-xs)}.delete-btn{position:absolute;top:-8px;right:-8px;width:22px;height:22px;border-radius:var(--radius-full);background:var(--danger-color);color:#fff;border:2px solid var(--bg-primary);font-size:.9rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;opacity:0;transition:opacity var(--transition-fast)}.sticky-note:hover .delete-btn,.image-item:hover .delete-btn,.link-item:hover .delete-btn,.drawing-canvas-container:hover .delete-btn{opacity:1}.delete-btn:hover{background:#b91c1c}.erase-highlight{outline:3px solid var(--danger-color)!important;outline-offset:2px;box-shadow:0 0 0 6px #dc262633,var(--shadow-lg)!important;cursor:pointer!important;transition:outline .15s ease,box-shadow .15s ease}.erase-highlight:after{content:"";position:absolute;inset:-2px;border-radius:inherit;pointer-events:none;animation:erasePulse 1s ease-in-out infinite}@keyframes erasePulse{0%,to{box-shadow:0 0 #dc262666}50%{box-shadow:0 0 0 4px #dc262600}}.image-item{width:100%;height:100%;position:relative;background:var(--bg-secondary);border-radius:var(--radius-md);box-shadow:var(--shadow-md);overflow:hidden;transition:box-shadow var(--transition-base)}.image-item:hover{box-shadow:var(--shadow-lg)}.image-item img{width:100%;height:100%;object-fit:cover}.link-item{width:100%;height:100%;position:relative;background:var(--bg-secondary);border-radius:var(--radius-md);box-shadow:var(--shadow-md);overflow:hidden;cursor:pointer;transition:all var(--transition-base);border:1px solid var(--border-color)}.link-item:hover{box-shadow:var(--shadow-lg);border-color:var(--border-dark)}.link-content{height:100%;display:flex;flex-direction:column}.link-preview-image{flex:1;overflow:hidden;background:var(--bg-surface)}.link-preview-image img{width:100%;height:100%;object-fit:cover}.link-info{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border-top:1px solid var(--border-color)}.link-icon{font-size:1rem;color:var(--text-muted)}.link-text{flex:1;min-width:0}.link-title{font-weight:500;font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-primary)}.link-description{font-size:.7rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.link-url{font-size:.6rem;color:var(--text-muted)}.drawing-canvas-container{width:100%;height:100%;position:relative;background:var(--bg-secondary);border-radius:var(--radius-md);box-shadow:var(--shadow-md);overflow:hidden;transition:box-shadow var(--transition-base)}.drawing-canvas-container:hover{box-shadow:var(--shadow-lg)}.drawing-canvas{width:100%;height:100%;cursor:crosshair}.drawing-tools{position:absolute;bottom:var(--spacing-sm);left:50%;transform:translate(-50%);display:flex;gap:var(--spacing-xs);padding:var(--spacing-xs);background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);opacity:0;transition:opacity var(--transition-fast)}.drawing-canvas-container:hover .drawing-tools{opacity:1}.clear-btn{width:24px;height:24px;border:none;background:var(--bg-surface);border-radius:var(--radius-sm);cursor:pointer;font-size:.75rem;color:var(--text-secondary);transition:all var(--transition-fast)}.clear-btn:hover{background:var(--border-color);color:var(--text-primary)}.modal-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:var(--bg-secondary);border-radius:var(--radius-xl);padding:var(--spacing-xl);width:100%;max-width:400px;margin:var(--spacing-md);box-shadow:var(--shadow-lg)}.modal h3{font-size:1.125rem;font-weight:600;margin-bottom:var(--spacing-lg)}.modal input{width:100%;margin-bottom:var(--spacing-lg)}.modal-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end}.auth-callback{display:flex;justify-content:center;align-items:center;height:100vh;background:var(--bg-primary)}@media(max-width:640px){.toolbar{bottom:var(--spacing-md);padding:4px}.toolbar-btn{padding:var(--spacing-sm)}.toolbar-label{display:none}.board-header{padding:var(--spacing-sm)}.board-name{display:none}.home-main{padding:var(--spacing-md)}.boards-grid{grid-template-columns:1fr}}.safety-admin-page,.admin-access-page{background:var(--bg-primary)}.admin-access-page{align-items:center;justify-content:center;padding:var(--spacing-xl)}.admin-access-card{width:min(100%,460px);padding:var(--spacing-xl);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.admin-access-card h1{margin:var(--spacing-sm) 0;font-size:1.35rem}.admin-access-card p:not(.section-eyebrow){margin-bottom:var(--spacing-lg);color:var(--text-secondary)}.admin-link-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.safety-admin-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-xl);background:#fffffff5;border-bottom:1px solid var(--border-color);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.safety-admin-wordmark{color:var(--text-primary);font-size:.82rem;font-weight:600;letter-spacing:.11em;text-decoration:none}.safety-admin-kicker{margin-top:2px;color:var(--text-muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}.safety-admin-header-actions{display:flex;align-items:center;gap:var(--spacing-sm)}.safety-admin-header-actions>span{max-width:260px;overflow:hidden;color:var(--text-muted);font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}.safety-admin-main{width:min(100%,1180px);margin:0 auto;padding:var(--spacing-2xl) var(--spacing-xl)}.safety-admin-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.safety-admin-intro h1{margin:var(--spacing-xs) 0;font-size:clamp(1.65rem,3vw,2.35rem);letter-spacing:-.035em}.safety-admin-intro>div:first-child>p:last-child{max-width:650px;color:var(--text-secondary)}.safety-admin-summary{display:flex;gap:var(--spacing-lg);flex-shrink:0;padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md)}.safety-admin-summary span{color:var(--text-muted);font-size:.75rem}.safety-admin-summary strong{display:block;color:var(--text-primary);font-size:1.25rem;font-variant-numeric:tabular-nums}.safety-admin-controls{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color)}.safety-admin-controls label,.safety-resolution-form label{display:flex;flex-direction:column;gap:.35rem;color:var(--text-secondary);font-size:.75rem;font-weight:600}.safety-admin-controls select,.safety-resolution-form select,.safety-resolution-form textarea{min-height:40px;padding:.55rem .7rem;color:var(--text-primary);background:var(--bg-secondary);border:1px solid var(--border-dark);border-radius:var(--radius-sm);font:inherit}.safety-admin-controls select:focus,.safety-resolution-form select:focus,.safety-resolution-form textarea:focus{outline:2px solid var(--accent-light);border-color:var(--accent-color)}.safety-admin-message{padding:var(--spacing-xl);color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md)}.safety-admin-message h2{margin-bottom:var(--spacing-xs);color:var(--text-primary);font-size:1.1rem}.safety-admin-message p{margin-bottom:var(--spacing-md)}.safety-admin-message-error{border-color:#fecaca;background:#fff7f7}.safety-admin-empty{text-align:center}.safety-report-list{display:flex;flex-direction:column;gap:var(--spacing-lg)}.safety-report-card{overflow:hidden;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.safety-report-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.safety-report-card-header time,.safety-report-id{color:var(--text-muted);font-size:.72rem}.safety-report-card-header time{white-space:nowrap}.safety-report-id{margin-top:3px;overflow-wrap:anywhere}.safety-report-title-row{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.safety-report-title-row h2{font-size:1.05rem;font-weight:600}.safety-status{padding:.2rem .5rem;border-radius:var(--radius-full);font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.safety-status-open{color:#991b1b;background:#fee2e2}.safety-status-reviewing{color:#92400e;background:#fef3c7}.safety-status-actioned{color:#166534;background:#dcfce7}.safety-status-dismissed{color:var(--text-secondary);background:var(--bg-primary)}.safety-report-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:var(--spacing-xl);padding:var(--spacing-lg)}.safety-report-facts{display:flex;flex-direction:column;gap:var(--spacing-md)}.safety-report-facts dt,.safety-report-evidence h3{color:var(--text-muted);font-size:.67rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.safety-report-facts dd{margin-top:2px;color:var(--text-primary);font-size:.79rem;overflow-wrap:anywhere}.safety-report-evidence{min-width:0}.safety-report-evidence>p{margin:var(--spacing-xs) 0 var(--spacing-md);color:var(--text-secondary);white-space:pre-wrap;overflow-wrap:anywhere}.safety-report-evidence details{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface)}.safety-report-evidence summary{padding:.65rem .75rem;color:var(--text-secondary);cursor:pointer;font-size:.75rem;font-weight:600}.safety-report-evidence pre{max-height:300px;overflow:auto;padding:.75rem;color:var(--text-secondary);border-top:1px solid var(--border-color);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.7rem;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.safety-resolution-form{display:grid;grid-template-columns:160px 190px minmax(260px,1fr);gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--bg-surface);border-top:1px solid var(--border-color)}.safety-resolution-form select:disabled{color:var(--text-muted);background:var(--bg-primary)}.safety-resolution-note{position:relative}.safety-resolution-note textarea{resize:vertical;font-weight:400;line-height:1.45}.safety-resolution-note small{align-self:flex-end;color:var(--text-muted);font-size:.65rem;font-weight:400}.safety-resolution-actions{grid-column:1 / -1;display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-md)}.safety-resolution-actions p{margin-right:auto;color:var(--text-secondary);font-size:.72rem}@media(max-width:800px){.safety-admin-header,.safety-admin-intro,.safety-admin-controls,.safety-report-card-header,.safety-resolution-actions{align-items:stretch;flex-direction:column}.safety-admin-header-actions{flex-wrap:wrap}.safety-admin-main{padding:var(--spacing-xl) var(--spacing-md)}.safety-admin-summary{align-self:stretch;justify-content:space-around}.safety-report-grid,.safety-resolution-form{grid-template-columns:1fr}.safety-resolution-actions{grid-column:auto}.safety-resolution-actions .btn-primary{width:100%}.safety-report-card-header time{white-space:normal}}:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}button:focus:not(:focus-visible){outline:none}.splash-screen{position:fixed;inset:0;z-index:9999;background:var(--text-primary);display:flex;align-items:center;justify-content:center}.splash-screen.exit{animation:splashExit .4s cubic-bezier(.4,0,1,1) forwards}@keyframes splashExit{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.1)}}.splash-content{display:flex;align-items:center;justify-content:center}.splash-wordmark{position:relative;display:flex;overflow:hidden}.splash-letter{font-size:3.5rem;font-weight:700;letter-spacing:-.04em;color:var(--bg-secondary);opacity:0;transform:translateY(100%);animation:letterSlideIn .5s cubic-bezier(.16,1,.3,1) forwards}@keyframes letterSlideIn{to{opacity:1;transform:translateY(0)}}.splash-shine{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.4) 50%,transparent 100%);animation:shineSweep .8s ease-in-out .5s forwards}@keyframes shineSweep{to{left:100%}}.splash-screen.hold .splash-wordmark{animation:subtlePulse .6s ease-in-out}@keyframes subtlePulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@media(max-width:768px){.splash-letter{font-size:2.5rem}}@media(max-width:480px){.splash-letter{font-size:1.8rem}}.landing-page.hidden{opacity:0}.landing-page.visible{opacity:1;animation:fadeIn .5s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.landing-page{min-height:100vh;display:flex;flex-direction:column;background:var(--bg-primary)}.landing-page main{flex:1}.site-header{position:fixed;top:0;left:0;right:0;z-index:100;background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-color)}.site-header-inner{max-width:1200px;margin:0 auto;padding:var(--spacing-md) var(--spacing-xl);display:flex;justify-content:space-between;align-items:center}.site-logo{font-size:1rem;font-weight:700;color:var(--text-primary);text-decoration:none;letter-spacing:-.01em}.site-nav{display:flex;gap:var(--spacing-lg)}.site-nav-link{background:none;border:none;color:var(--text-secondary);font-size:.9rem;font-weight:500;cursor:pointer;transition:color var(--transition-fast)}.site-nav-link:hover{color:var(--text-primary)}.site-header-actions{display:flex;gap:var(--spacing-sm)}.hero-section-full{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;background:var(--bg-secondary)}.hero-content-full{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xl)}.hero-writing{position:relative;margin-bottom:var(--spacing-sm)}.hero-marker{position:absolute;top:-8px;left:-20px;transform:rotate(-35deg);color:var(--text-primary);opacity:0;z-index:10}.hero-section-full.animated .hero-marker{animation:markerWrite 1.4s cubic-bezier(.25,.1,.25,1) forwards}@keyframes markerWrite{0%{left:-20px;opacity:1}85%{opacity:1}to{left:calc(100% - 8px);opacity:0}}.hero-wordmark-container{position:relative;overflow:hidden}.hero-wordmark{font-size:4rem;font-weight:500;letter-spacing:-.045em;color:var(--text-primary);margin:0;white-space:nowrap;font-feature-settings:"ss01","cv11"}.hero-wordmark-mask{position:absolute;top:0;right:0;bottom:0;width:100%;background:var(--bg-secondary)}.hero-section-full.animated .hero-wordmark-mask{animation:maskReveal 1.4s cubic-bezier(.25,.1,.25,1) forwards}@keyframes maskReveal{to{width:0%}}@keyframes heroReveal{to{opacity:1;transform:translateY(0)}}.hero-decorations{position:absolute;inset:-100px;pointer-events:none}.hero-note{position:absolute;width:52px;height:52px;border-radius:2px;box-shadow:var(--shadow-sticky);opacity:0;transform:scale(.5) rotate(0)}@keyframes notePopIn{to{opacity:1;transform:scale(1) var(--note-rotate)}}.hero-note.note-1{background:var(--sticky-yellow);top:20px;left:-20px;--note-rotate: rotate(-6deg)}.hero-section-full.animated .hero-note.note-1{animation:notePopIn .5s cubic-bezier(.34,1.56,.64,1) 0s forwards}.hero-note.note-2{background:var(--sticky-blue);top:-10px;right:-30px;--note-rotate: rotate(8deg)}.hero-section-full.animated .hero-note.note-2{animation:notePopIn .5s cubic-bezier(.34,1.56,.64,1) .1s forwards}.hero-note.note-3{background:var(--sticky-pink);bottom:50px;right:20px;--note-rotate: rotate(-4deg)}.hero-section-full.animated .hero-note.note-3{animation:notePopIn .5s cubic-bezier(.34,1.56,.64,1) .2s forwards}.hero-image{position:absolute;bottom:40px;left:-10px;width:56px;height:56px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md);display:flex;align-items:center;justify-content:center;color:var(--text-muted);opacity:0;transform:scale(.5)}.hero-section-full.animated .hero-image{animation:notePopIn .5s cubic-bezier(.34,1.56,.64,1) .3s forwards;--note-rotate: rotate(3deg)}.hero-tagline{font-size:1.1rem;color:var(--text-muted);font-weight:400;letter-spacing:.01em;opacity:0;transform:translateY(8px);margin-bottom:var(--spacing-lg)}.hero-section-full.animated .hero-tagline{animation:heroReveal .6s cubic-bezier(.16,1,.3,1) 0s forwards}.hero-cta{display:flex;gap:var(--spacing-md);opacity:0;transform:translateY(10px)}.hero-cta a{text-decoration:none}.hero-section-full.animated .hero-cta{animation:heroReveal .6s cubic-bezier(.16,1,.3,1) 0s forwards}.hero-cta .btn-lg{padding:var(--spacing-md) var(--spacing-2xl);font-size:1rem}.scroll-indicator{position:absolute;bottom:var(--spacing-xl);left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);background:none;border:none;color:var(--text-muted);cursor:pointer;opacity:0;transition:color var(--transition-fast)}.hero-section-full.animated .scroll-indicator{animation:heroReveal .5s ease 0s forwards}.scroll-indicator:hover{color:var(--text-secondary)}.scroll-indicator span{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em}.scroll-indicator svg{animation:scrollBounce 2s ease-in-out infinite}@keyframes scrollBounce{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}.btn-lg{padding:var(--spacing-md) var(--spacing-xl);font-size:1rem}.demo-section{padding:var(--spacing-2xl) var(--spacing-xl);background:var(--bg-primary)}.demo-container{max-width:800px;margin:0 auto}.demo-header{text-align:center;margin-bottom:var(--spacing-xl)}.demo-header h2{font-size:1.75rem;font-weight:700;margin-bottom:var(--spacing-sm);color:var(--text-primary)}.demo-header p{color:var(--text-secondary)}.demo-whiteboard{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden}.demo-surface{position:relative;height:400px;background:#fafafa;background-image:radial-gradient(circle,#d4d4d4 1px,transparent 1px);background-size:24px 24px}.demo-note-rnd{z-index:1}.demo-note-rnd:hover{z-index:10!important}.demo-note{width:100%;height:100%;padding:var(--spacing-md);border-radius:2px;box-shadow:var(--shadow-sticky);cursor:grab;display:flex;align-items:center;justify-content:center;transition:box-shadow var(--transition-base)}.demo-note:hover{box-shadow:3px 4px 12px #00000026}.demo-note:active{cursor:grabbing}.demo-note p{font-size:.9rem;color:var(--text-primary);text-align:center;line-height:1.4}.features-section{padding:var(--spacing-2xl) var(--spacing-xl);background:var(--bg-secondary)}.features-container{max-width:1000px;margin:0 auto}.features-header{text-align:center;margin-bottom:var(--spacing-2xl)}.features-header h2{font-size:2rem;font-weight:700;margin-bottom:var(--spacing-sm);color:var(--text-primary)}.features-header p{color:var(--text-secondary);font-size:1.1rem}.features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-xl)}.feature-card{padding:var(--spacing-xl);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:all var(--transition-base)}.feature-card:hover{border-color:var(--border-dark);box-shadow:var(--shadow-md)}.feature-icon{width:48px;height:48px;background:var(--text-primary);color:#fff;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-md)}.feature-card h3{font-size:1.125rem;font-weight:600;margin-bottom:var(--spacing-sm);color:var(--text-primary)}.feature-card p{color:var(--text-secondary);line-height:1.6}.testimonials-section{padding:var(--spacing-2xl) var(--spacing-xl);background:var(--bg-primary)}.testimonials-container{max-width:1000px;margin:0 auto}.testimonials-header{text-align:center;margin-bottom:var(--spacing-2xl)}.testimonials-header h2{font-size:2rem;font-weight:700;color:var(--text-primary)}.testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-lg)}.testimonial-card{padding:var(--spacing-xl);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.testimonial-card blockquote{font-size:.95rem;line-height:1.6;color:var(--text-primary);margin-bottom:var(--spacing-lg)}.testimonial-author{display:flex;align-items:center;gap:var(--spacing-sm)}.testimonial-avatar{width:40px;height:40px;border-radius:var(--radius-full);background:var(--text-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600}.testimonial-info{display:flex;flex-direction:column}.testimonial-name{font-weight:600;font-size:.9rem;color:var(--text-primary)}.testimonial-role{font-size:.8rem;color:var(--text-muted)}.pricing-section{padding:var(--spacing-2xl) var(--spacing-xl);background:var(--bg-secondary)}.pricing-container{max-width:1000px;margin:0 auto}.pricing-header{text-align:center;margin-bottom:var(--spacing-2xl)}.pricing-header h2{font-size:2rem;font-weight:700;margin-bottom:var(--spacing-sm);color:var(--text-primary)}.pricing-header p{color:var(--text-secondary);font-size:1.1rem}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-lg);align-items:start}.pricing-card{padding:var(--spacing-xl);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);position:relative;transition:all var(--transition-base)}.pricing-card:hover{border-color:var(--border-dark);box-shadow:var(--shadow-md)}.pricing-card.featured{background:var(--text-primary);border-color:var(--text-primary);color:#fff}.pricing-card.featured h3,.pricing-card.featured .price,.pricing-card.featured .pricing-description,.pricing-card.featured li{color:#fff}.pricing-card.featured .period{color:#ffffffb3}.pricing-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:var(--accent-color);color:#fff;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-full);font-size:.75rem;font-weight:600}.pricing-card h3{font-size:1.25rem;font-weight:600;margin-bottom:var(--spacing-md);color:var(--text-primary)}.pricing-price{margin-bottom:var(--spacing-sm)}.pricing-price .price{font-size:2.5rem;font-weight:700;color:var(--text-primary)}.pricing-price .period{font-size:.9rem;color:var(--text-muted)}.pricing-description{color:var(--text-secondary);font-size:.9rem;margin-bottom:var(--spacing-lg)}.pricing-features{list-style:none;margin-bottom:var(--spacing-xl)}.pricing-features li{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) 0;font-size:.9rem;color:var(--text-secondary)}.pricing-features svg{flex-shrink:0;color:var(--success-color)}.pricing-card.featured .pricing-features svg{color:#86efac}.pricing-card a{display:block;text-align:center;text-decoration:none;width:100%}.faq-section{padding:var(--spacing-2xl) var(--spacing-xl);background:var(--bg-primary)}.faq-container{max-width:700px;margin:0 auto}.faq-header{text-align:center;margin-bottom:var(--spacing-2xl)}.faq-header h2{font-size:2rem;font-weight:700;color:var(--text-primary)}.faq-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.faq-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.faq-question{width:100%;padding:var(--spacing-lg);display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);background:none;border:none;cursor:pointer;text-align:left;font-size:1rem;font-weight:500;color:var(--text-primary);transition:background var(--transition-fast)}.faq-question:hover{background:var(--bg-surface)}.faq-question span{flex:1}.faq-chevron{flex-shrink:0;color:var(--text-muted);transition:transform var(--transition-base)}.faq-item.open .faq-chevron{transform:rotate(180deg)}.faq-answer{max-height:0;overflow:hidden;transition:max-height var(--transition-slow)}.faq-item.open .faq-answer{max-height:200px}.faq-answer p{padding:0 var(--spacing-lg) var(--spacing-lg);color:var(--text-secondary);line-height:1.6}.site-footer-minimal{padding:var(--spacing-lg) var(--spacing-xl);background:var(--bg-primary);border-top:1px solid var(--border-color)}.footer-minimal-inner{max-width:1000px;margin:0 auto;display:flex;justify-content:center;align-items:center}.footer-labs{font-size:.75rem;font-weight:600;letter-spacing:.08em;color:var(--text-muted);text-decoration:none;transition:color var(--transition-fast)}.footer-labs:hover{color:var(--text-primary)}@media(max-width:768px){.hero-wordmark{font-size:2.5rem}.hero-note{width:44px;height:44px}.hero-image{width:48px;height:48px}}@media(max-width:640px){.hero-wordmark{font-size:1.6rem}.hero-marker svg{width:20px;height:20px}.hero-tagline{font-size:.9rem}.hero-note{width:36px;height:36px}.hero-decorations{inset:-60px}.hero-image{width:40px;height:40px}.hero-image svg{width:24px;height:24px}.demo-section{padding:var(--spacing-xl) var(--spacing-md)}.demo-surface{height:300px}.demo-header h2{font-size:1.25rem}.footer-minimal-inner{flex-direction:column;gap:var(--spacing-md);text-align:center}}
