*{margin:0;padding:0;box-sizing:border-box}
html,body{width:100%;min-height:100vh;overflow-x:hidden;background:#f2f4f7;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}
.page{width:100%;max-width:100%;margin:0 auto;padding:16px 12px}
.top-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.top-bar h3{color:#222;font-size:17px}
.top-btn-group{display:flex;gap:8px}
.btn{padding:10px 16px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer}
.btn-default{background:#f0f0f0;color:#333}
.search-input{width:100%;height:50px;padding:0 16px;font-size:16px;border:none;border-radius:12px;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.06);outline:none;margin-bottom:16px}
.form-group{display:flex;width:100%;gap:10px;margin-bottom:14px}
.form-item{flex:1;display:flex;flex-direction:column;gap:6px}
.form-label{font-size:13px;color:#555;font-weight:500;padding-left:4px}
.form-select{width:100%;height:50px;padding:0 30px 0 12px;font-size:15px;border:none;border-radius:12px;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.05);outline:none;appearance:none;background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDEyIDEyIj48cGF0aCBmaWxsPSIjOTk5IiBkPSJNNiA5TDEgNGgxMHoiLz48L3N2Zz4=");background-repeat:no-repeat;background-position:right 12px center}
.module-title{font-size:16px;font-weight:bold;color:#222;margin:24px 0 12px;padding-left:4px;display:flex;align-items:center;gap:8px}
.module-title::before{content:'';width:4px;height:18px;background:#4E8EF7;border-radius:2px}
.result-box{margin-top:10px;padding:16px;background:#fff;border-radius:12px;box-shadow:0 2px 10px rgba(0,0,0,.05)}
.result-title{font-size:15px;font-weight:bold;color:#333;margin-bottom:8px}
.result-content{font-size:14px;color:#444;line-height:1.6;word-break:break-all}
.search-result-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.search-result-item{padding:12px;background:#f8f9fa;border-radius:8px;cursor:pointer;transition:all .2s;border-left:3px solid transparent;position:relative}
.search-result-item:hover{background:#e8f0fe;border-left:3px solid #4E8EF7}
.search-result-item.active{background:linear-gradient(135deg,#4E8EF7,#6FA3FF);border-left:4px solid #2C6BD9;box-shadow:0 2px 8px rgba(76,132,255,0.3);transform:translateX(2px);transition:all .3s ease}
.search-result-item.active .result-name{color:white;font-weight:bold}
.search-result-item.active .result-meta{color:rgba(255,255,255,0.9)}
.search-result-item.active::before{content:"✓";position:absolute;left:8px;top:50%;transform:translateY(-50%);color:white;font-weight:bold;font-size:16px}
.result-name{font-size:14px;font-weight:500;color:#222}
.result-meta{font-size:12px;color:#999;margin-top:4px}
.file-list{display:flex;flex-direction:column;gap:6px;margin-top:10px}
.file-item{padding:10px;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;align-items:center;cursor:pointer}
.file-item:last-child{border-bottom:none}
.file-item:hover{background:#f8f9fa}
.file-info{flex:1}
.file-name{font-size:14px;color:#222}
.file-meta{font-size:12px;color:#999;margin-top:2px}
.file-tag{padding:2px 6px;border-radius:4px;font-size:12px;background:#e8f0fe;color:#4E8EF7}
.file-tag.dir{background:#fef3e0;color:#ff7d00}
.folder-content-box{margin-top:10px;padding:16px;background:#fff;border-radius:12px;box-shadow:0 2px 10px rgba(0,0,0,.05);display:none;position:relative;z-index:1;border:2px solid #4E8EF7;border-top:none;position:relative}
.folder-content-box.show{display:block}
.folder-content-box::before{content:"↴";position:absolute;top:-20px;left:20px;background:#4E8EF7;color:white;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;z-index:2}
.folder-content-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #eee}
.folder-content-title{font-size:15px;font-weight:bold;color:#333;display:flex;align-items:center;gap:6px}
.folder-content-close{background:none;border:none;font-size:20px;color:#999;cursor:pointer;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}
.folder-content-close:hover{background:#f5f5f5;color:#666}
.folder-source-info{display:flex;align-items:center;gap:8px;font-size:12px;color:#666;background:#f8f9fa;padding:6px 10px;border-radius:6px;margin-top:8px;border-left:3px solid #4E8EF7}
.folder-source-label{background:#e8f0fe;color:#4E8EF7;padding:2px 6px;border-radius:3px;font-size:11px;font-weight:500}