.cloud-page{min-height:100dvh;height:auto;overflow:auto}
.cloud-page input:not([type=checkbox]),.cloud-page textarea{display:block;width:100%;padding:12px;background:#0b131c;border:1px solid #304150;border-radius:8px;color:var(--text);font:inherit}
.cloud-page textarea{resize:vertical;line-height:1.65;min-height:130px}
.cloud-page input:focus-visible,.cloud-page textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.cloud-page label{display:block;margin:18px 0 7px;font-size:.9rem;color:var(--muted)}
.cloud-page summary{cursor:pointer;padding:14px 0;color:var(--accent)}
.cloud-page details p{color:var(--muted);line-height:1.65}
.login-page{display:grid;place-items:center;padding:32px 20px}
.login-card{width:min(100%,430px);padding:30px;border:1px solid var(--line);border-radius:20px;background:var(--panel)}
.login-card h1{font-size:1.8rem;margin:32px 0 12px;line-height:1.3}
.login-card p{line-height:1.7;color:var(--muted)}
.password-field{position:relative}
.cloud-page .password-field input{padding-right:58px}
.password-toggle{position:absolute;right:5px;top:50%;transform:translateY(-50%);width:44px;height:44px;min-height:44px;padding:10px;border:0;background:transparent;color:var(--muted);display:grid;place-items:center}
.password-toggle[hidden]{display:none}
.password-toggle:hover{color:var(--accent)}
.password-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.password-toggle svg{width:22px;height:22px;pointer-events:none}
.password-toggle[aria-pressed="false"] .password-eye-off,.password-toggle[aria-pressed="true"] .password-eye{display:none}
#login-submit{width:100%;margin-top:24px;background:#244d43;color:#d0ffef}
#save-password{width:100%;margin-top:24px}
#login-status:empty{display:none}
.cloud-capture-link{font-size:.875rem;text-align:center;text-decoration:none}
.capture-shell{max-width:1350px;margin:auto;display:grid;grid-template-columns:minmax(280px,380px) minmax(0,1fr);min-height:calc(100dvh - 72px)}
.capture-list-panel{padding:32px 24px;border-right:1px solid var(--line)}
.capture-heading{display:flex;gap:16px;align-items:center;justify-content:space-between}
.capture-heading h1,.capture-heading h2{margin:8px 0;font-size:1.4rem;letter-spacing:-.03em}
.capture-help,.optional{font-size:.85rem;color:var(--muted);line-height:1.65}
.capture-help{margin:10px 0 22px}
.optional{font-weight:400;margin-left:6px}
.capture-item{display:flex;align-items:flex-start;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}
.capture-item input{margin-top:16px;flex-shrink:0}
.capture-item button,.draft-item{flex:1;display:block;width:100%;text-align:left;border-color:transparent;background:transparent;line-height:1.5;overflow-wrap:anywhere}
.capture-item button:hover,.draft-item:hover{background:#172c30}
.capture-item small,.draft-item small{display:block;margin-top:5px;font-size:.75rem;color:var(--muted)}
.capture-editor{padding:32px clamp(20px,4vw,60px) 80px;min-width:0}
.capture-editor #capture-body{min-height:280px}
.capture-editor details{margin-top:12px}
.capture-actions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}
#save-capture,#new-capture{background:#244d43;color:#d0ffef;border-color:#3c6c5d}
#capture-list-status,#capture-save-status{min-height:1.5em;color:var(--accent);line-height:1.6}
#capture-conflict{padding:20px;border:1px solid #8b714f;border-radius:10px;margin:24px 0;background:#282219}
#conflict-text{white-space:pre-wrap;overflow-wrap:anywhere;max-height:320px;overflow:auto;line-height:1.6}
#capture-record{margin-top:32px;border-top:1px solid var(--line);padding-top:20px}
#local-drafts{border:1px solid #3c6c5d;border-radius:10px;padding:12px;margin-bottom:20px}
#local-drafts h2{font-size:1rem;margin:0 0 10px}
#export-captures{width:100%;margin-top:16px}
@media(max-width:700px){
  .topbar .cloud-capture-link{font-size:.8rem;max-width:70px}
  .topbar:has(.cloud-capture-link) .brand{font-size:1.2rem;gap:6px}
  .topbar:has(.cloud-capture-link) .brand img{width:26px;height:26px}
  .topbar:has(.cloud-capture-link) .top-actions{gap:6px}
  .topbar:has(.cloud-capture-link) #refresh{max-width:76px;font-size:.75rem}
  .cloud-page button{min-height:44px}
  .cloud-page input,.cloud-page select,.cloud-page textarea{font-size:16px}
  .capture-shell{display:block;min-height:0}
  .capture-list-panel{padding:24px 20px calc(40px + env(safe-area-inset-bottom));border:0}
  .capture-editor{padding:20px 20px calc(40px + env(safe-area-inset-bottom))}
  .captures-page.editing .capture-list-panel{display:none}
  .captures-page:not(.editing) .capture-editor{display:none}
  .capture-editor #capture-body{min-height:220px}
  .capture-actions #save-capture{flex:1}
  .login-card{padding:24px}
}
