:root{color-scheme:dark;font:15px/1.55 Inter,Segoe UI,system-ui,sans-serif;background:var(--as-bg);color:var(--as-text);--line:var(--as-border);--muted:var(--as-muted);--accent:var(--as-lime)}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}a{color:var(--accent);text-decoration:none}button,input{font:inherit}button,a,input{outline-offset:4px}button{cursor:pointer;border:1px solid var(--as-border);background:var(--as-surface-2);color:inherit;border-radius:9px;padding:10px 15px}button:hover{background:var(--as-surface-3)}button:disabled{opacity:.55;cursor:wait}button.primary{background:var(--accent);color:var(--as-on-accent);border-color:var(--accent);font-weight:700}input{width:100%;min-width:0;padding:12px;border:1px solid var(--line);background:var(--as-bg);color:inherit;border-radius:8px}input:focus{border-color:var(--accent);outline:1px solid var(--accent)}label{display:grid;gap:8px;font-size:13px}p{margin:8px 0 18px}h1,h2,h3{line-height:1.2;margin:0}h1{font-size:38px;letter-spacing:-1.5px}h2{font-size:21px;letter-spacing:-.5px}h3{font-size:17px}.muted{color:var(--muted);font-size:13px}.eyebrow{color:var(--accent);font-size:11px;letter-spacing:1.8px;display:block;margin-bottom:18px}.account-header{max-width:1280px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:30px}.brand{display:flex;align-items:center;gap:14px;color:var(--accent);font-size:34px;font-weight:800}.brand span{font-size:19px;color:var(--as-text);font-weight:500;letter-spacing:-.6px}.account-main{max-width:1180px;margin:auto;padding:30px 28px 70px}.auth-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;min-height:65vh}.account-intro h1{font-size:clamp(44px,5vw,72px);line-height:1.05;letter-spacing:-3px}.account-intro>p{color:var(--muted);max-width:360px;margin-top:28px;line-height:1.8}.intro-note{padding:20px 0;border-top:1px solid var(--line);max-width:360px;color:var(--as-muted);font-size:12px}.account-card,.connection-card{border:1px solid var(--line);background:var(--as-surface-1);border-radius:15px;padding:28px}.account-card form{display:grid;gap:19px;margin-top:25px}.account-tabs{display:flex;gap:8px;margin-bottom:28px}.account-tabs button{background:none;border-color:transparent;color:var(--muted)}.account-tabs button.active{background:var(--as-surface-3);color:var(--accent);border-color:var(--as-border-strong)}.auth-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.text-button{border:0;background:none;color:var(--accent);font-size:12px;padding:0}.dashboard-heading,.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.dashboard-heading .eyebrow{margin-bottom:10px}.account-notice{border:1px solid var(--as-border-strong);border-radius:13px;background:var(--as-surface-2);padding:24px;margin:25px 0 40px;max-width:900px}.account-notice p{color:var(--as-muted);font-size:14px}.account-notice a{font-size:13px}.connections-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:18px;margin-bottom:42px}.connection-heading{display:flex;align-items:start;justify-content:space-between;gap:12px}.connection-state{font-size:10px;border:1px solid var(--as-border-strong);padding:3px 7px;border-radius:30px;color:var(--as-muted)}.connection-state.ready{color:var(--as-lime);border-color:var(--as-border-strong);background:var(--as-lime-soft)}.connection-card form{display:grid;gap:15px;margin-top:20px}.connection-actions{display:flex;flex-wrap:wrap;gap:9px}.connection-actions button{font-size:12px;padding:9px 11px}.connection-feedback{font-size:12px;color:var(--as-text);overflow-wrap:anywhere;margin:10px 0 0}.connection-feedback.error{color:var(--as-danger)}.connection-saved{font-size:12px;color:var(--muted)}.task-list{display:grid;gap:10px;margin-bottom:34px}.task-row{display:flex;justify-content:space-between;align-items:start;gap:20px;border:1px solid var(--line);border-radius:10px;padding:17px;background:var(--as-surface-1)}.task-row strong{display:block;font-size:13px;overflow-wrap:anywhere}.task-row p{font-size:12px;margin:6px 0 0;color:var(--muted)}.task-row a{display:inline-block;font-size:12px;margin-top:7px}.task-state{font-size:12px;white-space:nowrap;color:var(--as-text)}.task-state.failed,.task-state.interrupted{color:var(--as-danger)}.task-state.completed{color:var(--as-lime)}.password-settings{max-width:620px}.account-status{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:18px 24px;border:1px solid var(--as-border-strong);border-radius:12px;background:var(--as-surface-3);box-shadow:0 15px 60px var(--as-shadow);width:min(620px,92vw);z-index:50}.account-status.error{border-color:var(--as-danger);background:var(--as-danger-soft)}.account-footer{text-align:center;padding:25px;border-top:1px solid var(--line);color:var(--as-muted);font-size:12px}@media(max-width:760px){.account-header{padding:18px}.account-main{padding:20px 18px 70px}.auth-layout{grid-template-columns:1fr;gap:30px}.account-intro h1{font-size:44px}.account-intro .intro-note{display:none}.account-intro>p{max-width:none}.account-card,.connection-card{padding:22px}.dashboard-heading,.section-heading{align-items:start;flex-wrap:wrap}.task-row{flex-direction:column;gap:10px}}
.account-header .brand { color:var(--as-text); font-size:24px; letter-spacing:-.8px; gap:9px; }
.connection-card select { font:inherit; width:100%; min-width:0; padding:12px; border:1px solid var(--line); background:var(--as-bg); color:inherit; border-radius:8px; }
.connection-card select:focus { outline:1px solid var(--accent); outline-offset:4px; }
.higgsfield-card { grid-column:1/-1; min-width:0; }
.higgsfield-current-mode { font-weight:650; margin:18px 0 8px; }
.higgsfield-zones { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin-top:24px; }
.higgsfield-zone { min-width:0; border:1px solid var(--line); border-radius:12px; padding:20px; background:var(--as-bg); }
.higgsfield-zone h4 { margin:0; font-size:16px; }
.higgsfield-zone .connection-heading { align-items:center; flex-wrap:wrap; }
.higgsfield-zone .connection-state { flex-shrink:0; }
.higgsfield-zone p { overflow-wrap:anywhere; }
.higgsfield-connection-state { font-size:13px; margin:20px 0; }
.higgsfield-classic-details:empty { display:none; }
.higgsfield-classic-details { padding:0 0 10px; }
.higgsfield-link-progress { margin-top:18px; padding:14px; border:1px solid var(--line); border-radius:8px; font-size:13px; }
.higgsfield-link-progress.error { color:var(--as-danger); }
.higgsfield-link-progress p { margin:0; }
.higgsfield-link-progress button { margin-top:12px; }
.higgsfield-copy-link { margin-top:14px; min-width:0; }
.higgsfield-copy-link summary { cursor:pointer; color:var(--as-muted); }
.higgsfield-copy-link[open] summary { margin-bottom:12px; }
.higgsfield-copy-link input { width:100%; min-width:0; box-sizing:border-box; font-size:12px; }
.higgsfield-copy-link .connection-saved { margin-top:10px; }
.higgsfield-workspace-choice { margin-top:14px; min-width:0; }
.higgsfield-workspace-choice select { width:100%; min-width:0; box-sizing:border-box; }
.higgsfield-link-progress .higgsfield-cli-version { margin-top:8px; }
.higgsfield-zone button:disabled { cursor:not-allowed; }
@media(max-width:850px) { .higgsfield-zones { grid-template-columns:1fr; } }
.account-tabs button.active { background:transparent; border:0; border-bottom:2px solid var(--as-lime); border-radius:0; }
button.primary:hover { background:var(--as-lime-hover); }
.eyebrow { color:var(--as-muted); }
:root .drive-settings { margin-bottom: 35px; } .drive-settings .section-heading { margin-bottom: 0; }
.account-footer nav{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 24px;margin-top:12px}.account-footer nav a{padding:4px 0}
.drive-title{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.drive-settings .section-heading>div:first-child{min-width:0;flex:1}.drive-settings .connection-actions{flex-shrink:0}.drive-settings p{overflow-wrap:anywhere}.drive-settings #driveStatus{margin:10px 0 0}.drive-settings .drive-folder-hint{margin:16px 0 0;padding-top:14px;border-top:1px solid var(--line)}.drive-settings button:disabled{cursor:not-allowed}.drive-settings[aria-busy=true] button:disabled{cursor:wait}.drive-settings[data-state=error]{border-color:var(--as-danger)}@media(max-width:760px){.drive-settings .section-heading>div:first-child{flex-basis:100%}}
.connection-local-note { border: 1px solid var(--as-border-strong); border-radius: 9px; padding: 14px; background: var(--as-lime-soft); color: var(--as-lime); }
.connection-local-note strong { display: block; font-size: 13px; }
.connection-local-note p { margin: 8px 0 0; font-size: 12px; line-height: 1.65; }
.task-view-button { margin-top: 12px; font-size: 12px; }
.task-results { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(260px,100%),1fr)); gap: 14px; margin-top: 20px; }
.task-results figure { margin: 0; padding: 12px; border: 1px solid var(--line); border-radius: 8px; min-width: 0; }
.task-results img, .task-results video { display: block; width: 100%; height: 340px; object-fit: contain; background: var(--as-media); }
.task-results a { overflow-wrap: anywhere; }
.task-row>div { flex: 1; min-width: 0; }
/* Only one page of the private catalogue is mounted; media keeps its aspect ratio. */
.library-section { margin: 0 0 48px; padding-bottom: 32px; border-bottom: 1px solid var(--line); scroll-margin-top: 24px; }
.library-toolbar { display: grid; grid-template-columns: minmax(0,1fr) minmax(180px,240px); gap: 18px; }
.library-toolbar select { width: 100%; min-width: 0; font: inherit; color: inherit; background: var(--as-bg); border: 1px solid var(--line); padding: 12px; border-radius: 8px; }
.library-grid { display: grid; grid-template-columns: repeat(auto-fill,minmax(min(300px,100%),1fr)); gap: 20px; }
.library-card { border: 1px solid var(--line); border-radius: 12px; overflow: hidden; min-width: 0; background: var(--as-surface-1); }
.library-media { display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 12px; width: 100%; height: 300px; min-height: 280px; background: var(--as-bg); }
.library-image-button { border: 0; padding: 0; border-radius: 0; width: 100%; height: 100%; background: transparent; }
.library-image-button:hover { background: var(--as-surface-1); }
.library-image-button img { display: block; width: 100%; height: 100%; object-fit: contain; }
.library-play { display: grid; justify-items: center; gap: 12px; padding: 25px; background: var(--as-surface-2); }
.library-play-icon { font-size: 40px; line-height: 1; color: var(--accent); }
.library-archive { font-size: 42px; font-weight: 700; color: var(--accent); letter-spacing: 4px; }
.library-content { padding: 18px; overflow-wrap: anywhere; }
.library-kind { display: block; color: var(--accent); font-size: 11px; margin-bottom: 9px; }
.library-content h3 { font-size: 15px; line-height: 1.5; }
.library-title { margin: 8px 0; font-size: 13px; color: var(--as-text); }
.library-details { color: var(--muted); font-size: 11px; margin: 8px 0 16px; }
.library-actions { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; font-size: 12px; }
.library-pagination { display: flex; justify-content: center; align-items: center; gap: 20px; margin: 25px 0; }
.library-empty { padding: 36px; border: 1px dashed var(--line); border-radius: 12px; color: var(--muted); }
.library-note { max-width: 850px; line-height: 1.7; }
.library-preview { width: min(1100px,95vw); max-width: 95vw; max-height: 95vh; padding: 22px; color: inherit; background: var(--as-surface-1); border: 1px solid var(--as-border-strong); border-radius: 15px; }
.library-preview::backdrop { background: var(--as-shadow); }
.library-preview-heading { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 18px; }
.library-preview-heading h2 { overflow-wrap: anywhere; font-size: 17px; min-width: 0; }
.library-preview-heading button { flex-shrink: 0; }
#libraryPreviewMedia img,#libraryPreviewMedia video { display: block; width: 100%; height: min(68vh,800px); min-height: min(320px,50vh); object-fit: contain; background: var(--as-media); }
#libraryPreviewMedia audio { width: 100%; }
@media(max-width:600px) { .library-toolbar { grid-template-columns: 1fr; } .library-pagination { gap: 10px; } .library-pagination button { padding: 10px; } .library-preview { padding: 15px; } .library-preview-heading { align-items: start; gap: 10px; } }
