:root{font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif;color:#203349;background:#f2f5f8;font-synthesis:none;font-size:16px;line-height:1.6;--navy:#18364e;--gold:#b48a40;--muted:#637487;--line:#dfe6ec}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}button{border:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #c29b52;outline-offset:3px}button{transition:background .15s,box-shadow .15s}input,select{min-width:0;border:1px solid #cbd5df;border-radius:6px;background:#fff;color:#203349}input{padding:13px 15px;width:100%}select{padding:9px 34px 9px 12px;width:100%}label{font-size:14px;color:#526477;font-weight:500}label span{display:block;margin-bottom:7px}h1,h2,h3,p{margin-top:0}h1{font-size:32px;letter-spacing:.01em;line-height:1.35;margin-bottom:10px}h2{font-size:20px;margin-bottom:12px}h3{font-size:19px}p{color:var(--muted)}.topbar{background:#fff;border-bottom:1px solid var(--line);padding:0 max(28px,calc((100vw - 1160px)/2));height:84px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:700;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:38px;height:42px;background:var(--navy);color:#e6c17c;border-radius:5px;font-family:serif;font-size:23px}.brand-divider{font-weight:400;margin:0 12px;color:#b6c0c9}.season{font-size:12px;letter-spacing:1px;border:1px solid #d6b777;color:#856626;padding:1px 6px;border-radius:3px}.topbar nav{display:flex;gap:24px;height:100%}.topbar nav button{background:none;color:var(--muted);border-bottom:3px solid transparent;font-size:15px;padding:0 2px}.topbar nav button.active{color:var(--navy);border-color:var(--gold);font-weight:700}.topbar nav button span{margin-left:6px}main{max-width:1160px;margin:0 auto;min-height:calc(100vh - 170px);padding:42px 0 56px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:30px}.eyebrow,.section-number{font-size:12px;color:#7c6540;font-weight:700;letter-spacing:1.5px;margin-bottom:12px}.intro{margin:0;font-size:15px}.registry-stats{display:flex;gap:36px;align-self:center}.registry-stats>div+div{padding-left:36px;border-left:1px solid #ccd6df}.registry-stats strong{display:block;line-height:1.3;font-size:32px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--navy)}.registry-stats span{font-size:13px;color:var(--muted)}.search-panel,.panel,.results{background:#fff;border:1px solid var(--line);border-radius:10px}.search-panel{border-top:3px solid var(--navy);padding:0 28px 24px;box-shadow:0 5px 20px #213c5210}.mode-tabs{display:flex;gap:28px;border-bottom:1px solid #e8edf2;margin-bottom:22px}.mode-tabs button{padding:17px 0 13px;background:none;border-bottom:2px solid transparent;color:var(--muted);font-size:16px}.mode-tabs button.selected{color:var(--navy);font-weight:700;border-color:var(--gold)}.search-form{display:grid;grid-template-columns:1fr 162px;gap:20px}.primary{background:var(--navy);color:#fff;padding:12px 22px;border-radius:6px;font-weight:600;font-size:15px}.primary:hover:not(:disabled){background:#264c68}.search-button{align-self:end;min-height:53px;display:flex;justify-content:space-between;align-items:center}.search-button span{font-size:22px;line-height:1}.results{margin-top:28px;overflow:hidden}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.results>.section-heading{padding:22px 26px 12px}.section-heading h2{margin:0}.count{font-size:14px;font-weight:500;color:var(--muted);margin-left:8px;background:#edf2f6;border-radius:4px;padding:2px 8px}.text-button{background:none;color:#43647d;font-size:14px;padding:4px 0}.text-button:hover{text-decoration:underline}.empty-state{text-align:center;padding:40px 20px 56px}.empty-symbol{font-family:serif;font-size:46px;color:#9aaebe;line-height:1;margin-bottom:20px}.empty-state h3{margin-bottom:8px;color:#425970}.empty-state p{font-size:14px;margin-bottom:22px}.secondary{padding:10px 18px;border:1px solid #cdd8e1;background:#fff;color:var(--navy);border-radius:6px;font-size:14px}.secondary:hover:not(:disabled){background:#f0f4f7}.resource-dot{width:7px;height:7px;border-radius:2px;background:#999}.type-木{background:#409779}.type-铁{background:#6b83aa}.type-石{background:#9e86af}.type-粮{background:#c59d4f}.table-wrap{width:100%;overflow-x:auto;position:relative}table{border-collapse:collapse;width:100%;text-align:left;white-space:nowrap;font-size:14px}th{background:#f6f8fa;color:#697b8d;font-weight:500;font-size:13px}th,td{padding:13px 26px;border-bottom:1px solid #e8eef3}td{height:57px}tbody tr:hover{background:#fafcfd}.coordinate{font-family:Cascadia Code,Consolas,monospace;font-size:15px;font-variant-numeric:tabular-nums;color:#1f465f}.level-badge{background:#eff3f6;border:1px solid #e3e9ef;border-radius:4px;padding:3px 8px;font-size:12px;color:#5a7183}.resource{display:inline-grid;place-items:center;width:29px;height:29px;border-radius:5px;font-weight:600}.resource-木{background:#e8f3ee;color:#28795b}.resource-铁{background:#eaf0f9;color:#52729c}.resource-石{background:#f1edf7;color:#86619a}.resource-粮{background:#faf2e1;color:#a47c2e}.copy-button{background:none;color:#6b8295;font-size:13px}.pagination{display:flex;justify-content:space-between;align-items:center;padding:17px 26px;font-size:13px;color:var(--muted)}.pagination>div{display:flex;align-items:center;gap:15px}.compact{padding:5px 12px;font-size:13px}.panel{padding:26px}.login-panel{max-width:490px;margin:40px auto}.login-panel p{font-size:14px}.login-panel form{display:grid;gap:18px;margin-top:24px}.login-panel input{margin-top:7px}.admin-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:24px}.panel h2{margin-bottom:10px}.panel>p{font-size:14px}.schema-strip{display:flex;gap:6px;margin:20px 0}.schema-strip span{background:#eff3f6;border:1px solid #e0e7ed;padding:4px 12px;border-radius:4px;font-size:13px;color:#526b80}.file-picker{position:relative;border:1px dashed #9bb0c0;border-radius:8px;background:#f8fafc;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:24px 14px;min-height:160px;cursor:pointer;overflow-wrap:anywhere}.file-picker strong{max-width:100%;text-align:center}.file-picker span{font-size:12px;color:var(--muted);margin:6px 0 0}.file-picker .upload-icon{font-size:27px;color:#6b869c;margin:0 0 7px}.file-picker input{position:absolute;inset:0;opacity:0;cursor:pointer}.file-picker:focus-within{outline:3px solid #c29b52;outline-offset:3px}.upload-actions{display:flex;justify-content:space-between;align-items:center;margin-top:18px;gap:12px}.import-rules{background:#f9fbfc}.import-rules ul{padding-left:20px;color:#607386;font-size:14px;margin:22px 0}.import-rules li{margin-bottom:12px}.revision{display:block;border-top:1px solid var(--line);padding-top:18px;font-size:13px;color:#758799}.history-panel,.preview-panel,.validation-panel{margin-top:24px}.history-panel .section-heading,.preview-panel .section-heading{margin-bottom:18px}.history-panel .section-number,.preview-panel .section-number{margin-bottom:6px}.history-row{display:flex;gap:22px;align-items:center;padding:16px 0;border-top:1px solid var(--line);font-size:14px}.history-row>div{flex:1;min-width:0}.history-row strong{display:block;overflow-wrap:anywhere}.history-row div span{display:block;color:var(--muted);font-size:12px;margin-top:4px}.history-state{color:#397961}.muted{color:var(--muted);font-size:14px}.preview-stats{display:grid;grid-template-columns:repeat(4,1fr);margin:20px 0;background:#f3f6f9;border-radius:8px;padding:18px}.preview-stats strong{display:block;font-size:26px;color:var(--navy)}.preview-stats span{font-size:13px;color:var(--muted)}.preview-panel>.section-heading>span{font-size:13px;color:var(--muted)}.preview-panel th,.preview-panel td{padding:12px 16px}.preview-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:20px}.preview-footer p{font-size:13px;margin:0}.message{padding:13px 18px;border-radius:6px;margin-bottom:22px;font-size:14px;overflow-wrap:anywhere}.error{color:#a03535;background:#fff0ef;border:1px solid #ecc9c7}.success{color:#216746;background:#eaf6ef;border:1px solid #c7e5d1}.warning{color:#8a5b0d;background:#fff7e6;padding:12px;border-radius:5px;font-size:14px}.danger{color:#aa4641}.validation-panel li{color:#a03535;font-size:14px;margin:8px 0}.modal-backdrop{position:fixed;inset:0;background:#102b4266;display:flex;align-items:center;justify-content:center;padding:22px;z-index:10;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal{max-width:470px;box-shadow:0 20px 70px #0a223644}.modal p{font-size:15px}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:25px}footer{max-width:1160px;margin:0 auto;border-top:1px solid #dbe3ea;display:flex;justify-content:space-between;padding:20px 0 28px;font-size:12px;color:#80909e}footer b{font-weight:500;margin-left:8px;color:#9c864f}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}del{color:#9a6b6b;font-size:12px}@media(max-width:1220px){main,footer{margin-left:28px;margin-right:28px}.topbar{padding:0 28px}}@media(max-width:720px){.topbar{height:auto;min-height:75px;padding:15px 18px;flex-wrap:wrap;gap:9px}.brand{font-size:16px;gap:9px}.brand-divider{margin:0 8px}.topbar nav{gap:18px;height:38px}.topbar nav button{font-size:14px}.season{font-size:11px}.brand-mark{width:32px;height:36px}main{padding:27px 0 36px;margin:0 16px}.page-heading{align-items:flex-start;flex-direction:column;margin-bottom:23px;gap:21px}h1{font-size:26px}.eyebrow{font-size:11px;margin-bottom:9px}.intro{font-size:14px}.registry-stats{gap:28px;align-self:stretch}.registry-stats strong{font-size:27px}.registry-stats>div+div{padding-left:28px}.search-panel{padding:0 18px 20px}.search-form{grid-template-columns:1fr;gap:14px}.search-button{width:100%;justify-content:center;gap:14px;min-height:48px}.mode-tabs{gap:24px}.mode-tabs button{font-size:15px}.results{margin-top:22px}.results>.section-heading{padding:18px 16px 12px}.section-heading h2{font-size:18px}.text-button{font-size:13px}.plot-tools{padding:0 16px 14px;gap:8px 12px}.res-btn,.seg-btn,.check-toggle{padding:6px 9px;font-size:12px}.seg-picker,.flag-picker{padding-left:12px}.empty-state{padding:28px 15px 35px}.empty-state h3{font-size:17px}th,td{padding:10px 12px}table,.coordinate{font-size:13px}.pagination{padding:15px 12px;gap:12px;flex-wrap:wrap}.pagination>div{margin-left:auto;gap:10px}.admin-grid{grid-template-columns:1fr;gap:18px}.panel{padding:20px}.schema-strip span{padding:4px 8px;font-size:12px}.history-row{gap:12px;flex-wrap:wrap}.history-row>div{flex-basis:100%}.history-panel .section-heading{align-items:flex-start;flex-wrap:wrap}.preview-stats{gap:16px;grid-template-columns:repeat(2,1fr)}.preview-footer{flex-direction:column;align-items:stretch}.preview-footer button{width:100%}.preview-panel>.section-heading{flex-wrap:wrap}.login-panel{margin:10px auto}.message{margin-bottom:15px}.modal{padding:23px}footer{margin:0 16px;padding:20px 0;gap:12px;flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}.season-options{display:flex;gap:16px;flex-wrap:wrap}.export-panel,.assignment-panel{margin-bottom:24px}.assignment-panel form{display:flex;gap:16px;align-items:end;margin-bottom:16px}.transfer-row td{background:#fff8e9;height:auto;white-space:normal}.copy-button+.copy-button{margin-left:10px}.export-panel a{display:inline-block;margin-bottom:10px}.modal label{display:block}.modal input{margin:10px 0}.modal{max-height:90vh;overflow:auto}@media(max-width:720px){.assignment-panel form{flex-wrap:wrap}}.admin-tabs{margin-top:24px}.import-target{background:#edf3f8;padding:10px 14px;border-radius:6px}.captured-row,.captured-row:hover{background:#e7f4e9}.captured-row td{border-bottom-color:#c9e1ce}.captured-badge{display:inline-block;margin-left:8px;padding:1px 5px;border-radius:4px;font-family:inherit;font-size:12px;background:#cce7d2;color:#215b34}:root{--navy:#344a43;--gold:#a88446;--muted:#786e5d;--line:#ded3be;color:#302f29;background:#f2ebdc}body{background:radial-gradient(ellipse at 12% 0%,#fffaf0b3,transparent 55%),repeating-linear-gradient(90deg,#84672f03 0,#84672f03 1px,transparent 1px,transparent 5px),#f2ebdc}h1,h2,h3,.brand,.gate-content,.season-options{font-family:"Noto Serif CJK SC",Songti SC,STSong,SimSun,serif}h1{font-weight:600;letter-spacing:.1em}h2{letter-spacing:.045em}button,input,select{border-radius:3px!important}input,select{background:#fffdf7;border-color:#cfc2a7;color:#3a3c32}label{color:#6f624e}.topbar{background:#293f37;color:#f5e9d1;border-bottom:3px solid #a88950;box-shadow:0 3px #293f37;min-height:90px}.brand{letter-spacing:.08em}.brand-mark{background:#913b30;border:1px solid #d8b786;box-shadow:inset 0 0 0 3px #913b30,inset 0 0 0 4px #d8b786;color:#f5e8d3;font-size:14px;line-height:1.2;text-align:center;display:flex;align-items:center;justify-content:center;width:42px;height:48px;border-radius:2px;font-weight:400;letter-spacing:2px}.brand-divider{color:#b49d75}.season{color:#e1c58b;border-color:#827353}.topbar nav button{color:#d5cdbb}.topbar nav button.active{color:#fff4d9;border-color:#c8a566}.topbar nav button:hover{color:#fff}main{padding-top:42px}.panel,.results,.search-panel{background:#fffcf4;border-color:#d9cbb0;border-radius:4px;box-shadow:0 4px 18px #58411b06}.search-panel{border-top:3px solid #913b30}.panel h2{color:#34463b}.primary{background:#913b30;color:#fff4e3;box-shadow:inset 0 0 0 1px #7d3027}.primary:hover:not(:disabled){background:#753127}.secondary{border-color:#cbb891;background:#fffcf4;color:#634c31}.secondary:hover:not(:disabled){background:#f4ead5}.mode-tabs{border-color:#ddd0b5}.mode-tabs button{color:#786b55}.mode-tabs button.selected{color:#8d382d;border-color:#9a4134}.eyebrow,.section-number{color:#987344}.filter-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;background:#f8f0e0;border:1px solid #e2d4b8;border-radius:4px;padding:14px;margin:16px 0 10px}.filter-bar label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#786952}.filter-bar select,.filter-bar input{min-width:118px;padding:6px 8px;border:1px solid #cbb891;border-radius:3px;background:#fffcf4;color:#4b3f2c;font:inherit}.filter-bar .filter-wide input{min-width:210px}.filter-summary{color:#8a7a5f;margin:0 0 12px}.filter-summary strong{color:#843c30}.select-bar{display:flex;flex-wrap:wrap;gap:14px;align-items:center;padding:10px 12px;border:1px dashed #d9cbb0;border-radius:4px;color:#786952;margin-bottom:12px}.select-bar .check{display:flex;gap:6px;align-items:center;color:#5d5138}.picked-note{color:#8d382d}.batch-bar{display:flex;flex-wrap:wrap;gap:14px;align-items:center;background:#f4ead5;border:1px solid #d9c7a1;border-left:3px solid #9a4134;border-radius:4px;padding:12px 14px;margin-bottom:14px}.batch-count{color:#843c30}.batch-group{display:flex;gap:8px;align-items:center;color:#786952}.batch-group input{width:150px;padding:6px 8px;border:1px solid #cbb891;border-radius:3px;background:#fffcf4;color:#4b3f2c;font:inherit}.batch-group button{padding:6px 12px}.batch-group .tag-chip{padding:3px 10px}.preset-hint{color:#a2927a}td.pick-col,th.pick-col{width:38px;text-align:center}tbody tr.picked{background:#f6efdd}.tag-chip{border:1px solid #cbb891;background:#fffcf4;color:#6b4f2c;border-radius:12px;padding:3px 12px;font:inherit;cursor:pointer}.tag-chip:hover:not(:disabled){background:#f4ead5}.tag-chip.empty{color:#a2927a;border-style:dashed}.tag-presets{display:flex;gap:8px;margin-bottom:12px}.empty-state-inline{color:#8a7a5f;padding:16px 4px}.roster-modal{max-width:940px}.roster-form{display:flex;gap:16px;align-items:flex-start;margin:14px 0}.roster-names{flex:1;display:flex;flex-direction:column;gap:6px;color:#786952}.roster-names textarea{width:100%;padding:10px;border:1px solid #cbb891;border-radius:3px;background:#fffcf4;color:#4b3f2c;font:inherit;line-height:1.6;resize:vertical}.roster-side{display:flex;flex-direction:column;gap:10px;min-width:250px;color:#786952}.roster-side label{display:flex;flex-direction:column;gap:4px}.roster-side input,.roster-side select{padding:6px 8px;border:1px solid #cbb891;border-radius:3px;background:#fffcf4;color:#4b3f2c;font:inherit}.roster-math{background:#f2e9d7;border-radius:3px;padding:10px 12px;margin:0;color:#6b5b41;line-height:1.7}.roster-math strong{color:#843c30}.roster-math .bad{color:#a32d2d}.roster-result{border-top:1px dashed #d9cbb0;padding-top:14px}.roster-table{max-height:340px;overflow:auto}.roster-table tr.unknown td{color:#a32d2d}.registry-stats strong{color:#843c30}.registry-stats>div+div{border-color:#d6c6a6}.search-hint{margin:10px 0 0;font-size:13px;color:#887a62}.plot-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;padding:0 26px 16px}.res-picker,.seg-picker,.flag-picker{display:flex;align-items:center;gap:8px}.seg-picker,.flag-picker{border-left:1px solid #e2d4b8;padding-left:18px}.res-btn,.seg-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid #d9cbb0;border-radius:3px;background:#fdf9f0;color:#6b5b41;font:inherit;font-size:13px;cursor:pointer;box-shadow:inset 1px 1px #fffdf7,inset -1px -1px #e4d6ba,0 1px 2px #58411b14}.res-btn:hover,.seg-btn:hover{background:#fbf3e4}.res-btn.on,.seg-btn.on{background:#f2e5cb;border-color:#bda468;color:#843c30;font-weight:600;box-shadow:inset 2px 2px 3px #c6b088,inset -1px -1px #fffaf0}.res-btn b{font-weight:600;color:#514b39}.res-btn.on b{color:#8d382d}.res-btn:focus-visible,.seg-btn:focus-visible,.th-btn:focus-visible{outline:2px solid #c29b52;outline-offset:2px}.check-toggle{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#6b5b41;cursor:pointer;padding:7px 10px;border:1px solid #d9cbb0;border-radius:3px;background:#fdf9f0;box-shadow:inset 1px 1px #fffdf7,inset -1px -1px #e4d6ba,0 1px 2px #58411b14}.check-toggle:has(input:checked){background:#f2e5cb;border-color:#bda468;color:#843c30;font-weight:600;box-shadow:inset 2px 2px 3px #c6b088,inset -1px -1px #fffaf0}.check-toggle input{width:14px;height:14px;accent-color:#8d382d;margin:0}.heading-tools{display:flex;flex-wrap:wrap;align-items:center;gap:14px}.download-link{text-decoration:none}.download-link:hover{text-decoration:underline}.download-link span{font-size:12px}.refine-count{font-size:13px;color:#8a7a5f}.refine-count strong{color:#843c30;font-size:15px}th.th-filter{padding:0}.th-btn{display:inline-flex;align-items:center;gap:6px;padding:13px 14px;border:0;border-radius:0;background:none;color:#756246;font:inherit;font-size:13px;font-weight:500;cursor:pointer}.th-btn:hover{background:#f5ecd9}.th-btn.on{color:#8d382d;font-weight:600}.th-badge{background:#8d382d;color:#fdf9f0;border-radius:9px;font-size:11px;line-height:1;padding:3px 6px}.caret{font-size:10px;color:#a08a63}.pop-backdrop{position:fixed;inset:0;z-index:40;background:none}.th-pop{position:fixed;z-index:41;width:248px;max-height:340px;display:flex;flex-direction:column;background:#fffcf4;border:1px solid #cbb891;border-radius:4px;box-shadow:0 10px 30px #58411b2e;padding:10px 0}.th-pop-head,.th-pop-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 14px}.th-pop-head{padding-bottom:8px;border-bottom:1px solid #eee0c6;color:#756246}.th-pop-foot{padding-top:8px;border-top:1px solid #eee0c6;font-size:12px;color:#8a7a5f}.th-pop-body{overflow:auto;padding:6px 0}.th-opt{display:flex;align-items:center;gap:8px;padding:7px 14px;font-size:13px;color:#5d5039;cursor:pointer}.th-opt:hover{background:#f6efe0}.th-opt input{width:14px;height:14px;accent-color:#8d382d;margin:0}tr.no-match td{color:#8a7a5f;padding:26px}tr.no-match td strong{display:block;color:#655943;font-size:15px;margin-bottom:6px}tr.no-match td span{line-height:1.8}.yueying{position:fixed;z-index:5;width:96px;height:96px;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;filter:drop-shadow(0 6px 14px #58411b38);transition:transform .12s ease,filter .12s ease}.yueying img{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.yueying img.pressed,.yueying.pressed.artready img.sleep{opacity:0}.yueying.pressed.artready img.pressed{opacity:1}.yueying.pressed{cursor:grabbing;transform:scale(.9);filter:drop-shadow(0 3px 8px #58411b30)}.yueying.dragging{transition:none}.yueying:focus-visible{outline:2px solid #c29b52;outline-offset:4px;border-radius:10px}.footer-right{display:flex;align-items:center;gap:14px;flex-wrap:wrap}footer{position:relative;z-index:6}@media(max-width:720px){.yueying{width:78px;height:78px}}@media(prefers-reduced-motion:reduce){.yueying{transition:none}}th{background:#eee5d3;color:#756246}th,td{border-bottom-color:#e8dec9}tbody tr:hover{background:#faf3e4}.coordinate{color:#3d5449}.level-badge{background:#f0e9d9;border-color:#e3d6bd;color:#726044}.text-button,.copy-button{color:#83572e}.empty-state h3{color:#655943}.empty-symbol{color:#b49a70}.count,.schema-strip span{background:#f0e8d7;border-color:#dfd1b6;color:#6e5d42}.file-picker{background:#faf4e8;border-color:#b6a17e}.file-picker .upload-icon{color:#a48656}.import-rules{background:#f8f0e0}.import-rules ul{color:#786952}.preview-stats,.import-target{background:#f2e9d7}.revision{color:#87785e}.modal-backdrop{background:#272b23a6;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}footer{border-color:#d6c6a6;color:#8b795c;letter-spacing:.04em}.page-heading .heading-tools{display:flex;align-items:center;gap:18px}.captured-row,.captured-row:hover{background:#e7f0df}.captured-row td{border-bottom-color:#cdddc1}.captured-badge{background:#d2e3c4;color:#34572e}.luoluo-gate{min-height:100svh;position:relative;padding:40px 64px;display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(ellipse at 50% 42%,#fffdf6 0,#f4ecd9 55%,#e5d7b9);isolation:isolate}.gate-frame{position:absolute;inset:20px;border:1px solid #ad8b505c;pointer-events:none;z-index:-1}.gate-frame:after{content:"";position:absolute;inset:5px;border:1px solid #ad8b5025}.gate-topline,.gate-bottomline{display:flex;align-items:center;justify-content:space-between;color:#806a45;font-size:12px;letter-spacing:.25em}.gate-topline{padding-bottom:18px;border-bottom:1px solid #ad8b5033}.gate-topline span:first-child{font-family:SimSun,serif;font-size:20px;color:#6f3c2d;letter-spacing:.35em}.gate-content{text-align:center;padding:24px 0;display:flex;align-items:center;flex-direction:column}.gate-kicker{font-family:Microsoft YaHei,sans-serif;font-size:11px;letter-spacing:.35em;color:#a17c40;margin-bottom:13px}.gate-content h1{font-size:46px;font-weight:400;letter-spacing:.3em;margin:0 0 0 .3em;color:#35392f}.cat-shrine{position:relative;width:400px;max-width:100%;margin:4px 0}.luoluo-cat{display:block;margin:auto;width:270px;height:287px;color:#171813}.cat-name{font-family:Songti SC,SimSun,serif;font-size:38px;letter-spacing:5px;fill:#f4ead3}.shrine-side{position:absolute;top:90px;writing-mode:vertical-rl;font-size:14px;letter-spacing:.6em;color:#9a865f}.shrine-left{left:15px}.shrine-right{right:15px}.gate-blessing{color:#8b795a;font-size:14px;letter-spacing:.16em;margin:0 0 26px}.gate-enter{background:#8d382d;color:#fff0d6;border:1px solid #753127;padding:15px 29px;min-width:280px;font-family:Microsoft YaHei,sans-serif;font-size:15px;letter-spacing:.08em;box-shadow:inset 0 0 0 3px #8d382d,inset 0 0 0 4px #c3976470}.gate-enter:hover{background:#753127}.gate-enter span{margin-left:18px}.gate-caption{margin-top:18px;font-size:11px;color:#978666;letter-spacing:.14em}.gate-seal{border:2px solid #a55742;color:#9d4a36;padding:5px 4px;font-family:SimSun,serif;font-size:12px;letter-spacing:3px;line-height:1.3;transform:rotate(-6deg)}@media(max-width:720px){.luoluo-gate{padding:30px 28px}.gate-frame{inset:12px}.gate-topline span:first-child{font-size:17px}.gate-topline{font-size:10px}.gate-content h1{font-size:36px}.luoluo-cat{width:240px;height:255px}.cat-shrine{width:320px}.shrine-side{font-size:12px}.gate-blessing{font-size:12px;letter-spacing:.08em}.gate-bottomline{font-size:10px}.topbar{min-height:85px}.brand{font-size:15px}.brand-mark{width:36px;height:42px;font-size:12px}.brand-divider{margin:0 5px}}:root{font-family:Microsoft YaHei,Microsoft YaHei UI,PingFang SC,Noto Sans CJK SC,Arial,sans-serif}h1,h2,h3,.brand,.brand-mark,.gate-content,.season-options,.cat-name,.gate-seal,.gate-topline span:first-child,.empty-symbol,.coordinate{font-family:Microsoft YaHei,Microsoft YaHei UI,PingFang SC,Noto Sans CJK SC,Arial,sans-serif}.distribution-badge{display:inline-block;margin-left:8px;padding:2px 7px;border:1px solid #cfb270;background:#fbefcf;color:#79571b;border-radius:3px;font-size:12px}.distribution-date{display:block;font-size:11px;color:#827258;margin-top:4px}.petition-panel,.petition-rules{margin-bottom:24px}.petition-author,.petition-way{display:block}.petition-way{margin-top:16px}.petition-panel input,.petition-panel select{margin-top:7px}.petition-panel select{padding:12px 34px 12px 14px}.petition-panel input:disabled,.petition-panel select:disabled{background:#f1ead9;color:#a2927a}.petition-hint{margin:12px 0 18px;font-size:13px;color:#887a62}.petition-body{display:block}.petition-body textarea,.petition-modal textarea{width:100%;padding:12px 14px;margin-top:7px;border:1px solid #cfc2a7;border-radius:3px;background:#fffdf7;color:#3a3c32;font:inherit;line-height:1.7;resize:vertical}.petition-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px}.petition-count{font-size:12px;color:#a2927a}.petition-rules ul{margin:0;padding-left:20px;color:#786952}.petition-rules li{margin-bottom:6px}.petition-admin{margin-top:24px}.petition-summary{margin:0 0 14px;color:#8a7a5f}.petition-summary strong{color:#843c30}.petition-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.petition-item{border:1px solid #e2d4b8;border-left:3px solid #9a4134;background:#fdf9f0;border-radius:4px;padding:14px 16px}.petition-meta{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.petition-who{color:#843c30;font-size:14px;font-weight:600}.petition-who.anon{color:#786952;font-weight:400}.petition-time{font-size:12px;color:#a2927a}.petition-text{margin:10px 0 0;color:#3a3c32;white-space:pre-wrap;overflow-wrap:anywhere}.petition-note{margin:12px 0 0;padding:9px 12px;background:#f2e9d7;border-radius:3px;color:#6b5b41;font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere}.petition-note strong{color:#843c30;margin-right:8px}.petition-actions{display:flex;gap:16px;margin-top:12px}.petition-actions .danger{color:#a32d2d}.petition-quote{margin:10px 0;padding:10px 12px;background:#f2e9d7;border-radius:3px;color:#5d5039;font-size:13px;max-height:180px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}.tab-count{display:inline-block;margin-left:7px;padding:3px 6px;background:#8d382d;color:#fdf9f0;border-radius:9px;font-size:11px;line-height:1}.petition-sent{max-width:430px;text-align:center;position:relative;background:linear-gradient(160deg,#fffdf6 60%,#f4ead5);border-top:3px solid #913b30}.petition-sent .sent-kicker{font-size:11px;letter-spacing:.32em;color:#a17c40;margin:0 0 10px}.petition-sent h2{margin:0 0 16px;font-size:26px;letter-spacing:.22em;color:#7c3228}.petition-sent .sent-line{margin:0 0 8px;font-size:14px;color:#6b5b41;line-height:1.85}.petition-sent .sent-line strong{color:#843c30}.petition-sent .sent-strong{color:#3a3c32}.petition-sent .modal-actions{justify-content:center;margin-top:22px}.petition-sent .modal-actions button{min-width:150px}.sent-seal{position:absolute;top:16px;right:18px;width:52px;height:52px;display:grid;place-items:center;border:2px solid #a55742;border-radius:3px;color:#9d4a36;font-size:15px;letter-spacing:2px;line-height:1.15;text-align:center;transform:rotate(-8deg);opacity:.85}@media(max-width:720px){.petition-sent h2{font-size:22px;letter-spacing:.16em}.sent-seal{width:44px;height:44px;font-size:13px;top:12px;right:12px}}.lottery-admin{margin-top:24px}.lottery-step{display:flex;align-items:center;gap:10px;margin:26px 0 12px;padding-top:18px;border-top:1px dashed #ded3be;font-size:16px;letter-spacing:.06em;color:#34463b}.lottery-step:first-of-type{margin-top:18px;padding-top:0;border-top:0}.lottery-step-no{display:grid;place-items:center;width:24px;height:24px;border:1px solid #cbb891;border-radius:50%;background:#fdf9f0;color:#8d382d;font-size:12px}.lottery-source{margin-bottom:16px}.pickbox{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:stretch}.pickbox-panel{display:flex;flex-direction:column;border:1px solid #e2d4b8;border-radius:4px;background:#f8f0e0;min-width:0}.pickbox-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:10px 12px;border-bottom:1px solid #e2d4b8}.pickbox-head strong{color:#655943;font-size:14px}.pickbox-head span{font-size:12px;color:#a2927a}.pickbox-search{padding:8px 10px;border-bottom:1px solid #ece0c9}.pickbox-search input{width:100%;padding:6px 9px;border:1px solid #cbb891;border-radius:3px;background:#fffcf4;color:#4b3f2c;font:inherit}.pickbox-hint{font-size:11px;color:#a2927a;line-height:1.5;min-height:38px;display:flex;align-items:center}.pickbox-hint b{color:#8d382d;font-weight:600}.pickbox-list{flex:1;overflow:auto;max-height:320px;padding:8px;display:flex;flex-direction:column;gap:5px}.pickbox-item{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:6px 9px;border:1px solid transparent;border-radius:3px;background:#fffdf7;color:#5d5039;font:inherit;font-size:13px;box-shadow:inset 1px 1px #fffdf7,inset -1px -1px #e4d6ba}.pickbox-item:hover:not(:disabled){background:#fbf3e4}.pickbox-item.on{background:#f2e5cb;border-color:#bda468;color:#843c30;font-weight:600;box-shadow:inset 2px 2px 3px #c6b088,inset -1px -1px #fffaf0}.pickbox-item span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pickbox-item b{color:#a2927a;font-weight:500;font-size:12px;flex:none}.pickbox-item.on b{color:#8d382d}.pickbox-empty{margin:6px 4px;color:#a2927a;font-size:13px}.pickbox-actions{display:flex;flex-direction:column;justify-content:center;gap:8px}.pickbox-actions button{width:46px;padding:8px 0;font-size:16px;line-height:1}.arrow-narrow{display:none}.lottery-manual label{display:block;color:#786952}.lottery-manual textarea{width:100%;padding:10px;margin-top:7px;border:1px solid #cbb891;border-radius:3px;background:#fffcf4;color:#4b3f2c;font:inherit;line-height:1.7;resize:vertical}.lottery-pool-note{margin:14px 0 0;color:#786952;font-size:14px}.lottery-pool-note strong{color:#843c30;font-size:16px}.lottery-pool-note .text-button{margin-left:14px}.lottery-form{display:flex;gap:16px;align-items:flex-end;flex-wrap:wrap;margin-bottom:16px}.lottery-form label{display:flex;flex-direction:column;gap:5px;font-size:13px;color:#786952}.lottery-form input[type=number]{width:110px;padding:7px 10px;border:1px solid #cbb891;border-radius:3px;background:#fffcf4;color:#4b3f2c;font:inherit}.lottery-title{flex:1;min-width:220px}.lottery-title input{width:100%;padding:7px 10px;border:1px solid #cbb891;border-radius:3px;background:#fffcf4;color:#4b3f2c;font:inherit}.lottery-form .lottery-keep{flex-direction:row;align-items:center;align-self:center;padding:7px 10px}.lottery-action{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.lottery-roll{min-width:190px;padding:13px 26px;font-size:16px;letter-spacing:.12em}.lottery-warn{font-size:13px;color:#a32d2d}.lottery-reveal{margin-top:20px;padding:26px 22px;text-align:center;border:1px solid #d9cbb0;border-top:3px solid #913b30;border-radius:4px;background:linear-gradient(160deg,#fffdf6 60%,#f4ead5)}.lottery-reveal-kicker{margin:0 0 14px;font-size:11px;letter-spacing:.34em;color:#a17c40}.lottery-roll-name{margin:0;font-size:38px;font-weight:600;letter-spacing:.1em;color:#7c3228;min-height:54px;line-height:1.3}.lottery-reveal.rolling{border-top-color:#a88446}.lottery-winners{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;list-style:none;margin:0;padding:0}.lottery-winner{display:inline-block;padding:8px 18px;border:1px solid #cfb270;border-radius:3px;background:#fbefcf;color:#7c3228;font-size:20px;font-weight:600;letter-spacing:.04em}.lottery-winners li:only-child .lottery-winner{font-size:30px;padding:12px 30px}.lottery-reveal-foot{margin:16px 0 0;font-size:13px;color:#8a7a5f}.lottery-reveal-foot .text-button{margin-left:14px}.lottery-history-head{margin-top:8px}.lottery-history-head h3{margin:0 0 4px}.lottery-row{border:1px solid #e2d4b8;border-left:3px solid #a88446;background:#fdf9f0;border-radius:4px;padding:12px 16px;margin-bottom:12px}.lottery-row-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.lottery-row-head strong{color:#843c30;font-size:14px}.lottery-row-head span{flex:1;font-size:12px;color:#a2927a}.lottery-row-head .danger{color:#a32d2d}.lottery-row-winners{margin:8px 0 0;color:#3a3c32;font-size:14px;overflow-wrap:anywhere}@media(max-width:720px){.lottery-form{flex-direction:column;align-items:stretch}.lottery-form .lottery-keep{align-self:flex-start}.lottery-roll{width:100%}.lottery-roll-name{font-size:28px}.lottery-winner,.lottery-winners li:only-child .lottery-winner{font-size:18px;padding:7px 14px}.pickbox{grid-template-columns:1fr;gap:10px}.pickbox-list{max-height:230px}.pickbox-actions{flex-direction:row;justify-content:center}.pickbox-actions button{width:56px}.arrow-wide{display:none}.arrow-narrow{display:inline}}.merit-admin{margin-top:24px}.merit-step{display:flex;align-items:center;gap:10px;margin:26px 0 12px;padding-top:18px;border-top:1px dashed #ded3be;font-size:16px;letter-spacing:.06em;color:#34463b}.merit-step:first-of-type{margin-top:18px;padding-top:0;border-top:0}.merit-step-no{display:grid;place-items:center;width:24px;height:24px;border:1px solid #cbb891;border-radius:50%;background:#fdf9f0;color:#8d382d;font-size:12px}.merit-upload{display:flex;gap:16px;align-items:flex-end;flex-wrap:wrap}.merit-upload label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#786952}.merit-upload input[type=date],.merit-upload input[type=file]{padding:7px 10px;border:1px solid #cbb891;border-radius:3px;background:#fffcf4;color:#4b3f2c;font:inherit}.merit-upload input[type=file]{padding:5px 8px;max-width:320px}.merit-hint{margin:12px 0 0;font-size:12px;color:#a2927a}.merit-toolbar{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:16px 0 10px}.merit-toolbar .mode-tabs{margin:0}.merit-sort,.merit-find,.merit-metric{display:flex;align-items:center;gap:7px;font-size:13px;color:#786952}.merit-sort select,.merit-find input,.merit-metric select{padding:6px 9px;border:1px solid #cbb891;border-radius:3px;background:#fffcf4;color:#4b3f2c;font:inherit}.merit-metric select{font-weight:600;color:#843c30}.merit-find input{width:150px}.merit-plan-metrics{margin:0 0 12px;font-size:13px;color:#786952;line-height:2}.merit-chip.focus{border-color:#bda468;background:#f2e5cb;color:#843c30;font-weight:600}.merit-count{margin:0 0 14px;font-size:13px;color:#8a7a5f}.merit-count strong{color:#843c30}.merit-matrix-wrap{max-height:640px;overflow:auto}.merit-matrix{border-collapse:separate;border-spacing:0;font-size:13px}.merit-matrix th,.merit-matrix td{padding:6px 10px;border-bottom:1px solid #ece0c9;white-space:nowrap;text-align:right}.merit-matrix thead th{position:sticky;top:0;z-index:2;background:#f6efdf;color:#786952;font-weight:500}.merit-matrix .merit-name-col{position:sticky;left:0;z-index:1;background:#fdf9f0;text-align:left;min-width:150px;max-width:230px;box-shadow:1px 0 #e4d6ba}.merit-matrix thead .merit-name-col{z-index:3}.merit-matrix tfoot td,.merit-matrix tfoot th{position:sticky;bottom:0;background:#f6efdf;font-weight:600;color:#5d5039}.merit-matrix .merit-last-col{background:#fbf5e8;font-weight:600}.merit-name{display:flex;align-items:center;gap:8px;width:100%;padding:0;border:0;background:transparent;color:#5d5039;font:inherit;text-align:left;cursor:pointer}.merit-name:hover{color:#8d382d}.merit-name:before{content:"↗";color:#c0ac86;font-size:12px;flex:none}.merit-name:hover:before{color:#8d382d}.merit-days{margin-left:auto;color:#a2927a;font-size:11px;font-weight:400;flex:none}.merit-cell{min-width:82px}.merit-main{display:block;color:#3a3c32}.merit-sub{display:block;font-size:11px;color:#a2927a;margin-top:1px}.merit-cell.merit-up{color:#a32d2d}.merit-cell.merit-down{color:#1d7a52}.merit-missing{color:#cfc2a7}.merit-total .merit-main{color:#655943}.merit-up{color:#a32d2d}.merit-down{color:#1d7a52}.merit-file{max-width:200px;overflow:hidden;text-overflow:ellipsis;color:#a2927a;font-size:12px}.merit-summary-table{font-size:13px}.merit-legend{margin:10px 0 0;font-size:12px;color:#a2927a}.merit-plot-modal{max-width:880px}.plot-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.plot-kicker{margin:0;font-size:12px;color:#a17c40;letter-spacing:.08em}.plot-head h2{margin:4px 0 0;font-size:22px;font-weight:600;color:#843c30}.plot-sub{margin:8px 0 0;font-size:13px;color:#786952}.plot-sub strong{color:#843c30}.plot-wrap{margin:12px 0 14px;padding:8px 6px 0;border:1px solid #e2d4b8;border-radius:4px;background:#fffcf4}.merit-plot{display:block;width:100%;height:auto}.plot-grid{stroke:#eadfc8;stroke-width:.5}.plot-axis-line{stroke:#cbb891;stroke-width:.5}.plot-axis{font-size:11px;fill:#8a7a5f}.plot-line{stroke:#8d382d;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.plot-point{fill:#fffcf4;stroke:#8d382d;stroke-width:2}.plot-point:hover{fill:#8d382d;stroke-width:3}.plot-point-label{font-size:11px;fill:#843c30}.plot-values{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0 0 10px;padding:0;max-height:120px;overflow:auto}.plot-values li{display:flex;align-items:baseline;gap:6px;padding:4px 9px;border:1px solid #e2d4b8;border-radius:3px;background:#fffdf7;font-size:12px;color:#3a3c32;font-weight:600}.plot-values b{color:#8a7a5f;font-weight:400}.plot-note{margin:6px 0 0;font-size:12px;color:#8a7a5f;line-height:1.6}.merit-modal{max-width:640px}.merit-modal-day{margin:0 0 8px;font-size:12px;letter-spacing:.08em;color:#a17c40}.merit-plan-stats{display:flex;gap:22px;flex-wrap:wrap;margin:16px 0;padding:12px 0;border-top:1px dashed #ded3be;border-bottom:1px dashed #ded3be}.merit-plan-stats dt{font-size:12px;color:#a2927a}.merit-plan-stats dd{margin:3px 0 0;font-size:16px;color:#3a3c32;font-weight:600}.merit-plan-line{margin:0 0 10px;font-size:13px;color:#5d5039;line-height:1.9}.merit-plan-label{display:inline-block;margin-right:8px;padding:1px 7px;border:1px solid #d9cbb0;border-radius:3px;background:#f8f0e0;color:#786952;font-size:12px}.merit-plan-label.warn{border-color:#e0b0a2;background:#fbf0ec;color:#8d382d}.merit-plan-chips{display:inline-flex;flex-wrap:wrap;gap:5px;vertical-align:middle}.merit-chip{padding:2px 7px;border:1px solid #e2d4b8;border-radius:3px;background:#fffdf7;font-size:12px;color:#5d5039}.merit-chip.merit-up{border-color:#e3b7b3;background:#fdf3f1}.merit-chip.merit-down{border-color:#b6d8c6;background:#f1f8f4}@media(max-width:720px){.merit-upload{flex-direction:column;align-items:stretch}.merit-upload input[type=file]{max-width:none}.merit-toolbar{flex-direction:column;align-items:stretch}.merit-find input,.merit-sort select{width:100%}.merit-matrix .merit-name-col{min-width:110px}.merit-plan-stats{gap:14px}}.season-gate{position:relative;padding:34px 30px;border-top:3px solid #913b30}.season-gate h2{font-size:24px;letter-spacing:.06em}.season-gate .season-options{margin:22px 0 0;gap:16px}.season-gate .season-options button{padding:18px 22px;font-size:16px;min-width:180px;border-left:3px solid #9a4134}.season-gate-add{margin-top:26px;padding-top:18px;border-top:1px dashed #ded3be}.season-gate-add form{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap;margin-top:14px}.season-gate-add label{display:flex;flex-direction:column;gap:6px;min-width:220px}@media(max-width:720px){.season-gate{padding:24px 20px}.season-gate h2{font-size:20px}.season-gate .season-options button{width:100%;min-width:0;text-align:left}}@media(max-width:720px){.petition-foot{flex-direction:column;align-items:stretch}.petition-foot button{width:100%}.petition-meta{flex-direction:column;gap:4px}}.merit-view{margin:18px 0 0}.merit-view button{white-space:nowrap}.alert-rules{margin-bottom:18px;background:#fdf8ee}.alert-rules-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.alert-rules-head h2{margin:0 0 6px}.alert-sub{margin:0;font-size:13px;color:#8a7a5f}.alert-rule{display:flex;align-items:center;gap:12px;padding:9px 0;border-top:1px solid #ece0c9;font-size:13px;color:#6b5c45;flex-wrap:wrap}.alert-rule-text{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.alert-input{width:64px;padding:5px 8px;border:1px solid #cbb891;border-radius:3px;background:#fffcf4;color:#4b3f2c;font:inherit;font-size:13px}.alert-input.wide{width:104px}.alert-tag{display:inline-block;padding:3px 8px;border:1px solid;border-radius:3px;font-size:12px;line-height:1.3;white-space:nowrap}.tag-zero{background:#8d382d;color:#fdf9f0;border-color:#7a2f26}.tag-low{background:#fbefcf;color:#79571b;border-color:#cfb270}.tag-lowAbs{background:#e8dcc6;color:#5d4630;border-color:#bfa987}.alert-rule-extra{font-size:12px;color:#a2927a;margin-left:2px}.tag-drop{background:#fbe3df;color:#9a3b2c;border-color:#dfb0a5}.tag-below{background:#f3e8d4;color:#8a6a2f;border-color:#d8c194}.tag-any{background:#f0ece2;color:#7a6a4e;border-color:#d9d0bc}.alert-note{margin:14px 0 0;font-size:12px;color:#a2927a}.alert-saved{margin-left:8px;color:#216746;font-weight:500}.alert-rules-readonly{margin-bottom:14px}.alert-rules-readonly .alert-sub{line-height:1.75}.alert-rule-hit{margin-top:8px;padding-top:8px;border-top:1px dashed #ece0c9}.alert-rule-hit strong{color:#843c30}.alert-count{margin:0 0 16px;font-size:13px;color:#6b5c45}.alert-count strong{color:#843c30}.alert-overlap{margin-left:8px;color:#a2927a;font-size:12px}.alert-group{margin-bottom:24px}.alert-group:last-child{margin-bottom:0}.alert-group-head{display:flex;align-items:center;gap:9px;margin:0 0 12px;padding-bottom:9px;border-bottom:1px solid #e8dcc4;font-size:16px;letter-spacing:.04em}.alert-group-head .alert-group-dot{width:10px;height:10px;border-radius:2px;flex:none}.alert-group-n{margin-left:2px;padding:2px 8px;border-radius:9px;font-size:12px;font-weight:500;line-height:1.5}.alert-group-desc{margin-left:auto;font-size:12px;font-weight:400;color:#a2927a;letter-spacing:0}.group-chronic .alert-group-head{color:#6b5334}.group-chronic .alert-group-head .alert-group-dot{background:#6b5334}.group-chronic .alert-group-n{background:#efe6d5;color:#6b5334}.group-sudden .alert-group-head{color:#a8341f}.group-sudden .alert-group-head .alert-group-dot{background:#a8341f}.group-sudden .alert-group-n{background:#f7ddd4;color:#a8341f}.alert-list{display:flex;flex-direction:column;gap:10px}.alert-card{padding:13px 15px;border:1px solid #e2d4b8;border-left:3px solid #cbb891;border-radius:4px}.alert-card-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.alert-name{width:auto;flex:none;font-size:15px;font-weight:600;color:#843c30}.alert-tags{display:flex;gap:6px;flex-wrap:wrap}.alert-spark{width:150px;height:34px;flex:none;margin-left:auto;border-radius:3px}.alert-reasons{margin:10px 0 0;padding-left:18px;color:#6b5c45;font-size:13px}.alert-reasons li{margin:4px 0}.group-chronic .alert-card{border-left-color:#6b5334;background:#fbf7ee}.group-chronic .alert-spark{background:#fffcf4;border:1px solid #ece0c9}.group-chronic .spark-line{stroke:#6b5334;stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round}.group-chronic .spark-dot{fill:#6b5334}.group-sudden .alert-card{border-left-color:#a8341f;background:#fdf5f1}.group-sudden .alert-spark{background:#fffcf9;border:1px solid #f0dcd3}.group-sudden .spark-line{stroke:#a8341f;stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round}.group-sudden .spark-dot{fill:#a8341f}@media(max-width:720px){.alert-group-desc{margin-left:0;flex-basis:100%}.alert-spark{width:100%;margin-left:0;height:30px}.alert-card-head{gap:10px}.alert-input{width:56px}}.merit-daycheck{margin:12px 0 0;padding:7px 11px;border:1px solid #e2d4b8;border-radius:3px;background:#fffdf7;font-size:13px;line-height:1.75;color:#5d5039}.merit-daycheck strong{color:#843c30}.merit-daycheck.ok{border-color:#c3d8c8;background:#f4faf5;color:#3d5b48}.merit-daycheck.ok strong{color:#3d5b48}.merit-daycheck.warn{border-color:#e0b0a2;background:#fbf0ec;color:#8d382d}.merit-daycheck.warn strong{color:#8d382d}.merit-daycheck.quiet{border-style:dashed;background:none;color:#a2927a}.merit-daycheck.quiet strong{color:#a2927a}.merit-plan-chips button.merit-chip{font:inherit;font-size:12px;line-height:1.5;padding:2px 8px;cursor:pointer}.merit-plan-chips button.merit-chip:hover{border-color:#bda468;background:#f8f0e0;color:#843c30}.merit-plan-chips button.merit-chip.focus{cursor:default}.merit-plan-chips button.merit-chip.focus:hover{background:#f2e5cb;color:#843c30}.lottery-merit{margin:0 0 14px;padding:12px 14px;border:1px solid #e2d4b8;border-radius:4px;background:#fffdf7}.merit-pick-bar{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.merit-pick-bar label{display:flex;align-items:center;gap:7px;font-size:13px;color:#786952}.merit-pick-bar select{width:auto;flex:none;padding:6px 9px;border:1px solid #cbb891;border-radius:3px;background:#fffcf4;color:#843c30;font:inherit;font-weight:600}.merit-pick-stat{font-size:13px;color:#8a7a5f}.merit-pick-stat strong{color:#843c30}.merit-pick-rules{display:flex;flex-wrap:wrap;align-items:center;gap:9px 22px;margin:12px 0 0;padding-top:11px;border-top:1px dashed #ded3be}.merit-pick-rule{flex:none;display:flex;align-items:center;gap:9px;flex-wrap:wrap;max-width:100%;font-size:13px;color:#5d5039;cursor:pointer}.merit-pick-rule input[type=radio]{flex:none;width:16px;height:16px;min-width:16px;padding:0;margin:0;accent-color:#8d382d}.merit-pick-rule>span{display:inline;margin:0;white-space:nowrap}.merit-pick-rule>span:first-of-type{white-space:normal}.merit-pick-rule>span:last-of-type{white-space:nowrap}.merit-pick-rule strong{color:#843c30}.merit-pick-num{flex:none;width:78px;padding:5px 8px;border:1px solid #cbb891;border-radius:3px;background:#fffcf4;color:#4b3f2c;font:inherit;font-size:13px;text-align:right}.merit-pick-num.wide{width:122px}.merit-pick-num:disabled{opacity:.5}.merit-pick-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:14px 0 0}.merit-pick-note{font-size:12px;color:#a2927a;line-height:1.7}.merit-pick-note strong{color:#8d382d}.merit-pick-modal{max-width:620px}.merit-tie-note{margin:0;font-size:13px;color:#786952}@media(max-width:720px){.merit-pick-bar{flex-direction:column;align-items:stretch;gap:10px}.merit-pick-actions{flex-direction:column;align-items:stretch}.merit-pick-actions .primary{width:100%}}.alert-filter{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:14px 0 0;padding:9px 12px;border:1px solid #e2d4b8;border-radius:4px;background:#fffdf7}.alert-filter-label{font-size:12px;color:#8a7a5f;letter-spacing:.04em}.alert-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid #cbb891;border-radius:14px;background:#fffcf4;color:#5d5039;font:inherit;font-size:12.5px;line-height:1.5;cursor:pointer}.alert-chip:hover{border-color:#bda468;background:#f8f0e0}.alert-chip .alert-chip-n{font-variant-numeric:tabular-nums;font-weight:600;color:#843c30}.alert-chip-dot{flex:none;width:8px;height:8px;border-radius:50%;border:1px solid transparent}.alert-chip.zero .alert-chip-dot{background:#8d382d}.alert-chip.lowAbs .alert-chip-dot{background:#c9b48f}.alert-chip.low .alert-chip-dot{background:#e6c877}.alert-chip.drop .alert-chip-dot{background:#d98a76}.alert-chip.below .alert-chip-dot{background:#cdae72}.alert-chip.off{background:#f4f1e9;color:#a89b84;border-color:#ded5c2;text-decoration:line-through}.alert-chip.off .alert-chip-n{color:#a89b84;font-weight:400}.alert-chip.off .alert-chip-dot{background:none;border-color:#c9c0ae}.alert-chip.on[aria-pressed=true]{box-shadow:inset 0 1px 2px #78643c1f}.alert-filter-all{align-self:center}.alert-filter-sum{margin-left:auto;font-size:12.5px;color:#8a7a5f}.alert-filter-sum strong{color:#843c30}.alert-filter-note{margin:7px 0 0;font-size:12px;color:#a2927a;line-height:1.7}.alert-filter-note strong{color:#8d382d}.alert-filter-empty{margin-top:14px}@media(max-width:640px){.alert-filter{gap:6px}.alert-filter-sum{margin-left:0;width:100%}}
