:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
button,input,textarea,select{font:inherit}
button:disabled{opacity:.6;cursor:wait}
.site-name{color:var(--ink)}
.site-name span{color:var(--red)}
.footer-name{color:#fff}
.header-search{font:12px 'Space Mono',monospace;color:var(--teal)}
.logout-link{font-size:12px;color:var(--muted)}
.newsroom-empty{padding:110px 0 130px;max-width:850px}
.newsroom-empty h1{font-size:clamp(2.8rem,7vw,6rem);letter-spacing:-.08em;max-width:820px}
.newsroom-empty p{color:var(--muted);font-size:19px;margin-bottom:26px}
.article-body{overflow-wrap:anywhere}
.article-body figure{margin:28px 0}
.article-body figure img{width:100%;max-height:660px;object-fit:contain;background:#eee}
.article-body figcaption{color:var(--muted);font:12px 'DM Sans',sans-serif;margin-top:8px}
.article-endnote{margin-top:40px;padding-top:18px;border-top:1px solid var(--line);font:11px 'Space Mono',monospace;color:var(--muted)}
.article-aside-note{font-size:12px;line-height:1.6;color:var(--muted);margin-top:20px}
.related-stories{padding-top:60px}
.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.related-card img{width:100%;aspect-ratio:1.55;object-fit:cover;border-radius:4px;margin-bottom:15px}
.related-card h3{font-size:20px;letter-spacing:-.035em}
.related-card small{color:var(--muted);font:11px 'Space Mono',monospace}
.save-button.is-saved{color:var(--red)}
.my-stories{margin-top:65px}
.my-story-row{display:grid;grid-template-columns:minmax(220px,1fr) 150px 140px 70px;align-items:center;gap:16px;border-bottom:1px solid var(--line);padding:15px 0}
.my-story-row small{color:var(--muted)}
.small-link{font-size:12px;font-weight:700;color:var(--teal)}
.small-button{padding:8px 12px;font-size:12px;white-space:nowrap}
.danger{background:#a12c23}
.article-admin-head,.article-admin-row{grid-template-columns:minmax(180px,1fr) 110px 115px minmax(230px,auto);gap:12px}
.article-admin-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.status-form{display:flex;align-items:center;gap:7px}
.status-form select,.career-admin-form select,.user-manage-row select{min-width:110px;border:1px solid var(--line);border-radius:4px;background:var(--paper);padding:9px 10px;color:var(--ink)}
.article-admin-row .small-link{display:inline-block;margin-top:6px}
.user-manage-row{display:grid;grid-template-columns:55px minmax(120px,1fr) minmax(170px,1.3fr) 145px 115px minmax(150px,1fr) auto;gap:10px;align-items:end;border-top:1px solid var(--line);padding:15px 0}
.user-manage-name{display:grid;gap:6px;align-self:center}
.user-manage-name small{font-size:10px;color:var(--muted)}
.user-manage-row label,.career-admin-form label,.career-apply-card label{display:grid;gap:5px;font-size:12px;font-weight:700}
.user-manage-row input,.career-admin-form input,.career-admin-form textarea,.career-apply-card input,.career-apply-card textarea{width:100%;border:1px solid var(--line);background:var(--paper);padding:11px 12px;border-radius:4px;color:var(--ink);font:inherit}
.career-admin-form{display:grid;gap:17px}
.career-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.career-admin-form textarea,.career-apply-card textarea{resize:vertical}
.careers-admin-list{margin:25px 0}
.career-admin-row{display:grid;grid-template-columns:minmax(210px,1fr) 100px auto auto auto;gap:12px;align-items:center;border-top:1px solid var(--line);padding:14px 0}
.career-admin-row small,.application-admin-row small{display:block;color:var(--muted);font-size:11px}
.delete-form{margin:0}
.application-admin-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;border-top:1px solid var(--line);padding:18px 0}
.application-admin-row p{font-size:13px;white-space:pre-line;margin:8px 0 0;max-width:760px}
.activity-row{display:flex;justify-content:space-between;align-items:start;gap:20px;border-top:1px solid var(--line);padding:14px 0}
.activity-row small{display:block;color:var(--muted);font-size:11px}
.activity-row time{font:11px 'Space Mono',monospace;color:var(--muted);white-space:nowrap}
.careers-page{padding-bottom:90px}
.careers-hero{padding-top:85px;padding-bottom:50px;max-width:900px}
.careers-hero .eyebrow{margin:24px 0 14px}
.careers-hero h1{font-size:clamp(2.8rem,7vw,6.2rem);letter-spacing:-.085em;max-width:850px;margin:0 0 18px}
.careers-lead{max-width:740px;font-size:19px;line-height:1.65;color:var(--muted);margin:0 0 25px}
.careers-company{font:12px 'Space Mono',monospace;color:var(--teal)}
.careers-company span{padding:0 8px;color:var(--red)}
.careers-openings{padding-top:25px}
.careers-openings>.section-heading{font-size:15px}
.career-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.career-card{background:var(--card);border:1px solid var(--line);padding:28px;border-radius:5px;transition:transform .18s ease,box-shadow .18s ease}
.career-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(23,37,54,.07)}
.career-card-meta{display:flex;justify-content:space-between;gap:10px;color:var(--teal);font:10px 'Space Mono',monospace;text-transform:uppercase}
.career-card h2{font-size:25px;letter-spacing:-.05em;margin:18px 0 10px}
.career-card p{color:var(--muted);min-height:52px}
.career-card-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid var(--line);margin-top:20px;padding-top:15px;font-size:12px}
.career-card-foot a{color:var(--red);font-weight:700}
.careers-empty{padding:45px 25px;background:var(--card);border:1px solid var(--line);text-align:center}
.careers-empty h2{font-size:30px}
.careers-empty p{color:var(--muted)}
.careers-note{margin-top:70px;background:var(--ink);color:#fff;padding:35px;display:flex;justify-content:space-between;align-items:center;gap:25px}
.careers-note h2{font-size:26px}
.careers-note p{color:#d0d7da;max-width:590px;margin:0}
.careers-note .eyebrow{color:var(--gold)}
.careers-hero .back-link{display:inline-block}
.career-detail-grid{display:grid;grid-template-columns:minmax(0,720px) minmax(280px,390px);gap:55px;align-items:start}
.career-description{font:17px/1.8 Georgia,serif}
.career-description h2,.career-description h3,.career-description h4{margin-top:32px}
.career-description ul,.career-description ol{padding-left:24px}
.career-description a{color:var(--teal);text-decoration:underline}
.career-apply-card{background:var(--card);border:1px solid var(--line);padding:25px;border-radius:5px;box-shadow:0 12px 32px rgba(23,37,54,.06)}
.career-apply-card h2{font-size:26px}
.career-apply-card>p{font-size:13px;color:var(--muted)}
.career-apply-card form{display:grid;gap:13px}
.career-apply-card .privacy-note{font-size:10px;color:var(--muted);line-height:1.5}
.account-intro{font-size:13px}
.form-error{padding:12px 15px;background:#fff0ed;color:#9b241b;border-left:3px solid var(--red);border-radius:3px}
.form-success{padding:12px 15px;background:#edf7f1;color:#17604d;border-left:3px solid var(--teal);border-radius:3px}
.admin-content-card+.admin-content-card{margin-top:22px}
@media(max-width:1100px){
  .article-admin-head,.article-admin-row{grid-template-columns:minmax(170px,1fr) 95px 110px minmax(210px,auto);gap:9px}
  .user-manage-row{grid-template-columns:48px 1fr 1.2fr 130px 100px 1fr}
  .user-manage-row>button{grid-column:2/-1;justify-self:start}
}
@media(max-width:900px){
  .related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .career-detail-grid{grid-template-columns:1fr;gap:25px}
  .career-apply-card{max-width:none}
  .career-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .career-admin-row{grid-template-columns:minmax(170px,1fr) auto auto}
  .career-admin-row .delete-form{grid-column:2}
  .career-admin-row .small-link{grid-column:3;grid-row:2}
  .article-admin-head{display:none}
  .article-admin-row{grid-template-columns:minmax(0,1fr) auto;align-items:start}
  .article-admin-actions{grid-column:1/-1}
  .user-manage-row{grid-template-columns:48px 1fr 1fr;align-items:end}
  .user-manage-name{grid-row:span 2}
  .user-manage-row>button{grid-column:2/-1}
}
@media(max-width:600px){
  .header-actions{gap:9px}
  .header-search,.logout-link{display:none}
  .login-link{max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:5px 10px}
  .newsroom-empty{padding:75px 0 90px}
  .hero-grid{padding-top:24px}
  .hero-story,.hero-story img{height:380px;min-height:380px}
  .section-block{padding:48px 0}
  .article-page{padding-top:28px}
  .article-header{margin:38px auto 24px}
  .article-header h1{font-size:clamp(2.1rem,11vw,3.6rem)}
  .article-header .story-meta{line-height:1.8;font-size:10px}
  .article-image{max-height:350px}
  .article-layout{padding-top:28px}
  .article-body{font-size:17px;line-height:1.8}
  .article-body h2{font-size:25px}
  .related-grid{grid-template-columns:1fr}
  .related-card{border-bottom:1px solid var(--line);padding-bottom:16px}
  .my-story-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}
  .my-story-row small,.my-story-row .small-link{grid-column:1}
  .admin-content-card{padding:20px 16px}
  .admin-page-head{margin-bottom:25px}
  .admin-page-head h1{font-size:2rem}
  .admin-story-row{grid-template-columns:1fr}
  .article-admin-row{grid-template-columns:1fr}
  .article-admin-actions{display:grid;grid-template-columns:1fr}
  .status-form{flex-wrap:wrap}
  .status-form select{flex:1}
  .user-manage-row{grid-template-columns:45px 1fr}
  .user-manage-name{grid-row:span 2}
  .user-manage-row>button{grid-column:2}
  .career-form-grid{grid-template-columns:1fr}
  .career-admin-row{grid-template-columns:1fr auto}
  .career-admin-row>div:first-child{grid-column:1/-1}
  .career-admin-row .delete-form{grid-column:auto}
  .career-admin-row .small-link{grid-column:2;grid-row:auto}
  .application-admin-row{grid-template-columns:1fr}
  .activity-row{display:grid}
  .activity-row time{white-space:normal}
  .careers-hero{padding-top:55px;padding-bottom:30px}
  .careers-hero h1{font-size:clamp(2.7rem,13vw,4.1rem)}
  .careers-lead{font-size:16px}
  .career-card-grid{grid-template-columns:1fr}
  .career-card{padding:22px}
  .career-card p{min-height:0}
  .careers-note{display:block;padding:25px 20px}
  .careers-note .button{margin-top:20px}
  .career-apply-card{padding:20px 16px}
  .auth-card,.workspace-card{padding:26px 20px}
}
.header-profile{font:11px 'Space Mono',monospace;color:var(--teal);white-space:nowrap}
.author-avatar-fallback{width:34px;height:34px;flex:none;display:grid;place-items:center;border-radius:50%;background:var(--gold);color:var(--ink);font:700 14px Syne,sans-serif}
.author-avatar-large{width:96px;height:96px;font-size:34px}
.story-byline{display:flex;align-items:center;gap:9px;font-size:12px;line-height:1.3}
.story-byline>img{width:34px;height:34px;flex:none;border-radius:50%;object-fit:cover}
.story-byline>span:last-child{display:grid;gap:3px}
.story-byline a,.article-byline a{font-weight:700;color:var(--ink)}
.story-byline a:hover,.article-byline a:hover{color:var(--red)}
.story-byline small{font:10px 'Space Mono',monospace;color:var(--muted)}
.article-byline{display:flex;align-items:center;justify-content:center;gap:12px;text-align:left;margin-top:25px}
.article-byline-photo{width:52px;height:52px;flex:none;border-radius:50%;object-fit:cover}
.article-byline>div{display:grid;gap:2px}
.article-byline>div>a{font-size:14px}
.article-byline>div>span,.article-byline small{font-size:11px;color:var(--muted)}
.article-byline small{font-family:'Space Mono',monospace}
.article-author-card{display:flex;align-items:start;gap:20px;margin-top:45px;padding:24px;background:#f2eee5;border-radius:5px;font-family:'DM Sans',sans-serif;line-height:1.55}
.article-author-card>img{width:86px;height:86px;flex:none;border-radius:50%;object-fit:cover}
.article-author-card h2{font-size:23px;margin:5px 0}
.article-author-title{font-size:12px;color:var(--teal);margin:0}
.article-author-bio{font-size:13px;color:var(--muted);white-space:pre-line;margin:8px 0}
.article-author-card .eyebrow{font-size:9px}
.author-page{padding-top:65px;padding-bottom:100px}
.author-profile-hero{display:grid;grid-template-columns:190px minmax(0,1fr);gap:36px;align-items:center;max-width:900px;margin:0 auto 65px;padding:40px;background:var(--card);border:1px solid var(--line);border-radius:5px}
.author-profile-photo{width:190px;height:190px;object-fit:cover;border-radius:50%}
.author-profile-initial{font-size:70px}
.author-profile-copy h1{font-size:clamp(2.5rem,6vw,4.7rem);letter-spacing:-.08em;margin:8px 0}
.author-profile-copy .eyebrow{font-size:10px}
.author-profile-title{color:var(--teal);font-weight:700;margin:0}
.author-profile-bio{color:var(--muted);white-space:pre-line;line-height:1.7;max-width:680px}
.author-stories .section-heading>span:last-child{font:11px 'Space Mono',monospace;color:var(--muted)}
.author-profile-editor{margin:30px 0 55px}
.author-profile-editor-heading{display:flex;justify-content:space-between;align-items:start;gap:20px;border-bottom:1px solid var(--line);padding-bottom:18px}
.author-profile-editor-heading h2{font-size:26px;margin:8px 0}
.author-profile-editor-heading p{color:var(--muted);margin:0}
.author-profile-form{display:grid;grid-template-columns:120px minmax(0,1fr);gap:25px;align-items:start}
.author-profile-preview{display:grid;place-items:center}
.author-profile-preview>img{width:96px;height:96px;border-radius:50%;object-fit:cover}
.author-profile-fields{display:grid;gap:15px}
.author-profile-fields .career-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.author-profile-fields .remove-avatar-option{display:flex;align-items:center;gap:8px}
.author-profile-fields .remove-avatar-option input{width:auto}
.author-profile-fields .button{justify-self:start}
@media(max-width:600px){
  .header-profile{display:none}
  .author-page{padding-top:35px}
  .author-profile-hero{grid-template-columns:1fr;text-align:center;justify-items:center;gap:20px;margin-bottom:42px;padding:26px 20px}
  .author-profile-photo{width:145px;height:145px}
  .author-profile-initial{font-size:54px}
  .author-profile-copy h1{font-size:2.7rem}
  .author-profile-form{grid-template-columns:1fr}
  .author-profile-preview{justify-content:start}
  .author-profile-fields .career-form-grid{grid-template-columns:1fr}
  .author-profile-editor-heading{display:grid}
  .article-author-card{gap:13px;padding:18px}
  .article-author-card>img,.article-author-card>.author-avatar-large{width:62px;height:62px}
  .article-author-card>.author-avatar-large{font-size:24px}
}
.pwa-install-button{border:1px solid var(--teal);border-radius:99px;background:transparent;color:var(--teal);font:700 11px 'Space Mono',monospace;padding:8px 12px;cursor:pointer;white-space:nowrap}
.pwa-install-button:hover{background:var(--teal);color:#fff}
.mobile-nav .pwa-install-button{text-align:left;font:700 13px 'DM Sans',sans-serif;color:var(--ink);padding:0;border:0;border-radius:0}
.mobile-nav .pwa-install-button:hover{background:transparent;color:var(--red)}
.pwa-install-link{display:block;margin:0 0 9px;padding:0;border:0;background:transparent;color:#fff;font:inherit;text-align:left;cursor:pointer}
.pwa-install-link:hover{color:var(--gold)}
.pwa-install-dialog{width:min(430px,calc(100% - 32px));border:1px solid var(--line);border-radius:8px;padding:30px;background:var(--card);color:var(--ink);box-shadow:0 24px 80px rgba(23,37,54,.24)}
.pwa-install-dialog::backdrop{background:rgba(14,25,35,.62)}
.pwa-install-dialog h2{font-size:28px;letter-spacing:-.05em;margin:8px 36px 10px 0}
.pwa-install-dialog p{color:var(--muted);line-height:1.7;margin:0}
.pwa-install-dialog form{display:flex;justify-content:flex-end;margin:-12px -12px 0 0}
.pwa-install-dialog form button{border:0;background:transparent;color:var(--muted);font-size:24px;cursor:pointer}
@media(max-width:600px){.pwa-install-dialog{padding:22px}}
.pwa-install-prompt{position:fixed;inset:auto 24px 24px auto;margin:0;width:min(370px,calc(100% - 32px));max-width:none;padding:25px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--ink);box-shadow:0 18px 55px rgba(23,37,54,.2)}
.pwa-install-prompt::backdrop{background:transparent}
.pwa-install-prompt h2{font-size:25px;letter-spacing:-.05em;margin:7px 28px 8px 0}
.pwa-install-prompt p{font-size:13px;color:var(--muted);line-height:1.6;margin:0}
.pwa-prompt-close{position:absolute;top:10px;right:12px;border:0;background:transparent;color:var(--muted);font-size:22px;line-height:1;cursor:pointer}
.pwa-prompt-actions{display:flex;align-items:center;gap:16px;margin-top:18px}
.pwa-prompt-actions .button{font:700 12px 'DM Sans',sans-serif}
.pwa-prompt-dismiss{border:0;background:transparent;color:var(--muted);font:600 12px 'DM Sans',sans-serif;cursor:pointer}
@media(max-width:600px){.pwa-install-prompt{inset:auto 12px 12px;width:calc(100% - 24px);padding:21px}.pwa-install-prompt h2{font-size:22px}}
