:root{--bg: #f5f6f8;--bg-elevated: #eef0f4;--bg-card: #ffffff;--border: #e3e6ea;--border-strong: #cdd2da;--text: #1a1d24;--text-muted: #656c7a;--accent: #4f5bd5;--accent-hover: #3f4bc0;--accent-contrast: #ffffff;--danger: #d64545;--success: #2e9e50;--radius: 12px;--radius-sm: 8px;--shadow: 0 8px 24px rgba(20, 24, 40, .12);--content-width: 960px}:root[data-theme=dark]{--bg: #0f1117;--bg-elevated: #171a23;--bg-card: #1b1f2a;--border: #2a2f3d;--border-strong: #3a4152;--text: #e6e8ee;--text-muted: #9aa2b1;--accent: #6d7cff;--accent-hover: #808dff;--accent-contrast: #ffffff;--danger: #ff6b6b;--success: #4ad07f;--shadow: 0 8px 24px rgba(0, 0, 0, .35)}body{background:var(--bg);color:var(--text)}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}.app{min-height:100vh}.site-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:0 24px;height:60px;background:color-mix(in srgb,var(--bg) 85%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}.header-left{display:flex;align-items:center;gap:24px}.brand{font-weight:700;font-size:1.15rem;letter-spacing:-.01em;color:var(--text)}.brand:hover{color:var(--text)}.nav{display:flex;gap:4px}.nav-link{padding:6px 10px;border-radius:var(--radius-sm);color:var(--text-muted);font-size:.9rem;font-weight:500}.nav-link:hover,.nav-link.active{color:var(--text);background:var(--bg-elevated)}.header-right{display:flex;align-items:center;gap:14px}.user-menu{position:relative}.avatar-btn{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;border:1px solid transparent;background:var(--accent);color:var(--accent-contrast);font-size:.8rem;font-weight:700;letter-spacing:.02em;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s ease,box-shadow .15s ease}.avatar-btn:hover{background:var(--accent-hover)}.avatar-btn[aria-expanded=true]{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 30%,transparent)}.user-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;padding:6px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:2px;z-index:20}.user-menu-head{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-bottom:1px solid var(--border);margin-bottom:4px}.user-menu-name{font-size:.9rem;font-weight:600;color:var(--text)}.user-menu-email{font-size:.8rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis}.user-menu-item{text-align:left;padding:8px 10px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text);font-size:.9rem;font-weight:500;cursor:pointer}.user-menu-item:hover{background:var(--bg-elevated)}.content{max-width:var(--content-width);margin:0 auto;padding:32px 24px 64px}.page{display:flex;flex-direction:column;gap:20px}.page-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.page-head h1{margin:0;font-size:1.6rem;letter-spacing:-.02em}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius)}.muted{color:var(--text-muted)}.centered-note{display:grid;place-items:center;min-height:100vh;color:var(--text-muted)}.error-text{color:var(--danger);margin:0;font-size:.92rem}.saved-note{color:var(--success);font-size:.9rem;font-weight:600}.badge{display:inline-block;padding:2px 10px;font-size:.78rem;color:var(--text-muted);background:var(--bg-elevated);border:1px solid var(--border);border-radius:999px}.breadcrumb{display:flex;align-items:center;gap:8px;font-size:.9rem;color:var(--text-muted)}.breadcrumb .sep{opacity:.5}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 16px;font-size:.92rem;font-weight:600;border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;transition:background .15s ease,border-color .15s ease,opacity .15s ease;-webkit-user-select:none;user-select:none}.btn:disabled,.btn.is-busy{opacity:.6;cursor:default}.btn-primary{background:var(--accent);color:var(--accent-contrast)}.btn-primary:hover:not(:disabled):not(.is-busy){background:var(--accent-hover);color:var(--accent-contrast)}.btn-ghost{background:transparent;color:var(--text);border-color:var(--border-strong)}.btn-ghost:hover{background:var(--bg-elevated);color:var(--text)}.btn-link{background:none;border:none;padding:0;font:inherit;font-weight:600;font-size:.9rem;color:var(--accent);cursor:pointer}.btn-link:hover{color:var(--accent-hover)}.btn-link.danger{color:var(--danger)}.btn-link:disabled{opacity:.5;cursor:default}.confirm-inline{display:inline-flex;gap:12px;align-items:center}input[type=text],input[type=email],input[type=password]{width:100%;padding:10px 12px;font-size:.95rem;color:var(--text);background:var(--bg-elevated);border:1px solid var(--border-strong);border-radius:var(--radius-sm);outline:none;transition:border-color .15s ease}input:focus{border-color:var(--accent)}.checkbox{display:inline-flex;align-items:center;gap:6px;font-size:.9rem;color:var(--text-muted);white-space:nowrap;cursor:pointer}.checkbox input{width:auto}.inline-form{display:flex;gap:12px;padding:16px;align-items:center}.inline-form input{flex:1}.segmented{display:inline-flex;border:1px solid var(--border-strong);border-radius:var(--radius-sm);overflow:hidden}.segmented button{padding:7px 16px;background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:.85rem;font-weight:600}.segmented button+button{border-left:1px solid var(--border-strong)}.segmented button.active{background:var(--accent);color:var(--accent-contrast)}.auth-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:24px}.auth-card{width:100%;max-width:380px;padding:28px;display:flex;flex-direction:column;gap:16px;box-shadow:var(--shadow)}.auth-title{margin:0 0 4px;font-size:1.35rem;text-align:center;letter-spacing:-.01em}.auth-subtitle{margin:-8px 0 4px;text-align:center;font-size:.9rem;color:var(--text-muted)}.field{display:flex;flex-direction:column;gap:6px;font-size:.85rem;color:var(--text-muted)}.field-row{display:flex;gap:12px}.field-row .field{flex:1;min-width:0}.public-controls{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.project-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.project-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;color:var(--text);transition:border-color .15s ease,transform .1s ease}.project-card:hover{border-color:var(--accent);color:var(--text);transform:translateY(-1px)}.project-name{font-weight:600}.doc-table{width:100%;border-collapse:collapse;overflow:hidden}.doc-table th,.doc-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--border);font-size:.92rem;vertical-align:top}.doc-table th{color:var(--text-muted);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;background:var(--bg-elevated)}.doc-table tr:last-child td{border-bottom:none}.doc-name{font-weight:600;word-break:break-word}.actions-col{white-space:nowrap}.link-action+.link-action{margin-left:14px}.doc-table td input[type=email],.doc-table td input[type=password]{margin-bottom:6px}.admin-create{display:flex;gap:12px;padding:16px;align-items:center;flex-wrap:wrap}.admin-create input[type=text],.admin-create input[type=email],.admin-create input[type=password]{flex:1;min-width:160px}.account-info{margin:0;display:flex;flex-direction:column;gap:12px}.account-info>div{display:flex;flex-direction:column;gap:2px}.account-info dt{font-size:.8rem;color:var(--text-muted)}.account-info dd{margin:0;font-size:.95rem;color:var(--text);font-weight:500}.settings-section{padding:20px 24px;display:flex;flex-direction:column;gap:12px;align-items:flex-start}.settings-section h2{margin:0;font-size:.95rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.doc-title{font-size:1.35rem;word-break:break-word}.markdown-body{padding:28px 32px;overflow-x:auto;line-height:1.65}.markdown-body h1,.markdown-body h2,.markdown-body h3{letter-spacing:-.01em;margin-top:1.4em}.markdown-body table{border-collapse:collapse;width:100%;margin:1em 0}.markdown-body th,.markdown-body td{border:1px solid var(--border-strong);padding:6px 10px}.markdown-body code{background:var(--bg-elevated);padding:1px 6px;border-radius:4px;font-size:.88em}.markdown-body pre{background:var(--bg-elevated);padding:14px;border-radius:var(--radius-sm);overflow-x:auto}.markdown-body img{max-width:100%}:root{font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100vh}
