.files-page{width:100%;min-height:calc(100vh - 92px);padding:64px clamp(24px,5vw,88px)}
.files-shell{min-height:calc(100vh - 190px);border:1px solid var(--line);background:rgba(4,12,6,.72);padding:30px}
.files-head{display:flex;align-items:end;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line);padding-bottom:25px}
.files-head h1{margin:0;color:#e6f8e9;font:500 clamp(28px,4.3vw,54px) 'DM Mono';letter-spacing:-.07em}
.files-intro{max-width:620px;margin:16px 0 0;color:var(--muted);font:12px 'DM Mono';line-height:1.65}
.files-state{display:flex;align-items:center;gap:8px;flex:none;color:var(--green);font:10px 'DM Mono';letter-spacing:.1em;white-space:nowrap}
.files-state .status-dot{margin:0;background:var(--green);box-shadow:0 0 10px var(--green)}
.files-state[data-state=connecting] .status-dot,.files-state[data-state=syncing] .status-dot{background:#ffd34f;box-shadow:0 0 10px #ffd34f}
.files-state[data-state=error]{color:#ff8473}
.files-state[data-state=error] .status-dot{background:#ff725d;box-shadow:0 0 10px #ff725d}
.file-drop{min-height:315px;margin-top:28px;border:1px dashed #315e38;background:rgba(7,16,9,.55);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--muted);font:11px 'DM Mono';text-align:center;cursor:pointer;transition:border-color .18s,background .18s,box-shadow .18s}
.file-drop:hover,.file-drop:focus-visible,.file-drop.dragover{border-color:var(--green);background:rgba(17,42,23,.58);box-shadow:0 0 28px #b7ff5418;outline:0}
.file-drop-mark{margin:0;color:var(--green);font:42px/1 'DM Mono';text-shadow:0 0 14px #b7ff5477}
.file-drop strong{color:#e6f8e9;font:500 18px 'DM Mono';letter-spacing:.08em}
.file-drop span{color:#638169}
.file-drop .new-btn{margin-top:9px}
.file-list{display:grid;gap:12px;margin-top:18px}
.current-file{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:19px;padding:22px;border:1px solid #315e38;background:rgba(13,31,17,.82)}
.file-icon{display:grid;place-items:center;width:52px;height:52px;border:1px solid var(--green);color:var(--green);font:26px 'DM Mono';text-shadow:0 0 13px #b7ff5477}
.file-info{min-width:0}.panel-kicker{margin:0 0 8px;color:var(--green);font:10px 'DM Mono';letter-spacing:.1em}.file-info h2{margin:0;color:#e6f8e9;font:500 18px 'DM Mono';overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-info p:last-child{margin:8px 0 0;color:var(--muted);font:11px 'DM Mono';line-height:1.5}
.file-actions{display:flex;align-items:center;gap:8px}.file-action{border:1px solid #477e4c;padding:12px 14px;color:var(--green);font:11px 'DM Mono';text-decoration:none;white-space:nowrap}.file-action:hover{border-color:var(--green);background:#132a18;box-shadow:0 0 15px #b7ff5426}.file-delete{border-color:#8c4038;color:#ff8473;background:transparent;cursor:pointer}.file-delete:hover{border-color:#ff8473;background:#321813}
.files-foot{display:flex;justify-content:space-between;gap:20px;padding-top:13px;color:#55745b;font:9px 'DM Mono';letter-spacing:.08em}.files-foot span:first-child{color:var(--green)}
@media(max-width:700px){.files-page{padding:34px 14px 22px}.files-shell{padding:20px 16px}.files-head{align-items:flex-start;flex-direction:column;gap:20px}.files-head h1{font-size:30px}.current-file{grid-template-columns:auto minmax(0,1fr)}.file-actions{grid-column:1/-1}.file-action{flex:1;text-align:center}.files-foot{align-items:flex-start;flex-direction:column;gap:8px}}
