:root{font-family:system-ui,-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;color:#213c35;background:#f4f5ef;font-synthesis:none;--green:#183d36;--line:#dee4da;--muted:#66796f}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border:1px solid var(--line);border-radius:12px;background:white;color:var(--green);padding:10px 16px;text-decoration:none;cursor:pointer;font-weight:600}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #7baa89;outline-offset:3px}.primary{background:var(--green);color:white;border-color:var(--green)}.danger{color:#a32929;background:#fff6f3;border-color:#f0d1c9}.top{max-width:1040px;margin:auto;padding:22px 24px;display:flex;justify-content:space-between;gap:16px;align-items:center}.brand{font-size:24px;font-weight:800;letter-spacing:-1px;color:var(--green);text-decoration:none}.brand span{font-size:13px;font-weight:500;letter-spacing:1px;border-left:1px solid #b7c9b9;padding-left:12px;margin-left:12px}.back{color:var(--muted);font-size:14px;text-decoration:none;min-height:44px;display:flex;align-items:center}main{max-width:1000px;margin:auto;padding:10px 20px 120px}.title-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:16px 0 24px}.eyebrow{font-size:12px;letter-spacing:2px;color:var(--muted);margin:0 0 8px}h1{font-size:30px;line-height:1.25;margin:0;letter-spacing:-1px}h2{font-size:19px;margin:0 0 14px}h3{font-size:17px;margin:0}p{line-height:1.65}small,.muted{color:var(--muted);font-size:14px}.card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;margin-bottom:16px;min-width:0}.welcome{background:var(--green);color:white;border:0;padding:28px}.welcome p{color:#d7e8dc}.welcome .eyebrow{color:#b7ceba}.welcome .button{background:#e7eed7;color:var(--green);border:0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:16px 0}.stat{background:white;border:1px solid var(--line);border-radius:18px;padding:20px}.stat strong{display:block;font-size:30px;margin-top:8px}.stat span{color:var(--muted);font-size:13px}.row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.actions button,.actions .button{flex:1;white-space:nowrap}.badge{display:inline-block;font-size:12px;line-height:24px;padding:0 9px;border-radius:8px;background:#edf2e9;color:#3c6349}.badge.off{background:#f0f1ee;color:#6c786f}.badge.bad{background:#fff0e9;color:#9e4826}.meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0;font-size:14px}.meta span{display:block;color:var(--muted);font-size:12px;margin-bottom:4px}.wrap{overflow-wrap:anywhere;word-break:break-word}.note{border-left:3px solid #b6c9a0;padding-left:12px;color:var(--muted);font-size:14px;margin:12px 0}.empty{text-align:center;padding:42px 22px}.empty p{color:var(--muted)}label{display:block;font-size:14px;font-weight:600;margin:18px 0 0}label>small{display:block;font-weight:400;margin-top:6px}input,select,textarea{display:block;width:100%;min-width:0;min-height:48px;border:1px solid #cdd8ca;border-radius:11px;padding:12px;background:#fbfcf9;color:#213c35;margin-top:8px;font-size:16px}textarea{resize:vertical;min-height:100px}.check{display:flex;align-items:center;gap:12px}.check input{width:22px;min-height:22px;height:22px;margin:0;accent-color:var(--green)}form .primary.full{width:100%;margin-top:24px}.search-row{display:flex;gap:8px;align-items:end;margin-bottom:18px}.search-row label{flex:1;margin:0}.search-row input{margin:0}.search-row select{margin:0;width:auto;max-width:130px}.error{color:#a32929;font-size:14px;white-space:pre-wrap;line-height:1.65}.error:empty{display:none}.pager{display:flex;justify-content:center;align-items:center;gap:16px;margin:22px 0}.tabs{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,1fr);gap:4px;background:#ffffffed;border-top:1px solid var(--line);padding:8px max(12px,calc((100vw - 960px)/2)) calc(8px + env(safe-area-inset-bottom));backdrop-filter:blur(15px);z-index:5}.tabs button{border:0;background:none;font-size:14px;min-height:52px;white-space:nowrap;padding:10px 6px}.tabs button.active{background:#e7eedb;color:#173c30}dialog{width:min(540px,calc(100% - 24px));max-height:90dvh;overflow-y:auto;border:1px solid var(--line);border-radius:22px;padding:24px;color:#213c35}dialog::backdrop{background:#10271f70;backdrop-filter:blur(3px)}dialog .close{min-width:44px;padding:6px;font-size:24px;border:0}#notice{position:fixed;bottom:100px;left:50%;transform:translateX(-50%);padding:14px 20px;background:#183d36;color:#fff;border-radius:12px;z-index:30;max-width:90vw;box-shadow:0 8px 28px #183d3630}.login{max-width:430px;margin:8vh auto}.login h1{margin-bottom:16px}.login .muted{line-height:1.7}.audit{padding:14px 0;border-bottom:1px solid var(--line)}.audit:last-child{border:0}.audit p{margin:5px 0;font-size:14px}.audit small{font-size:12px}.sources-list{display:grid;grid-template-columns:1fr 1fr;gap:16px}.sources-list .card{margin:0}.member-name{display:flex;align-items:center;gap:12px}.initial{width:44px;height:44px;display:grid;place-items:center;background:#edf2e7;border-radius:14px;font-weight:700}.member-name small{display:block;margin-top:4px}.helper{font-size:13px;color:var(--muted);line-height:1.7}.link{color:#285e46}.list-line{padding:12px 0;border-bottom:1px solid var(--line)}.list-line:last-child{border:0}.library-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.video-card{display:block;text-align:left;padding:0;overflow:hidden;width:100%}.video-card img{width:100%;height:210px;object-fit:cover;background:#dfe8dc;display:block}.video-card div{padding:12px}.video-card strong{display:block;overflow-wrap:anywhere}.video-card small{font-size:12px}.player-dialog{width:min(900px,calc(100% - 20px));padding:16px}.player-dialog video{width:100%;max-height:60vh;background:#111;border-radius:12px}.episodes{display:flex;gap:8px;flex-wrap:wrap;max-height:160px;overflow:auto;margin-top:12px}.episodes button.active{background:var(--green);color:white}.player-dialog select{margin:12px 0}.library main{padding-bottom:50px}.library .description{max-height:130px;overflow:auto;font-size:14px;white-space:pre-wrap}[hidden]{display:none!important}@media(max-width:650px){.top{padding:15px 18px}.brand{font-size:22px}.brand span{font-size:12px;padding-left:9px;margin-left:9px}main{padding:6px 16px 110px}h1{font-size:27px}.title-row{margin:12px 0 20px}.title-row>button{font-size:13px;padding:10px 12px}.card{padding:19px;border-radius:18px}.welcome{padding:24px}.stats{grid-template-columns:1fr 1fr;gap:10px}.stat{padding:17px}.stat strong{font-size:28px}.sources-list{grid-template-columns:1fr}.search-row{flex-wrap:wrap}.search-row label{min-width:160px}.search-row select{max-width:110px}.meta{font-size:13px}.actions{gap:8px}.actions button,.actions .button{font-size:14px;flex:1 1 40%}.library-grid{grid-template-columns:1fr 1fr;gap:10px}.video-card img{height:190px}.login{margin:5vh auto}.library .search-row select{width:100%;max-width:none}.back{font-size:13px}}@media(prefers-reduced-motion:no-preference){button,.button{transition:background .15s,opacity .15s}button:hover,.button:hover{filter:brightness(.95)}}
