/* Aspyn AI brand v1 · Aspyn Atlas. Fonts are served locally. */
@font-face{font-family:'DM Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url('/assets/fonts/dm-sans-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url('/assets/fonts/dm-sans-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Sora;font-style:normal;font-weight:400 800;font-display:swap;src:url('/assets/fonts/sora-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Sora;font-style:normal;font-weight:400 800;font-display:swap;src:url('/assets/fonts/sora-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{
  --pink:#F0346C;--orange:#FF6B35;--purple:#8B5CF6;
  --gradient:linear-gradient(135deg,var(--pink) 0%,var(--orange) 100%);
  --gradient-soft:linear-gradient(135deg,rgba(240,52,108,.12) 0%,rgba(255,107,53,.12) 100%);
  --bg:#FDF6F2;--bg2:#FFF9F6;--dark:#1C1C2E;--mid:#5C5C7A;--muted:var(--mid);
  --border:rgba(0,0,0,.09);--white:#FFF;--accent-ink:#B51F50;
  --font:Sora,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
  --body:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
  --radius:20px;--radius-sm:12px;
  font-family:var(--body);color:var(--dark);background:var(--bg);
}
body{font-size:15px;line-height:1.65}
:focus-visible{outline:2px solid var(--pink);outline-offset:2px}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--pink);outline-offset:2px}
h1,h2,h3,h4{font-family:var(--font);font-weight:800;line-height:1.2;color:var(--dark)}
h1{font-size:clamp(28px,3vw,40px);letter-spacing:-1.4px}
h2{font-size:20px}h3{font-size:16px}
p{color:var(--mid);font-size:15px}
.sidebar{padding:28px 20px;background:var(--white)}
.brand{display:flex;flex-direction:column;align-items:flex-start;gap:0;margin:0 12px 28px;letter-spacing:normal}
.brand-logo{display:block;width:130px;height:48px;object-fit:contain;margin-bottom:14px}
.brand-product{font-family:var(--font);font-size:30px;font-weight:800;line-height:1.15;letter-spacing:-1.1px}
.brand-sub{font-family:var(--body);font-size:12px;font-weight:400;letter-spacing:0;text-transform:none;margin-top:8px;color:var(--mid)}
.workspace{border-radius:var(--radius-sm);background:var(--bg2)}
.workspace strong{font-size:14px}.workspace small{font-size:12px}
.workspace-icon{background:var(--gradient-soft);color:var(--accent-ink)}
.nav-item{font-size:14px;color:var(--mid);border-radius:var(--radius-sm)}
.nav-item.active{color:var(--accent-ink);background:var(--gradient-soft)}
.nav-item:hover{background:var(--bg2)}.nav-item.active:hover{background:var(--gradient-soft)}
.sidebar-bottom,.sidebar-bottom small{font-size:12px;color:var(--mid)}
.sidebar-bottom .company-credit{display:block;margin-top:16px;font-size:11px;color:var(--mid)}
.region-dot{background:var(--mid)}
.topbar{border-top:3px solid transparent;border-image:var(--gradient) 1;background:var(--white)}
.crumb,.crumb strong{font-size:13px;color:var(--mid)}
.crumb .crumb-product{font-family:var(--font);font-weight:700;color:var(--dark)}
.top-actions select,.top-actions .quiet{font-size:12px;color:var(--mid)}
.user-avatar{background:var(--gradient-soft);color:var(--accent-ink)}
.eyebrow{font-size:11px;letter-spacing:1.6px;font-weight:700;color:var(--mid)}
.page-heading{margin-bottom:32px}
.mode-pill{color:#326143;background:#F0F6F2;border-color:#D8E9DD;font-size:12px}
.provider-card,.connection,.search-result,.collection-card,.principal,.empty-state{border-radius:var(--radius);box-shadow:0 2px 12px rgba(0,0,0,.025)}
.provider-card{padding:28px;min-height:244px}
.provider-card h2{font-size:18px}.provider-card p{font-size:14px;max-width:320px}
.primary,.secondary{font-size:14px;font-weight:600;border-radius:50px;padding:11px 19px}
.primary{background:var(--dark);color:var(--white)}.primary:hover{background:#35354E}
.secondary{color:var(--dark);border-color:var(--border)}.secondary:hover{background:var(--bg2)}
.quiet{font-size:13px;color:var(--mid)}.quiet:hover{color:var(--accent-ink)}
.danger{color:#9B214C}
.empty-state{background:var(--bg2)}
.empty-state h3,.explanation h3{font-size:14px}.empty-state p,.explanation p{font-size:14px}
.connection-title strong{font-size:14px}.connection-title small,.connection-footer small{font-size:12px}
.badge{font-size:12px;color:#326143}.badge.warning{color:#79571C}
.folder-tag{font-size:12px;color:var(--mid);background:var(--bg)}
.explanation{background:var(--gradient-soft);border-radius:var(--radius);padding:24px}
.explanation-icon{color:var(--accent-ink)}
.notice{font-size:14px;background:var(--bg2);border-color:var(--pink);color:var(--dark)}
.search-result h3{font-size:16px}.search-result p{font-size:14px}.search-result small{font-size:12px;color:var(--mid)}
input,select,textarea{font-size:14px;border-radius:var(--radius-sm);border-color:rgba(28,28,46,.2)}
input::placeholder,textarea::placeholder{color:var(--mid);opacity:1}
.permission-note{font-size:13px;color:var(--mid)}
.principal,.grant-row,.grant-form,.form-fields label{font-size:14px}.principal small{font-size:12px}
dialog{border-radius:var(--radius);box-shadow:0 24px 60px rgba(0,0,0,.18)}
.icon-button{background:var(--bg);color:var(--mid)}
.breadcrumbs button{font-size:13px;color:var(--accent-ink)}
.folder-row button{font-size:14px;color:var(--dark)}.folder-icon{color:var(--accent-ink)}
.selected-folders{background:var(--bg2)}.selected-folders h3{font-size:14px}
.selected-item,.selected-item select,.selected-item button,.dialog-footer{font-size:13px}.selected-item button{color:var(--accent-ink)}
.document-text{background:var(--bg2);font-size:14px}.loading{font-size:14px}
.search-options label{font-size:14px;color:var(--mid)}
.enrichment-card{background:var(--bg2);border-color:var(--border);border-radius:var(--radius-sm)}
.enrichment-card>strong{font-size:14px}.quality-note{font-size:13px!important;color:#715419!important}
.evidence-details,.link-editor{font-size:14px}.evidence-details summary,.link-editor summary{color:var(--accent-ink)}
.evidence-details small,.evidence-details h4,.document-link small{font-size:12px;color:var(--mid)}
.reading-origin{font-size:12px!important;color:#715419!important}
@media(max-width:1000px){.sidebar{width:224px;padding:24px 14px}main{margin-left:224px;width:calc(100% - 224px)}}
@media(max-width:720px){
  .sidebar{width:100%;padding:20px;position:relative}
  .brand{display:grid;grid-template-columns:110px 1fr;column-gap:20px;align-items:center;margin:0 0 20px}
  .brand-logo{width:110px;height:41px;margin:0;grid-row:1/3}.brand-product{font-size:25px}.brand-sub{margin:2px 0 0;font-size:11px}
  .nav-item{font-size:12px;padding:10px;gap:7px}.nav-item>span:first-child{font-size:18px}
  main{margin:0;width:100%}.topbar{padding:0 20px}.crumb,.crumb strong{font-size:11px}
  .top-actions{gap:7px}.top-actions .quiet{font-size:11px}
  .page-heading{flex-wrap:wrap;gap:12px}.mode-pill{font-size:11px}
  .search-form{flex-wrap:wrap}.search-form input{min-width:0;width:100%}
  .tag-form input,.search-options input[type=search]{min-width:0;width:100%}
  .providers{margin-bottom:32px}.provider-card{padding:24px;min-height:224px}
}
