70 lines
4.5 KiB
CSS
70 lines
4.5 KiB
CSS
/* 设计令牌、reset、整体栅格与左栏/树/页脚 */
|
|||
|
|
:root{--bg:#0f1115;--pan:#171a21;--pan2:#1f242e;--tx:#e6e8ee;--dim:#8b93a7;--ac:#4c9aff;--ok:#3ddc97;--warn:#ffb454;--line:#2b323e}
|
||
|
|
*{box-sizing:border-box}
|
||
|
|
html,body{margin:0;height:100%;background:var(--bg);color:var(--tx);
|
||
|
|
font:13px/1.55 "Microsoft YaHei","Segoe UI",system-ui,sans-serif;overflow:hidden;
|
||
|
|
-webkit-user-select:none;user-select:none}
|
||
|
|
#app{display:grid;grid-template-columns:322px minmax(430px,1fr);grid-template-rows:46px auto 1fr 26px;
|
||
|
|
height:100%;min-width:0;overflow-x:auto}
|
||
|
|
header{grid-column:1/-1;display:flex;align-items:center;gap:8px;padding:0 12px;flex-wrap:nowrap;
|
||
|
|
overflow-x:auto;overflow-y:hidden;background:var(--pan);border-bottom:1px solid var(--line)}
|
||
|
|
header .q{white-space:nowrap;flex:none;color:var(--dim);font-size:12px}
|
||
|
|
header b{font-size:14px;white-space:nowrap;flex:none}
|
||
|
|
header .sp{flex:1 1 auto;min-width:6px}
|
||
|
|
button,select{background:var(--pan2);color:var(--tx);border:1px solid var(--line);
|
||
|
|
border-radius:5px;padding:4px 9px;font:inherit;cursor:pointer;white-space:nowrap;flex:none}
|
||
|
|
button:hover{border-color:var(--ac);color:#fff}
|
||
|
|
button.on{background:#22406b;border-color:var(--ac)}
|
||
|
|
#bHarn.on{background:#5c3b1e;border-color:#f59e0b;color:#fbbf24}
|
||
|
|
aside{background:var(--pan);overflow:auto;padding:8px;min-width:0}
|
||
|
|
#left{border-right:1px solid var(--line)}
|
||
|
|
#app.l{grid-template-columns:322px minmax(430px,1fr)}
|
||
|
|
#stage{position:relative;overflow:hidden;min-width:0;
|
||
|
|
background:radial-gradient(120% 120% at 50% 0%,#1b2028 0%,#0d0f13 70%)}
|
||
|
|
canvas{display:block;width:100%;height:100%}
|
||
|
|
footer{grid-column:1/-1;background:var(--pan);border-top:1px solid var(--line);
|
||
|
|
display:flex;align-items:center;gap:14px;padding:0 12px;color:var(--dim);font-size:12px;
|
||
|
|
white-space:nowrap;overflow:hidden}
|
||
|
|
@media (max-width:1150px){
|
||
|
|
#app{grid-template-columns:300px minmax(400px,1fr)}
|
||
|
|
}
|
||
|
|
@media (max-width:760px){
|
||
|
|
#app{grid-template-columns:minmax(0,1fr)}
|
||
|
|
#left{display:none}
|
||
|
|
#app.l #left{display:block}
|
||
|
|
}
|
||
|
|
h3{font-size:12px;margin:10px 0 6px;color:var(--ac);letter-spacing:.4px;-webkit-user-select:none;user-select:none}
|
||
|
|
.row{display:flex;align-items:center;gap:6px;margin:3px 0}
|
||
|
|
.row label{flex:1;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none}
|
||
|
|
.row .q{color:var(--dim);font-size:11px;-webkit-user-select:none;user-select:none}
|
||
|
|
.chip{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:5px;flex:none}
|
||
|
|
.pr{color:var(--ok)}.ex{color:var(--warn)}.mo{color:#9aa4b8}
|
||
|
|
table{width:100%;border-collapse:collapse;font-size:11.5px;-webkit-user-select:text;user-select:text}
|
||
|
|
th,td{border-bottom:1px solid var(--line);padding:3px 4px;text-align:left;vertical-align:top}
|
||
|
|
th{color:var(--dim);font-weight:400;position:sticky;top:0;background:var(--pan);-webkit-user-select:none;user-select:none}
|
||
|
|
.j-box{margin-bottom:7px;padding:3px 4px 1px;border-radius:4px;transition:background .15s}
|
||
|
|
.j-box:hover{background:rgba(255,255,255,.03)}
|
||
|
|
.j-box label{cursor:default;font-weight:500}
|
||
|
|
.j-val{font-size:11px;color:var(--ac);cursor:pointer;padding:1px 5px;border-radius:3px;
|
||
|
|
background:rgba(76,154,255,.1);font-variant-numeric:tabular-nums;transition:all .15s;
|
||
|
|
-webkit-user-select:none;user-select:none}
|
||
|
|
.j-val:hover{background:var(--ac);color:#fff}
|
||
|
|
input[type=range]{width:100%;height:18px;accent-color:var(--ac);cursor:pointer;display:block;margin:1px 0}
|
||
|
|
label em{font-style:normal;color:var(--mu);font-size:10.5px;margin-left:4px}
|
||
|
|
label em.ok{color:#5ddc90}
|
||
|
|
.gr{font-size:11px;color:var(--dim);margin:2px 0 4px;-webkit-user-select:none;user-select:none}
|
||
|
|
#hud{position:absolute;left:10px;top:8px;pointer-events:none;font-size:11.5px;color:var(--dim);
|
||
|
|
background:rgba(15,17,21,.72);border:1px solid var(--line);border-radius:6px;padding:6px 9px;max-width:60%}
|
||
|
|
#hud b{color:var(--tx)}
|
||
|
|
#hud:empty{display:none}
|
||
|
|
#note{position:absolute;right:10px;bottom:10px;max-width:330px;background:rgba(15,17,21,.88);
|
||
|
|
border:1px solid var(--ac);border-radius:7px;padding:8px 10px;font-size:12px;display:none;
|
||
|
|
-webkit-user-select:text;user-select:text}
|
||
|
|
.kv{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;font-size:11.5px;-webkit-user-select:text;user-select:text}
|
||
|
|
.kv i{color:var(--dim);font-style:normal;-webkit-user-select:none;user-select:none}
|
||
|
|
.tab{padding:4px 9px;-webkit-user-select:none;user-select:none}
|
||
|
|
.bad{color:#ff6b6b}.good{color:var(--ok)}
|
||
|
|
svg{display:block;width:100%;height:auto;background:#fff;border-radius:6px}
|
||
|
|
#sheet{display:none;padding:10px;overflow:auto;height:100%}
|
||
|
|
|