.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#edf0f4;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.login-card{background:#fff;border-radius:12px;box-shadow:0 4px 24px #0000001a;padding:48px 44px 44px;width:100%;max-width:400px}.login-logo{display:flex;align-items:center;gap:10px;margin-bottom:28px;justify-content:center}.login-logo-icon{width:38px;height:38px;background:#1e293b;color:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;letter-spacing:-.5px}.login-logo-text{font-size:22px;font-weight:700;color:#2ea87d;letter-spacing:-.3px}.login-title{text-align:center;font-size:16px;font-weight:600;color:#374151;margin:0 0 28px}.login-form{display:flex;flex-direction:column;gap:18px}.login-field{display:flex;flex-direction:column;gap:6px}.login-field label{font-size:13px;font-weight:600;color:#374151}.login-field input{padding:10px 13px;border:1.5px solid #d1d5db;border-radius:7px;font-size:14px;color:#111827;outline:none;transition:border-color .15s,box-shadow .15s;background:#fff}.login-field input:focus{border-color:#3898ec;box-shadow:0 0 0 3px #3898ec26}.login-field input::placeholder{color:#9ca3af}.login-field input:disabled{background:#f9fafb;color:#9ca3af}.login-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;border-radius:7px;padding:10px 13px;font-size:13px;font-weight:500}.login-btn{margin-top:4px;padding:11px;background:#2ea87d;color:#fff;border:none;border-radius:7px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s,opacity .15s}.login-btn:hover:not(:disabled){background:#334155}.login-btn:disabled{opacity:.55;cursor:not-allowed}.login-btn.loading{background:#3898ec;opacity:1;cursor:wait}.sidebar{width:210px;min-width:210px;background:#1e293b;display:flex;flex-direction:column;height:100vh;transition:width .2s ease,min-width .2s ease;overflow:hidden}.sidebar.collapsed{width:60px;min-width:60px}.sidebar-logo{padding:16px 14px;display:flex;align-items:center;justify-content:space-between;gap:8px}.logo-box{border:1.5px solid rgba(255,255,255,.3);border-radius:4px;padding:6px 10px;text-align:center;flex-shrink:0}.logo-text-top{font-size:13px;font-weight:700;color:#fff;letter-spacing:2px;line-height:1}.logo-divider{height:1px;background:#ffffff4d;margin:3px 0}.logo-text-bottom{font-size:8px;font-weight:600;color:#fffc;letter-spacing:3px;line-height:1}.collapsed .logo-box{display:none}.collapse-btn{background:none;border:none;color:#ffffff80;font-size:18px;cursor:pointer;padding:4px;transition:color .15s;flex-shrink:0}.collapse-btn:hover{color:#fff}.sidebar-nav{flex:1;padding:4px 8px}.nav-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 12px;border:none;background:none;color:#ffffffb3;font-size:14px;font-weight:500;font-family:inherit;cursor:pointer;border-radius:6px;transition:all .15s;text-align:left;position:relative}.nav-item:hover{background:#ffffff14;color:#fff}.nav-item.active{background:#3898ec33;color:#fff}.nav-icon{display:flex;align-items:center;justify-content:center;width:20px;flex-shrink:0}.nav-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-badge{font-size:11px;font-weight:600;padding:1px 8px;border-radius:10px;line-height:18px;flex-shrink:0}.nav-badge.green{background:#22c55e;color:#fff}.nav-badge.red{background:#e74c3c;color:#fff}.nav-external{color:#fff6;display:flex;align-items:center;margin-left:auto}.sidebar-separator{height:1px;background:#ffffff1a;margin:4px 20px}.sidebar-bottom-nav{padding:4px 8px}.sidebar-whats-new{padding:12px 20px;display:flex;align-items:center;gap:8px;color:#fff9;font-size:13px;font-weight:500;cursor:pointer;border-top:1px solid rgba(255,255,255,.08);margin-top:8px}.sidebar-whats-new:hover{color:#fff}.whats-new-icon{font-size:14px}.collapsed .nav-item{justify-content:center;padding:9px}.collapsed .sidebar-nav,.collapsed .sidebar-bottom-nav{padding:4px}.collapsed .sidebar-separator{margin:4px 8px}.topbar{height:56px;background:#fff;border-bottom:1px solid #e2e6ec;display:flex;align-items:center;justify-content:space-between;padding:0 24px;flex-shrink:0}.topbar-breadcrumb{display:flex;align-items:center;gap:8px;font-size:15px}.breadcrumb-icon{font-size:14px}.breadcrumb-org{font-weight:500;color:#1a1a2e}.breadcrumb-sep{color:#ccc}.breadcrumb-page{font-weight:600;color:#1a1a2e}.topbar-right{display:flex;align-items:center;gap:16px}.topbar-settings-link{display:flex;align-items:center;gap:6px;padding:7px 14px;border-radius:6px;font-size:13px;font-weight:500;color:#5a5d72;text-decoration:none;border:1px solid #dde1e8;background:#fff;transition:all .15s}.topbar-settings-link:hover{border-color:#4a6cf7;color:#4a6cf7}.topbar-add-btn{width:40px;height:40px;border-radius:50%;background:#3b82f6;color:#fff;border:none;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-weight:300;transition:background .15s}.topbar-add-btn:hover{background:#2563eb}.topbar-avatar{width:36px;height:36px;border-radius:50%;overflow:hidden;cursor:pointer}.topbar-avatar img{width:100%;height:100%;object-fit:cover}.app-layout{display:flex;height:100vh;overflow:hidden}.main-area{flex:1;display:flex;flex-direction:column;min-width:0}.content-area{flex:1;background:#edf0f4;overflow-y:auto}.aftercare-text-page{height:100%;display:flex;flex-direction:column}#aftercare-text-root{flex:1;height:100%}.placeholder-page{display:flex;align-items:center;justify-content:center;height:100%}.placeholder-content{text-align:center;color:#8b8fa3}.placeholder-icon{font-size:48px;margin-bottom:16px}.placeholder-content h2{font-size:20px;font-weight:600;color:#1a1a2e;margin-bottom:8px;text-transform:capitalize}.placeholder-content p{font-size:14px}.obit-page{padding:20px 24px}.obit-search-bar{position:relative;margin-bottom:16px}.obit-search-input{width:100%;padding:10px 40px 10px 16px;border:1px solid #dde1e8;border-radius:6px;font-size:14px;font-family:inherit;background:#fff;outline:none;transition:border-color .15s}.obit-search-input:focus{border-color:#3b82f6}.obit-search-icon{position:absolute;right:14px;top:50%;transform:translateY(-50%)}.obit-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.obit-count{font-size:13px;color:#5a5d72}.obit-toolbar-right{display:flex;align-items:center;gap:16px}.obit-toggle{display:flex;align-items:center;gap:8px;font-size:13px;color:#5a5d72;cursor:pointer}.toggle-track{width:36px;height:20px;background:#dde1e8;border-radius:10px;position:relative;display:inline-block}.toggle-knob{width:16px;height:16px;background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000026}.obit-dot-red{color:#e74c3c;font-size:14px}.obit-location-select{padding:8px 32px 8px 12px;border:1px solid #dde1e8;border-radius:6px;font-size:13px;font-family:inherit;background:#fff;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%235a5d72' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;cursor:pointer}.obit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.obit-card{background:#fff;border:1px solid #e2e6ec;border-radius:10px;padding:20px 16px 12px;text-align:center;position:relative;cursor:pointer;transition:box-shadow .15s}.obit-card:hover{box-shadow:0 2px 12px #00000014}.obit-card-dot{position:absolute;top:12px;left:14px;color:#e74c3c;font-size:10px}.obit-card-pin{position:absolute;top:10px;right:14px;color:#f59e0b;font-size:16px}.obit-card-pin.unpinned{color:#ccc}.obit-card-photo{width:72px;height:72px;border-radius:50%;margin:0 auto 10px;overflow:hidden;background:#e2e6ec;display:flex;align-items:center;justify-content:center}.obit-card-initials{font-size:20px;font-weight:600;color:#8b8fa3}.obit-card-name{font-size:14px;font-weight:600;color:#1a1a2e;margin-bottom:2px}.obit-card-date{font-size:12px;color:#8b8fa3;margin-bottom:6px}.obit-card-status{display:inline-block;font-size:11px;font-weight:600;padding:2px 10px;border-radius:10px;margin-bottom:12px}.obit-card-status.published{color:#22c55e;background:#f0fdf4}.obit-card-status.draft{color:#eab308;background:#fefce8}.obit-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:10px;border-top:1px solid #f0f2f5}.obit-card-location{font-size:11px;color:#8b8fa3}.obit-card-actions{display:flex;gap:6px;font-size:12px;opacity:.5}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;-webkit-font-smoothing:antialiased}body{overflow:hidden}
