*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f6f8fc;--card:#fff;--text:#0f172a;--muted:#64748b;--line:#e2e8f0;--primary:#2563eb;--primary2:#3b82f6;--danger:#c2410c;--danger-bg:#fff1f2;--ok:#15803d;--shadow:0 1px 3px rgba(15,23,42,.08);--radius:20px}body{background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"PingFang SC","Microsoft YaHei",sans-serif;color:var(--text);line-height:1.5}.container{max-width:1120px;margin:0 auto;padding:16px}.card{background:var(--card);border-radius:var(--radius);padding:18px;margin-bottom:12px;box-shadow:var(--shadow);border:1px solid rgba(226,232,240,.75)}.header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.logo{width:96px;height:96px;border-radius:50%;background:#e2e8f0;display:flex;align-items:center;justify-content:center;font-size:44px;overflow:hidden;flex:0 0 auto}.logo.has-logo{font-size:0;color:transparent}.logo img{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%}h1,h2{font-size:24px;line-height:1.25;margin-bottom:6px}.dashboard-compact-header{display:flex;align-items:center;justify-content:flex-start;gap:8px;margin:0 2px 10px;min-height:34px}.dashboard-compact-header .version{margin-left:0}.muted{color:var(--muted);font-size:13px;line-height:1.65}.version{display:inline-flex;align-items:center;border:1px solid #cbd5e1;color:#475569;border-radius:999px;padding:2px 8px;font-size:11px;margin-left:6px;vertical-align:middle;background:#f8fafc}.collapsed-panel summary{cursor:pointer;list-style:none}.collapsed-panel summary::-webkit-details-marker{display:none}.collapsed-panel summary::after{content:"展开";font-size:12px;color:#64748b;border:1px solid #cbd5e1;border-radius:999px;padding:2px 8px;margin-left:8px}.collapsed-panel[open] summary::after{content:"收起"}.collapsed-panel .logo-settings-main,.collapsed-panel .security-settings-grid{margin-top:12px}.section-title-row{display:flex;align-items:center;gap:10px;justify-content:flex-start;margin-bottom:10px;flex-wrap:wrap}.help-toggle{min-height:30px;padding:5px 10px}.help-panel{border:1px dashed #cbd5e1;background:#f8fafc;border-radius:14px;padding:10px 12px;margin:0 0 12px;color:#475569;font-size:12px;line-height:1.65}.help-panel p{margin:0 0 6px}.help-panel p:last-child{margin-bottom:0}.help-settings-stack{display:grid;grid-template-columns:1fr;gap:10px;margin-top:12px}.help-panel .card{margin-bottom:0;background:#fff;border-style:solid;box-shadow:none}.help-panel .section-title{color:#0f172a}.help-panel .field-label{color:#334155}.logo-upload-btn,button{padding:8px 14px;border-radius:16px;border:none;background:var(--primary2);color:#fff;cursor:pointer;font-size:13px;transition:.18s;white-space:nowrap;min-height:36px;font-family:inherit}.logo-upload-btn:hover,button:hover{opacity:.86}button:disabled{opacity:.5;cursor:not-allowed}.btn-outline{background:#fff;color:var(--primary);border:1px solid #cbd5e1}.btn-danger{background:var(--danger-bg);color:var(--danger);border:1px solid #fecdd3}.btn-small{padding:6px 10px;min-height:32px;font-size:12px}input[type=password],input[type=text],input[type=url],select{width:100%;padding:12px;border:1px solid var(--line);border-radius:14px;margin-bottom:12px;font-family:inherit;font-size:14px;background:#fff}.login-box{max-width:480px;margin:40px auto}.login-box .header{margin-bottom:0}.login-header{cursor:pointer;user-select:none}.hidden-trigger{display:none!important}.login-fields{display:none;margin-top:16px}.login-box.login-open .login-fields{display:block}.login-main-btn{width:100%;justify-content:center}.dashboard input[type=password]{max-width:320px}.form input[type=text]{max-width:none}.dashboard{display:none}.field-label{display:block;color:#334155;font-size:13px;font-weight:650;margin:2px 0 6px}.status{font-size:13px;color:#64748b;margin-top:8px;min-height:18px;line-height:1.6;white-space:pre-wrap}.status.ok{color:var(--ok)}.status.error{color:var(--danger)}.dashboard-top-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,auto);gap:16px;align-items:start}.top-note-key-panel{min-width:0}.note-key-grid{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-start}.note-key-grid input[type=password]{width:320px;max-width:100%;margin-bottom:0}.note-key-grid button{min-width:72px;min-height:32px;padding:5px 10px;font-size:12px}.top-new-note-panel{display:flex;align-items:flex-start;justify-content:flex-end;gap:10px;flex-wrap:wrap;align-content:flex-start;border-left:1px solid var(--line);padding-left:16px;min-width:220px}.top-new-note-panel button{min-width:104px}.form{display:none;padding:20px;border-radius:var(--radius);background:#fff;margin-bottom:16px;box-shadow:var(--shadow);border:1px solid rgba(226,232,240,.75)}.actions,.form-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:12px;flex-wrap:wrap}.note-card .actions{margin-top:auto;width:100%;justify-content:flex-start}.notes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px}.downloads-fold{margin-top:18px;margin-bottom:0}.downloads-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;list-style:none;font-size:16px;font-weight:700;color:#334155}.downloads-summary::-webkit-details-marker{display:none}.downloads-count{font-size:12px;font-weight:500;color:#64748b;border:1px solid #cbd5e1;border-radius:999px;padding:2px 8px;background:#f8fafc}.downloads-intro{margin-top:10px;padding-top:10px;border-top:1px dashed #cbd5e1}.downloads-panel{display:grid;grid-template-columns:1fr;gap:10px;margin-top:10px}.download-notice{padding:10px 12px;border:1px dashed #cbd5e1;border-radius:14px;background:#f8fafc}.download-folder{border:1px solid #e2e8f0;border-radius:18px;background:#fff;overflow:hidden}.download-folder .download-folder{border-radius:14px;margin-left:10px}.download-folder-depth-2{border-left:3px solid #e2e8f0}.download-folder-depth-3{border-left:3px solid #cbd5e1}.download-folder-depth-4,.download-folder-depth-5,.download-folder-depth-6{border-left:3px solid #94a3b8}.download-folder-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;cursor:pointer;list-style:none;background:#f8fafc}.download-folder-summary::-webkit-details-marker{display:none}.download-folder-title{font-weight:750;color:#0f172a;word-break:break-word}.download-folder-meta,.download-folder-tip{font-size:12px;color:#64748b;line-height:1.55;word-break:break-all}.download-folder-tip{color:#475569}.download-folder-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.download-folder-files{display:grid;grid-template-columns:1fr;gap:8px;padding:10px;border-top:1px solid #e2e8f0;background:#fff}.download-folder:not([open]) .download-folder-files{display:none}.download-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid #eef2f8;border-radius:16px;padding:12px;background:#f8fafc}.download-child{background:#fff}.download-name{font-weight:700;color:#0f172a;word-break:break-word}.download-desc,.download-hash,.download-meta{font-size:12px;color:#64748b;line-height:1.55;word-break:break-all}.download-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.download-copy{background:#fff;color:var(--primary);border:1px solid #cbd5e1}.notes-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:4px 0 12px}.notes-title{font-size:16px;font-weight:700;margin:0;color:#334155}.category-filter-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.category-filter-bar select{width:auto;min-width:150px;margin-bottom:0;padding:8px 12px}.category-count{font-size:12px;color:#64748b;border:1px solid #cbd5e1;border-radius:999px;padding:4px 10px;background:#f8fafc}.badge-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.category-badge{font-size:11px;background:#f1f5f9;color:#475569;padding:4px 10px;border-radius:20px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detail-category{display:inline-flex;margin-right:8px;vertical-align:middle}.note-card{position:relative;background:#fff;border-radius:20px;padding:16px 18px;transition:.18s;border:1px solid #eef2f8;overflow:hidden;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-direction:column;min-height:156px}.note-card:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(15,23,42,.08)}.note-main{min-width:0;flex:1;cursor:pointer;width:100%}.note-title{font-size:1.05rem;font-weight:650;margin-bottom:6px;word-break:break-word;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.note-main:hover .note-title{color:var(--primary)}.note-time{font-size:12px;color:#94a3b8}.badge{font-size:11px;background:#ecfeff;color:#155e75;padding:4px 10px;border-radius:20px;flex:0 0 auto;white-space:nowrap}.empty_state{text-align:center;padding:40px;color:#94a3b8;background:#fff;border-radius:20px;border:1px dashed #cbd5e1;grid-column:1/-1}.note-detail{display:none;background:#fff;border-radius:20px;padding:20px;margin-bottom:16px;box-shadow:var(--shadow);border:1px solid #eef2f8}.dashboard.detail-page-mode #downloadsBox,.dashboard.detail-page-mode #form,.dashboard.detail-page-mode #notes,.dashboard.detail-page-mode .dashboard-top-layout,.dashboard.detail-page-mode .notes-toolbar{display:none!important}.dashboard.detail-page-mode #noteDetail{min-height:calc(100vh - 120px)}.note-detail.active{display:block}.note-detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;border-bottom:1px solid var(--line);padding-bottom:12px}.note-detail-title{font-size:22px;font-weight:750;word-break:break-word}.note-detail-meta{font-size:12px;color:#94a3b8;margin-top:4px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.note-detail-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;flex:0 0 auto}.note-content{font-size:15px;line-height:1.78;color:#1e293b;overflow-wrap:anywhere}.note-content p{margin:0 0 10px}.note-content h1,.note-content h2,.note-content h3{margin:14px 0 8px}.note-content ol,.note-content ul{padding-left:24px;margin:8px 0}.note-content blockquote{border-left:4px solid #cbd5e1;padding-left:12px;color:#475569;margin:10px 0}.note-content img{max-width:100%;height:auto;border-radius:10px}.note-content pre{background:#0f172a;color:#e5e7eb;padding:12px;border-radius:10px;overflow:auto}.note-content table{border-collapse:collapse;width:100%;overflow:auto}.note-content td,.note-content th{border:1px solid #e5e7eb;padding:6px}.editor-toolbar{display:flex;gap:6px;flex-wrap:wrap;padding:10px;border:1px solid var(--line);border-radius:14px 14px 0 0;background:#f8fafc}.editor{min-height:420px;border:1px solid var(--line);border-top:0;border-radius:0 0 14px 14px;padding:14px;outline:0;background:#fff;overflow:auto}.editor:empty:before{content:attr(data-placeholder);color:#94a3b8}.editor img{max-width:100%;height:auto;border-radius:10px}.editor table{border-collapse:collapse;width:100%}.editor td,.editor th{border:1px solid #e5e7eb;padding:6px}.editor pre{background:#0f172a;color:#e5e7eb;padding:12px;border-radius:10px;overflow:auto}.security-settings-grid{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;justify-content:flex-start}.security-settings-grid>div{flex:0 0 210px;max-width:100%}.security-settings-grid input[type=password]{width:100%;max-width:210px;margin-bottom:0}.security-settings-grid button{justify-self:start}.logo-settings-main{display:block}.section-title{font-size:16px;font-weight:700;margin-bottom:0;white-space:nowrap;flex:0 0 auto}.logo-setting-row{display:flex;align-items:flex-end;gap:10px;margin-top:0;min-width:0;flex-wrap:wrap}.logo-setting-row input[type=url]{width:360px;max-width:100%;margin-bottom:0;min-width:0}.hidden-file-input,.logo-file-input{display:none}.logo-upload-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid #cbd5e1;background:#fff;color:var(--primary)}@media (max-width:980px){.notes{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-top-layout{grid-template-columns:1fr}.top-new-note-panel{border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:14px;justify-content:flex-start}}@media (max-width:860px){.download-folder-summary,.download-item{grid-template-columns:1fr}.download-actions,.download-folder-actions{justify-content:flex-start}.security-settings-grid>div{flex-basis:260px}.logo-setting-row input[type=url]{width:320px}.top-new-note-panel{display:flex;gap:10px;justify-content:flex-start}.top-new-note-panel button{min-width:104px}.section-title{white-space:normal}}@media (max-width:640px){.notes{grid-template-columns:1fr}.notes-toolbar{align-items:flex-start}.category-filter-bar,.category-filter-bar select{width:100%}.container{padding:12px}.card{padding:14px;border-radius:18px}.logo{width:76px;height:76px;font-size:34px}.header{flex-wrap:wrap;justify-content:center;text-align:center}.dashboard-compact-header{justify-content:flex-start}.dashboard-top-layout{gap:12px}.top-new-note-panel{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-start}.note-key-grid{display:grid;grid-template-columns:max-content max-content;justify-content:flex-start;align-items:center;gap:8px}.note-key-grid input[type=password]{grid-column:1/-1;width:100%;max-width:none;margin-bottom:0}.note-key-grid button{width:auto;min-width:68px;min-height:34px;padding:6px 9px;font-size:12px;justify-self:start}.logo-setting-row,.security-settings-grid{display:grid;grid-template-columns:1fr;gap:8px}.security-settings-grid>div{width:100%;flex-basis:auto}.dashboard input[type=password],.logo-setting-row input[type=url],.security-settings-grid input[type=password]{width:100%;max-width:none}.top-new-note-panel button{width:auto;min-width:88px;flex:0 0 auto;padding:8px 12px}.logo-setting-row button,.logo-upload-btn,.security-settings-grid button{width:100%;min-width:0}.note-card{padding:14px;align-items:flex-start;flex-direction:column}.note-card .actions{width:100%;justify-content:flex-start}.note-detail-header{flex-direction:column}.note-detail-actions{justify-content:flex-start}.logo-upload-btn,button{min-height:44px}.editor{min-height:320px}h1,h2{font-size:22px}.version{margin-left:4px}}.help-panel[hidden]{display:none!important}