:root{--green:#176c4b;--green2:#0f5138;--ink:#17231f;--muted:#66736e;--bg:#f4f7f5;--line:#dce5e0;--white:#fff}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.45 system-ui,-apple-system,"Segoe UI",sans-serif}header{height:68px;background:var(--white);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(20px,calc((100% - 1180px)/2));position:sticky;top:0;z-index:5}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink);font-size:18px;font-weight:750}.logo,.login-mark{background:linear-gradient(145deg,var(--green),var(--green2));color:white;border-radius:12px;display:grid;place-items:center;font-weight:800}.logo{width:40px;height:40px}.login-mark{width:72px;height:72px;margin:auto;font-size:24px}nav{display:flex;gap:18px}nav a{color:var(--muted);text-decoration:none;font-weight:600}main{max-width:1180px;margin:0 auto;padding:32px 20px 60px}.hero{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:26px}h1{font-size:30px;margin:0 0 6px}h2{font-size:19px;margin:0 0 18px}p{color:var(--muted);margin:0}.search{display:flex;gap:8px;width:min(100%,480px)}input{width:100%;padding:12px 13px;border:1px solid var(--line);border-radius:9px;background:white;font:inherit}button,.btn{border:0;border-radius:9px;padding:11px 17px;background:var(--green);color:white;font:inherit;font-weight:700;text-decoration:none;cursor:pointer;display:inline-block}.secondary{background:#e8f0ec;color:var(--green2)}.small{padding:7px 10px;font-size:13px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.source-card{background:white;border:1px solid var(--line);border-radius:14px;padding:22px;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;gap:5px;box-shadow:0 5px 18px #183d2b0a}.source-card:hover{border-color:#90b8a5}.folder{font-size:32px}.source-card small,.file-name small{color:var(--muted)}.file-list,.panel{background:white;border:1px solid var(--line);border-radius:14px;overflow:hidden}.file-row{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:8px;min-height:70px;padding:10px 18px;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink)}.file-row:last-child{border:0}.file-icon{font-size:22px}.file-name{min-width:0;display:flex;flex-direction:column}.file-name strong{overflow-wrap:anywhere}.actions{display:flex;gap:8px}.empty{padding:40px;text-align:center;color:var(--muted)}.crumb{margin-bottom:8px}.crumb a{color:var(--green)}.login-card{width:min(100%,420px);margin:7vh auto;background:white;border:1px solid var(--line);border-radius:18px;padding:36px;box-shadow:0 18px 60px #133c2920;text-align:center}.login-card h1{margin-top:16px}.login-card form{text-align:left;margin-top:28px}.login-card label,.form-grid label{display:block;font-weight:650;margin-bottom:14px}.login-card input,.form-grid input{margin-top:6px}.login-card button{width:100%;margin-top:8px}.panel{padding:22px;margin-top:20px;overflow:auto}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));align-items:end;gap:14px}.form-grid label{margin:0}.check{display:flex!important;align-items:center;gap:8px;padding:12px 0}.check input{width:auto;margin:0}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);white-space:nowrap}th{color:var(--muted);font-size:13px}.alert{padding:12px 15px;border-radius:9px;margin-bottom:18px}.alert.error{background:#fde8e8;color:#8a1c1c}.alert.success{background:#e0f4e9;color:#145b3d}code{font-size:13px}@media(max-width:760px){header{height:auto;min-height:64px;padding:12px 16px;align-items:flex-start}.brand span:last-child{display:none}nav{gap:12px;overflow-x:auto;font-size:13px;padding-top:10px}main{padding:24px 14px}.hero{display:block}.hero .search{margin-top:18px}.grid{grid-template-columns:1fr 1fr}.file-row{grid-template-columns:32px 1fr}.actions{grid-column:2;flex-wrap:wrap}.btn{padding:8px 11px;font-size:13px}.source-card{padding:16px}h1{font-size:25px}}@media(max-width:420px){.grid{grid-template-columns:1fr}}

