/* home.css — landing ParamForge (Slice 1: workspace locale) */
.home-body { display:flex; flex-direction:column; min-height:100vh; background:var(--bg); color:var(--ink); }
.home-top { display:flex; align-items:center; justify-content:space-between; padding:10px 18px; background:var(--bg2); border-bottom:1px solid var(--line); }
.home-top .brand { display:flex; align-items:center; gap:9px; }
.home-top .logo-btn { display:inline-flex; align-items:center; justify-content:center; width:24px; height:24px; border-radius:7px; background:var(--accent); color:var(--accent-ink); font-weight:800; }
.home-top .bname { font-weight:800; font-size:15px; }
.ws-chip, .user-chip { font-size:11.5px; color:var(--mut); background:var(--panel); border:1px solid var(--line); border-radius:20px; padding:3px 10px; }
.ws-chip:empty, .user-chip:empty { display:none; }
.home-actions { display:flex; align-items:center; gap:10px; }
.home-actions button { font:inherit; font-size:12px; color:var(--ink); background:var(--panel); border:1px solid var(--line); border-radius:7px; padding:6px 12px; cursor:pointer; }
.home-actions button:hover { border-color:var(--accent); }

.home-main { flex:1; display:flex; align-items:center; justify-content:center; padding:32px 18px; }

/* onboarding */
.ob-card { width:min(640px,94vw); background:var(--bg2); border:1px solid var(--line); border-radius:16px; padding:26px; box-shadow:0 14px 40px rgba(0,0,0,.4); }
.ob-card h1 { font-size:22px; margin:0 0 6px; }
.ob-sub { color:var(--mut); font-size:13.5px; margin:0 0 16px; }
.ob-f { display:flex; flex-direction:column; gap:5px; font-size:12px; color:var(--mut); margin:10px 0; }
.ob-f input { font:inherit; font-size:13px; color:var(--ink); background:var(--bg); border:1px solid var(--line); border-radius:8px; padding:8px 10px; }
.ob-f input:focus { outline:none; border-color:var(--accent); }
.ob-storage { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:14px 0; }
.ob-opt { border:1.5px solid var(--line); border-radius:12px; padding:14px; cursor:pointer; transition:border-color .15s; }
.ob-opt.on { border-color:var(--accent); background:rgba(43,140,94,.08); }
.ob-opt.disabled { opacity:.6; cursor:not-allowed; }
.ob-opt-h { font-weight:700; font-size:14px; margin-bottom:4px; }
.ob-opt-d { font-size:11.5px; color:var(--mut); }
.ob-soon { font-size:10px; font-weight:700; color:var(--accent); background:rgba(43,140,94,.15); border-radius:10px; padding:1px 7px; margin-left:4px; }
.ob-connectors { display:flex; gap:8px; margin-top:10px; flex-wrap:wrap; }
.conn-btn { font:inherit; font-size:12px; color:var(--ink); background:var(--panel); border:1px solid var(--line); border-radius:8px; padding:6px 10px; }
.conn-btn[disabled] { opacity:.55; cursor:not-allowed; }
.conn-more { width:30px; height:30px; font-size:16px; color:var(--ink); background:var(--panel); border:1px dashed var(--line); border-radius:8px; cursor:not-allowed; }
.ob-foot, .modal-foot { display:flex; align-items:center; justify-content:flex-end; gap:12px; margin-top:16px; }
.ob-err { flex:1; color:#ff8080; font-size:12px; }
.btn-accent { font:inherit; font-weight:700; font-size:13px; color:var(--accent-ink); background:var(--accent); border:0; border-radius:9px; padding:9px 16px; cursor:pointer; }
.btn-accent:hover { filter:brightness(1.08); }

/* hub 3 scelte */
.home-hub { width:min(920px,96vw); }
.hub-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.hub-card { display:flex; flex-direction:column; align-items:flex-start; gap:8px; text-align:left; padding:22px; min-height:150px; background:var(--bg2); border:1px solid var(--line); border-radius:14px; cursor:pointer; color:var(--ink); transition:transform .12s, border-color .12s; }
.hub-card:hover { transform:translateY(-3px); border-color:var(--accent); }
.hub-card.accent { background:linear-gradient(180deg,rgba(43,140,94,.14),var(--bg2)); border-color:var(--accent); }
.hub-card:disabled { opacity:.5; cursor:not-allowed; transform:none; }
.hc-ic { font-size:28px; }
.hc-t { font-weight:800; font-size:16px; }
.hc-d { font-size:12px; color:var(--mut); }

.hub-recent { margin-top:26px; }
.hr-head { display:flex; align-items:center; justify-content:space-between; font-size:12px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; color:var(--mut); margin-bottom:8px; }
.hr-refresh { font:inherit; cursor:pointer; color:var(--ink); background:var(--panel); border:1px solid var(--line); border-radius:6px; padding:2px 8px; }
.proj-list { display:flex; flex-direction:column; gap:6px; }
.proj-row { display:flex; align-items:center; gap:12px; padding:10px 12px; background:var(--bg2); border:1px solid var(--line); border-radius:10px; cursor:pointer; }
.proj-row:hover { border-color:var(--accent); }
.proj-ic { font-size:18px; }
.proj-mid { flex:1; min-width:0; }
.proj-name { font-size:13px; font-weight:700; }
.proj-sub { font-size:11px; color:var(--mut); }
.proj-empty { font-size:12.5px; color:var(--mut); padding:12px; text-align:center; }

/* modali (wizard + impostazioni) */
.pf-modal { position:fixed; inset:0; z-index:90; display:flex; align-items:center; justify-content:center; background:rgba(0,0,0,.55); }
.pf-modal[hidden] { display:none; }
.modal-card { width:min(560px,94vw); max-height:88vh; overflow-y:auto; background:var(--bg2); border:1px solid var(--line); border-radius:14px; box-shadow:0 16px 46px rgba(0,0,0,.5); }
.modal-head { display:flex; align-items:center; justify-content:space-between; padding:14px 18px; border-bottom:1px solid var(--line); font-weight:800; }
.modal-x { font:inherit; cursor:pointer; color:var(--ink); background:transparent; border:0; font-size:16px; }
.modal-body { padding:16px 18px; }
.modal-foot { padding:12px 18px; border-top:1px solid var(--line); }
.modal-foot button { font:inherit; font-size:12.5px; color:var(--ink); background:var(--panel); border:1px solid var(--line); border-radius:8px; padding:8px 14px; cursor:pointer; }
.wiz-tree { margin-top:12px; border:1px solid var(--line); border-radius:10px; padding:12px; background:var(--bg); }
.wt-title { font-size:11px; color:var(--mut); margin-bottom:6px; }
.wt-body { font-family:ui-monospace,monospace; font-size:12px; color:var(--ink); white-space:pre; }
.set-sec { font-size:11px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; color:var(--mut); margin:14px 0 8px; }
.set-note { font-size:11.5px; color:var(--mut); margin-top:12px; line-height:1.5; }
.set-radio { display:flex; align-items:center; gap:8px; font-size:13px; padding:7px 9px; border:1px solid var(--line); border-radius:8px; margin-bottom:6px; cursor:pointer; }
.set-radio input { accent-color:var(--accent); }
.set-radio input:disabled { opacity:.5; }
#driveStatus { margin-top:4px; }
