:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color-scheme:dark;background:#101621;color:#edf1f6;font-size:15px}
*{box-sizing:border-box}body{margin:0;min-height:100vh;padding:28px 18px}
.layout{max-width:1080px;margin:auto}.panel{background:#1c2636;border:1px solid #374459;border-radius:14px;padding:24px;margin:20px 0;box-shadow:0 8px 24px #05091330}.login{max-width:410px;margin:11vh auto;padding:30px}
h1{font-size:1.6rem;margin:0 0 5px}h2{font-size:1.2rem;margin:0 0 13px}.top{display:flex;align-items:center;justify-content:space-between;gap:20px}
.muted{color:#acb9cb}.small{font-size:.83rem}.top p{margin:.25rem 0}.panel>p.muted{margin-top:0;line-height:1.5}
button,.button,.file-pick{font:inherit;border:0;border-radius:8px;background:#87bfff;color:#091321;font-weight:650;padding:10px 13px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;white-space:nowrap}
button:hover,.button:hover,.file-pick:hover{filter:brightness(1.12)}button.secondary,.button.secondary{background:#303e53;border:1px solid #64758e;color:#fff}
.danger{background:#d84d59;color:#fff}.danger-outline{background:transparent;border:1px solid #e1737e;color:#ffadb3}
button:focus-visible,input:focus-visible,.file-pick:focus-within,.drop-zone:focus-visible{outline:2px solid #a5d1ff;outline-offset:3px}
label{display:block}input[type=password]{background:#121b28;border:1px solid #71809b;border-radius:8px;color:#fff;font:inherit;padding:10px 12px;width:100%;margin:6px 0 10px}
.login label{font-weight:600}.login form button{width:100%;margin-top:8px}.error{color:#ffbdc5;white-space:pre-wrap}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:10px 0}
.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}.section-head h2{margin:0}
.drop-zone{border:2px dashed #8394a8;border-radius:12px;padding:36px 12px;text-align:center;margin:16px 0;display:grid;gap:9px;cursor:default}.drop-zone.over{background:#283d56;border-color:#c6ddff}
.file-pick{position:relative;overflow:hidden}.file-pick input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;font-size:100px}
.security-options{display:grid;gap:10px;margin:17px 0}.security-options p{margin:0}.security-options label{font-weight:500}
.transfer{padding:13px 16px;border:1px solid #3d4b61;border-radius:9px;margin:12px 0;overflow-wrap:anywhere}.transfer small{display:block;margin-bottom:6px}
.transfer progress{width:100%;height:12px;display:block;margin:12px 0;accent-color:#71c1b5}.transfer .section-head{margin:0}
.resume-input{max-width:205px;padding:6px;border:1px solid #7e8ba1;border-radius:6px}.folder-row,.file-row{padding:13px 8px;border-bottom:1px solid #39485e;display:flex;align-items:center;justify-content:space-between;gap:16px;overflow-wrap:anywhere}
.file-detail{display:grid;gap:5px;min-width:0}.file-detail strong{overflow-wrap:anywhere}.file-row .actions{flex-shrink:0}.zip-select{display:flex;gap:5px;align-items:center;font-size:.82rem}
#message{margin-top:10px;min-height:1.4em;color:#c8e7f5;overflow-wrap:anywhere}
dialog{background:#1a2637;color:#fff;border:1px solid #758aa4;border-radius:13px;padding:24px;max-width:650px;width:calc(100% - 32px);box-shadow:0 14px 55px #0009}
dialog::backdrop{background:#000a}.preview-items{background:#111d2d;color:#d0daec;padding:12px;max-height:190px;overflow:auto;white-space:pre-wrap;word-break:break-all;font-size:.85rem}
@media(max-width:700px){body{padding:12px}.panel{padding:17px}.top{align-items:flex-start}.file-row{align-items:flex-start;flex-direction:column}.file-row .actions{width:100%}.drop-zone{padding:24px 10px}}
