/* Dedicated task pages share the existing type, color, control, and motion tokens. */
.back-link { display: inline-flex; align-items: center; min-height: 44px; gap: 8px; color: var(--muted); font-size: 12px; font-weight: 600; }
.tool-page { padding-top: 27px; padding-bottom: 65px; min-height: 65dvh; }
.tool-page-heading { display: flex; align-items: center; gap: 20px; margin: 25px 0 31px; }
.tool-page-heading > .tool-icon { width: 64px; height: 66px; border-radius: 15px; }
.tool-page-heading > .tool-icon .icon { font-size: 28px; width: 30px; height: 30px; }
.tool-page-heading h1 { margin: 5px 0 9px; font-size: clamp(29px,3.5vw,40px); letter-spacing: -.04em; line-height: 1.2; }
.tool-page-heading p { margin: 0; }
.tool-page-grid { display: grid; grid-template-columns: minmax(0,1.6fr) minmax(260px,1fr); gap: 28px; align-items: start; }
.tool-workspace { padding: 30px; }
.tool-workspace .form { margin-top: 0; gap: 21px; }
.tool-workspace .form > .button { justify-self: start; min-width: 160px; }
.tool-workspace input[type="file"] { padding: 16px; border-style: dashed; background: var(--paper); }
.tool-workspace input::file-selector-button { margin-right: 14px; padding: 8px 11px; border: 1px solid var(--line); border-radius: 6px; background: var(--surface); color: var(--ink); font: inherit; cursor: pointer; }
.tool-workspace .output { margin-top: 26px; }
.tool-details { display: grid; gap: 24px; min-width: 0; }
.tool-details h2 { font-size: 23px; margin-block: 13px; }
.tool-details .panel p { line-height: 1.8; margin-bottom: 22px; }
.tool-privacy { display: flex; gap: 14px; padding: 0 7px; font-size: 12px; }
.tool-privacy > .icon { color: var(--teal); margin-top: 2px; }
.tool-privacy p { font-size: 12px; line-height: 1.8; color: var(--muted); margin: 7px 0 0; }
.tool-details > .form-help { padding: 0 7px; }
.auth-page { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,440px); align-items: start; gap: 85px; padding-top: 46px; padding-bottom: 70px; min-height: 75dvh; }
.auth-intro { padding-top: 5px; position: sticky; top: 25px; }
.auth-intro > .back-link { display: flex; width: max-content; margin-bottom: 46px; }
.auth-intro > h2 { font-size: clamp(31px,4vw,45px); letter-spacing: -.045em; line-height: 1.2; margin: 17px 0; }
.auth-intro > p { color: var(--muted); max-width: 380px; font-size: 14px; line-height: 1.9; margin-bottom: 33px; }
.auth-benefit { display: flex; align-items: start; gap: 16px; margin-top: 23px; max-width: 390px; }
.auth-benefit > .icon { color: var(--teal); background: var(--soft); border-radius: 9px; min-width: 38px; height: 38px; font-size: 18px; }
.auth-benefit strong { font-size: 12px; }
.auth-benefit p { color: var(--muted); margin: 4px 0 0; font-size: 12px; line-height: 1.8; }
.auth-card { padding: 31px; }
.auth-card .auth-title { padding: 0; font-size: 30px; margin: 12px 0; }
.auth-card > .eyebrow { font-size: 9px; }
.auth-card > .subtle { font-size: 12px; }
.auth-card .form { gap: 17px; }
.auth-card .form-help { font-size: 11px; }
.auth-card .divider { margin-top: 27px; }
.auth-card .interests { margin-top: 4px; }
.auth-personalization { margin-top: 14px; font-size: 11px; color: var(--muted); }
.auth-personalization summary { cursor: pointer; min-height: 36px; display: list-item; align-content: center; }
.desk-feature, .desk-shortcuts a { text-decoration: none; }
.desk-feature:focus-visible, .desk-shortcuts a:focus-visible { outline: 3px solid #b97608; outline-offset: 3px; }
@media (hover:hover) and (pointer:fine) {
  .desk-feature:hover, .desk-shortcuts a:hover, .tool-open:hover { text-decoration: none; }
}
@media (max-width:1000px) {
  .auth-page { gap: 38px; grid-template-columns: minmax(0,1fr) minmax(0,420px); }
  .auth-intro > h2 { font-size: 36px; }
  .tool-page-grid { gap: 20px; grid-template-columns: minmax(0,1.5fr) minmax(240px,1fr); }
}
@media (max-width:760px) {
  .tool-page { padding-top: 18px; padding-bottom: 35px; }
  .tool-page-heading { align-items: start; gap: 14px; margin: 19px 0 26px; }
  .tool-page-heading > .tool-icon { width: 45px; height: 48px; border-radius: 11px; }
  .tool-page-heading > .tool-icon .icon { font-size: 22px; }
  .tool-page-heading h1 { font-size: 29px; }
  .tool-page-heading p { font-size: 12px; line-height: 1.8; }
  .tool-page-grid { grid-template-columns: minmax(0,1fr); gap: 22px; }
  .tool-workspace { padding: 22px; }
  .tool-workspace .form > .button { width: 100%; }
  .tool-details { gap: 21px; }
  .auth-page { grid-template-columns: minmax(0,1fr); gap: 24px; padding-top: 16px; padding-bottom: 35px; }
  .auth-intro { position: static; }
  .auth-intro > .back-link { margin-bottom: 10px; }
  .auth-intro > h2 { font-size: 30px; margin-bottom: 12px; }
  .auth-intro > h2, .auth-intro > p { display: none; }
  .auth-intro > h2 br { display: none; }
  .auth-intro > p { margin: 0; font-size: 12px; line-height: 1.8; }
  .auth-benefit { display: none; }
  .auth-card { padding: 25px 22px; }
}
