*{margin:0;padding:0;box-sizing:border-box}:root,[data-theme=dark]{--bg: #0f1117;--bg-card: #1a1d27;--bg-input: #252836;--bg-subtle: #1e2130;--border: #2d3042;--text: #e4e6f0;--text-dim: #8b8fa3;--primary: #5865f2;--primary-hover: #4752c4;--primary-bg: var(--primary-bg);--primary-tag: var(--primary-tag);--success: #3ba55c;--success-bg: var(--success-bg);--danger: #ed4245;--danger-bg: var(--danger-bg);--warning: #faa61a}[data-theme=light]{--bg: #f5f6fa;--bg-card: #ffffff;--bg-input: #f0f1f5;--bg-subtle: #f8f9fc;--border: #d8dae5;--text: #1a1d27;--text-dim: #6b7084;--primary: #4752c4;--primary-hover: #3b44a8;--primary-bg: rgba(71, 82, 196, .08);--primary-tag: rgba(71, 82, 196, .12);--success: #2d8544;--success-bg: rgba(45, 133, 68, .1);--danger: #d33235;--danger-bg: rgba(211, 50, 53, .1);--warning: #e09100}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);line-height:1.5}.loading{display:flex;align-items:center;justify-content:center;height:100vh;font-size:1.2rem;color:var(--text-dim)}.login-page{display:flex;align-items:center;justify-content:center;height:100vh}.login-card{text-align:center;background:var(--bg-card);padding:3rem;border-radius:12px;border:1px solid var(--border)}.login-card h1{font-size:2rem;margin-bottom:.5rem}.login-card p{color:var(--text-dim);margin-bottom:2rem}.app{display:flex;min-height:100vh}.sidebar{width:220px;background:var(--bg-card);border-right:1px solid var(--border);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0}.sidebar-header{padding:1.2rem;border-bottom:1px solid var(--border)}.sidebar-header h2{font-size:1.1rem}.nav-links{list-style:none;padding:.5rem 0;flex:1}.nav-links a{display:block;padding:.6rem 1.2rem;color:var(--text-dim);text-decoration:none;font-size:.9rem;transition:background .15s,color .15s}.nav-links a:hover{background:var(--bg-input);color:var(--text)}.nav-links a.active{color:var(--primary);background:var(--primary-bg);border-right:3px solid var(--primary)}.nav-links a.external-link:after{content:" ↗";font-size:.75em}.sidebar-footer{padding:1rem;border-top:1px solid var(--border)}.user-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.user-name{font-size:.85rem;font-weight:500}.user-role{font-size:.75rem;color:var(--text-dim);background:var(--bg-input);padding:.1rem .5rem;border-radius:4px}.content{flex:1;margin-left:220px;padding:2rem}.btn{display:inline-block;padding:.6rem 1.2rem;border-radius:6px;border:none;cursor:pointer;font-size:.9rem;text-decoration:none;transition:background .15s}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover)}.btn-sm{padding:.3rem .8rem;font-size:.8rem;background:var(--bg-input);color:var(--text-dim);border:1px solid var(--border)}.btn-sm:hover{background:var(--border);color:var(--text)}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:1.2rem}.card h3{font-size:.85rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.card .value{font-size:1.8rem;font-weight:600}.grid{display:grid;gap:1rem}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}.page-header{margin-bottom:1.5rem}.page-header h1{font-size:1.5rem}input,select{background:var(--bg-input);border:1px solid var(--border);color:var(--text);padding:.5rem .8rem;border-radius:6px;font-size:.9rem;width:100%}input:focus,select:focus{outline:none;border-color:var(--primary)}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.6rem .8rem;border-bottom:1px solid var(--border)}th{color:var(--text-dim);font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}.result-item{padding:.8rem;border-bottom:1px solid var(--border)}.result-item:last-child{border-bottom:none}.result-meta{font-size:.8rem;color:var(--text-dim);margin-bottom:.3rem}.result-content{font-size:.9rem;white-space:pre-wrap;word-break:break-word}.channel-tag{background:var(--primary-tag);color:var(--primary);padding:.1rem .4rem;border-radius:3px;font-size:.75rem}.settings-group{margin-bottom:2rem}.settings-group h2{font-size:1.1rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}.setting-row{display:flex;align-items:center;gap:1rem;padding:.6rem 0}.setting-label{flex:0 0 200px;font-size:.9rem}.setting-desc{font-size:.75rem;color:var(--text-dim)}.setting-value{flex:1}.setting-value input{max-width:400px}.badge{display:inline-block;padding:.15rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.badge-scheduled{background:var(--primary-tag);color:var(--primary)}.badge-completed{background:var(--success-bg);color:var(--success)}.badge-cancelled{background:var(--danger-bg);color:var(--danger)}.markdown-content h2{font-size:1.2rem;margin:2rem 0 .75rem;padding-bottom:.4rem;border-bottom:1px solid var(--border)}.markdown-content h2:first-child{margin-top:0}.markdown-content h3{font-size:1rem;margin:1.5rem 0 .5rem;text-transform:none;letter-spacing:normal;color:var(--text)}.markdown-content p{margin:.4rem 0;line-height:1.7}.markdown-content ul,.markdown-content ol{margin:.5rem 0;padding-left:1.5rem}.markdown-content li{margin:.3rem 0;line-height:1.6}.markdown-content code{background:var(--bg-input);padding:.15rem .4rem;border-radius:3px;font-size:.85em;font-family:SF Mono,Cascadia Code,Consolas,monospace}.markdown-content a{color:var(--primary);text-decoration:none}.markdown-content a:hover{text-decoration:underline}.markdown-content .table-scroll{overflow-x:auto;margin:.75rem 0}.markdown-content table{border:1px solid var(--border);border-radius:6px;border-collapse:separate;border-spacing:0;overflow:hidden}.markdown-content th{background:var(--bg-input);font-weight:600;color:var(--text);text-transform:none;letter-spacing:normal;font-size:.85rem}.markdown-content td{font-size:.9rem}.markdown-content th,.markdown-content td{padding:.5rem .75rem;border-bottom:1px solid var(--border);white-space:nowrap}.markdown-content th:first-child,.markdown-content td:first-child{font-weight:500}.markdown-content tbody tr:last-child td{border-bottom:none}.markdown-content tbody tr:hover{background:var(--bg-subtle)}.markdown-content strong{font-weight:600}.mail-list{display:flex;flex-direction:column}.mail-row{display:flex;align-items:center;gap:.75rem;padding:.6rem 1rem;border-bottom:1px solid var(--border);cursor:pointer;transition:background .1s}.mail-row:last-child{border-bottom:none}.mail-row:hover{background:var(--bg-input)}.mail-sender{flex:0 0 160px;font-weight:500;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mail-content{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mail-subject{font-size:.9rem}.mail-date{flex:0 0 auto;font-size:.8rem;color:var(--text-dim);white-space:nowrap}.topbar,.sidebar-overlay{display:none}@media(max-width:768px){.topbar{display:flex;align-items:center;justify-content:space-between;position:fixed;top:0;left:0;right:0;height:48px;padding:0 .8rem;background:var(--bg-card);border-bottom:1px solid var(--border);z-index:1000}.topbar-title{font-weight:600;font-size:1rem}.topbar-menu{display:flex;flex-direction:column;justify-content:center;gap:4px;background:none;border:none;cursor:pointer;padding:8px 4px}.topbar-menu span{display:block;width:20px;height:2px;background:var(--text);border-radius:1px;transition:transform .2s,opacity .2s}.sidebar{width:260px;transform:translate(-100%);transition:transform .25s ease;z-index:1001}.sidebar.open{transform:translate(0)}.sidebar-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:1000}.content{margin-left:0;padding:1rem;padding-top:calc(48px + 1rem)}.card{overflow-x:auto}.grid-4{grid-template-columns:repeat(2,1fr)}.grid-3,.grid-2{grid-template-columns:1fr}input,select{max-width:100%!important}.page-header{flex-wrap:wrap}.setting-row{flex-direction:column;align-items:flex-start}.setting-label{flex:none}.setting-value{width:100%}.mail-row{flex-wrap:wrap;padding:.75rem .8rem;gap:.25rem}.mail-sender{flex:1 1 auto;min-width:0}.mail-date{flex:0 0 auto}.mail-content{flex:0 0 100%;color:var(--text-dim);font-size:.85rem}}@media(max-width:480px){.grid-4{grid-template-columns:1fr}}
