.theme-switching,.theme-switching *,.theme-switching *:before,.theme-switching *:after{transition:none!important}:root{--bg: #ffffff;--bg-elevated: #ffffff;--bg-strong: #f8fafb;--bg-soft: rgba(88, 200, 242, .08);--surface-border: #e8eef2;--surface-border-strong: #d0dbe3;--text: #1a1a1a;--text-soft: #5a6872;--text-faint: #94a3b0;--accent: #58c8f2;--accent-soft: rgba(88, 200, 242, .1);--accent-strong: #3ab5e6;--accent-hover: rgba(88, 200, 242, .16);--highlight: #3ab5e6;--danger: #f0a2b2;--danger-button: #ef4444;--danger-button-hover: #dc2626;--danger-soft: rgba(240, 162, 178, .12);--danger-surface: #fef2f5;--danger-border: #f0c8d2;--success: #10b981;--success-soft: rgba(16, 185, 129, .1);--glass: rgba(255, 255, 255, .85);--glass-border: rgba(232, 238, 242, .6);--ring: rgba(88, 200, 242, .2);--shadow-soft: 0 2px 8px rgba(0, 0, 0, .06);--shadow-panel: 0 8px 32px rgba(0, 0, 0, .08);--shadow: 0 2px 8px rgba(0, 0, 0, .06);--radius-xl: 28px;--radius-lg: 22px;--radius-md: 16px;--radius-sm: 12px;--button-text: #ffffff;--scrollbar-thumb: #d0dbe3;--scrollbar-thumb-hover: #b8c8d4}:root[data-theme=dark]{--bg: #080808;--bg-elevated: #141414;--bg-strong: #141414;--bg-soft: rgba(255, 233, 157, .08);--surface-border: #222222;--surface-border-strong: #333333;--text: #ececec;--text-soft: #999999;--text-faint: #666666;--accent: #ffe99d;--accent-soft: rgba(255, 233, 157, .1);--accent-strong: #ffb800;--accent-hover: rgba(255, 233, 157, .18);--highlight: #ffb800;--danger: #dc2626;--danger-soft: rgba(220, 38, 38, .14);--danger-surface: #1f0a0a;--danger-border: #4b1515;--success: #22c55e;--success-soft: rgba(52, 211, 153, .14);--glass: rgba(14, 14, 14, .85);--glass-border: rgba(34, 34, 34, .6);--ring: rgba(255, 233, 157, .12);--shadow-soft: 0 2px 8px rgba(0, 0, 0, .4);--shadow-panel: 0 8px 32px rgba(0, 0, 0, .6);--shadow: 0 2px 8px rgba(0, 0, 0, .4);--button-text: #080808;--scrollbar-thumb: #3a3a3a;--scrollbar-thumb-hover: #525252}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;min-height:100%}body{font-family:PingFang SC,HarmonyOS_Regular,Helvetica Neue,Microsoft YaHei,sans-serif;color:var(--text);background:var(--bg)}.app{max-width:1100px;margin:0 auto;padding:20px 16px 0;min-height:100vh;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;justify-content:space-between;padding:4px 0 24px}.topbar-actions{display:flex;align-items:center;gap:10px}.brand{display:flex;align-items:center;gap:12px}.logo{font-size:28px}.brand h1{margin:0;font-size:22px;letter-spacing:-.02em;color:var(--text)}.brand small{color:var(--text-faint)}.controls{display:flex;gap:12px;align-items:center;margin-bottom:22px;flex-wrap:wrap}.seg{display:inline-flex;background:var(--bg-strong);border:1px solid var(--surface-border);border-radius:999px;padding:3px}.seg button{border:0;background:transparent;color:var(--text-soft);padding:7px 18px;border-radius:999px;font-size:14px;transition:background-color .16s ease,color .16s ease}.seg button.active{background:var(--accent);color:var(--button-text)}input,textarea,select{width:100%;border-radius:var(--radius-sm);border:1px solid var(--surface-border);background:var(--bg-strong);color:var(--text);padding:.7rem .9rem;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--ring)}.search{flex:1;min-width:160px}select{width:auto}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}.card{text-align:left;background:var(--bg-elevated);border:1px solid var(--surface-border);border-radius:var(--radius-md);padding:14px;color:var(--text);display:flex;flex-direction:column;gap:10px;box-shadow:var(--shadow-soft);transition:border-color .16s ease,transform .12s ease,box-shadow .16s ease}.card:hover{border-color:var(--accent);box-shadow:var(--shadow-panel);transform:translateY(-2px)}.card-head{display:flex;align-items:center;gap:8px}.card-icon{font-size:20px}.card-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-desc{margin:0;color:var(--text-soft);font-size:13px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:54px}.card-foot{display:flex;justify-content:space-between;font-size:12px;color:var(--text-faint)}.wave-canvas{width:100%;display:block;background:var(--bg-strong);border-radius:var(--radius-sm)}.tags{display:flex;flex-wrap:wrap;gap:6px}.tag{font-size:11px;background:var(--bg-soft);border:1px solid var(--surface-border);padding:2px 8px;border-radius:999px;color:var(--text-soft)}.empty{grid-column:1 / -1;text-align:center;color:var(--text-faint);padding:60px 0}.btn{border:1px solid var(--surface-border);background:var(--bg-strong);color:var(--text);padding:.55rem 1.1rem;border-radius:var(--radius-sm);font:inherit;transition:border-color .16s ease,background-color .16s ease}.btn:hover{border-color:var(--accent)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--button-text)}.btn.primary:hover{background:var(--accent-strong);border-color:var(--accent-strong)}.btn.ghost{background:transparent}.btn:disabled{opacity:.45;cursor:not-allowed}.icon-btn{background:transparent;border:0;color:var(--text-faint);font-size:18px}.icon-btn:hover{color:var(--text)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:16px;z-index:10}.modal{background:var(--bg-elevated);border:1px solid var(--surface-border);border-radius:var(--radius-lg);padding:22px;width:100%;max-width:560px;max-height:88vh;overflow-y:auto;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow-panel)}.modal-head{display:flex;align-items:center;justify-content:space-between}.modal-head h2{margin:0;font-size:18px;letter-spacing:-.02em}.modal-meta,.modal-hint{color:var(--text-faint);font-size:12px;margin:0}.modal-desc{margin:0;font-size:14px;color:var(--text-soft)}.prompt-box{background:var(--bg-strong);border:1px solid var(--surface-border);border-radius:var(--radius-sm);padding:12px;white-space:pre-wrap;word-break:break-word;font-size:13px;max-height:320px;overflow-y:auto;margin:0;color:var(--text-soft)}.modal-actions{display:flex;gap:8px;flex-wrap:wrap}.field{display:flex;flex-direction:column;gap:5px;font-size:13px}.field>span{color:var(--text-soft)}.row{display:flex;gap:12px}.row .field{flex:1}.icon-field{flex:0 0 80px}.file-drop{display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;border:1px dashed var(--surface-border);border-radius:var(--radius-sm);padding:.7rem 1rem;color:var(--text-soft);font-size:13px;transition:border-color .16s ease,color .16s ease}.file-drop:hover{border-color:var(--accent);color:var(--accent-strong)}.file-input-hidden{display:none}.preview-wrap{display:flex;flex-direction:column;gap:4px}.preview-wrap small{color:var(--text-faint)}.error{color:var(--danger);font-size:13px;margin:0}.foot{margin-top:auto;text-align:center;color:var(--text-faint);font-size:12px;padding:40px 0 20px}.foot a{color:var(--accent-strong)}
