/* Solar Studio design system: application shell only. Report print layouts are unchanged. */
:root {
  --ink: #10372e;
  --muted: #617b72;
  --line: #dce7dd;
  --teal: #28775c;
  --teal-bright: #a6cb69;
  --bg: #f4f7ee;
}

@media screen {
  body { background:var(--bg);color:#193d32 }
  .app-header {
    background:#fffef9;
    border-bottom:1px solid #e2e9df;
    box-shadow:0 2px 18px #173e2709;
  }
  .brand-lockup { gap:12px;min-width:0 }
  .brand-lockup h1 { color:#153a2e;letter-spacing:-.8px;font-size:19px }
  .brand-eyebrow { color:#56806a;letter-spacing:1.6px;font-size:9px }
  .studio-symbol {
    flex:0 0 43px;width:43px;height:43px;
    border-radius:13px;background:#123c30;
    display:grid;place-items:center;position:relative;overflow:hidden;
    box-shadow:0 4px 12px #173d2928;
  }
  .studio-sun {
    position:absolute;top:10px;left:16px;width:12px;height:12px;
    border:2.5px solid #d9ef91;border-radius:50%;
    box-shadow:0 0 0 5px #d9ef9114;
  }
  .studio-horizon {
    position:absolute;top:27px;left:8px;width:28px;height:2px;
    background:#d9ef91;border-radius:3px;transform:rotate(-26deg);
  }
  .studio-home {
    display:inline-flex;align-items:center;justify-content:center;gap:4px;
    text-decoration:none;color:#2d6550;font-size:12px;font-weight:800;
    border:1px solid #d8e6d7;background:#f6faf1;border-radius:10px;
    min-height:39px;padding:0 12px;white-space:nowrap;
  }
  .studio-home:hover { background:#e7f2d7;border-color:#b8d1a8 }
  .save-status { color:#6b8578 }
  .status-dot { background:#65ab67 }
  .btn { border-radius:10px;min-height:43px;transition:background .18s,border-color .18s,box-shadow .18s,transform .15s }
  .btn-primary { background:#173f32;color:#fff }
  .btn-primary:hover { background:#265a42;box-shadow:0 3px 12px #143e2c24 }
  .btn-soft { color:#2b5844;background:#eff5eb }
  .btn-soft:hover { background:#dfead8 }
  .btn-outline { background:#f3f9eb;border-color:#bfd9b7;color:#2d6747 }
  .btn-outline:hover { background:#e2f1d5 }
  .workspace { background:var(--bg) }
  .nav-rail { background:#11382d;border-right:1px solid #1c4c39 }
  .rail-label,.rail-foot-label { color:#9ab99c }
  .nav-button { color:#c4d7c7;border:1px solid transparent;border-radius:11px }
  .nav-button:hover { background:#214b3b;color:#fff }
  .nav-button.active { background:#2b5843;color:#fff;border-color:#4b7759;box-shadow:inset 3px 0 #d9ef91 }
  .nav-index,.nav-button.active .nav-index { color:#d6ec9f }
  .nav-button small,.rail-small { color:#9dbfae }
  .nav-button.active small { color:#d1e3d3 }
  .rail-footer { border-top-color:#315848 }
  .editor-pane { padding-top:31px;scrollbar-color:#c5d8c6 transparent }
  .eyebrow,.section-kicker { color:#3b825d }
  .mini-line { background:#9fc86a }
  .editor-intro h2 { color:#123b2f }
  .editor-intro p { color:#627d70 }
  .form-card,.upload-card {
    border-color:#dfE9de;border-radius:17px;
    box-shadow:0 4px 22px #16392a09;
  }
  .card-step { background:#ebf5df;color:#326d4c;border-color:#c9dfba;border-radius:9px }
  .card-heading h3,.upload-header h3 { color:#1b4837 }
  .card-heading p,.upload-header p { color:#6e8578;font-size:12px }
  .field { font-size:12px;color:#355e4b }
  .field input,.field select,.field textarea {
    font-size:14px;min-height:44px;border-radius:10px;
    border-color:#d5e3d7;color:#1e4939;
  }
  .field input:focus,.field select:focus,.field textarea:focus {
    border-color:#70a377;box-shadow:0 0 0 3px #89b97c35;
  }
  .field .inline-help,.micro-help { color:#718b78 }
  .edit-table th { background:#eaf2e6;color:#3f6b51 }
  .helper-bar,.notice-info { background:#edf5e8;border-color:#d4e7cb }
  .finish-panel { background:#153e30;border-radius:16px }
  .finish-panel .btn-primary { background:#d5ed96;color:#153d30 }
  .finish-panel .btn-primary:hover { background:#e3f6b3 }
  .preview-pane { border-left-color:#dbe7da;background:#e8efe5 }
  .preview-heading { background:#fafff7;border-color:#dce9da }
  .preview-heading strong { color:#18432f }
  .preview-scroll { background:linear-gradient(135deg,#eaf0e8,#e0e9dc) }
  .studio-guide {
    background:linear-gradient(116deg,#173e30,#245543);color:#fff;
    border:1px solid #37634b;border-radius:17px;padding:18px 20px;
    margin:0 0 18px;box-shadow:0 6px 16px #18452e17;
  }
  .studio-guide-heading { display:flex;align-items:center;gap:9px;margin-bottom:13px }
  .studio-guide-icon { color:#d8ef9c;font-size:21px;line-height:1 }
  .studio-guide-heading strong { font-family:var(--display);font-size:15px;letter-spacing:-.25px }
  .studio-guide-heading>span:last-child { margin-left:auto;color:#d9e9cc;font-size:10px }
  .studio-guide-steps { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px }
  .studio-guide-steps>span {
    display:flex;align-items:center;gap:9px;line-height:1.35;
    border:1px solid #ffffff26;border-radius:10px;padding:10px;
    background:#ffffff0b;color:#e8f1e6;font-size:11px;font-weight:600;
  }
  .studio-guide-steps b { flex:0 0 22px;height:22px;display:grid;place-items:center;background:#d8ed98;color:#244b32;border-radius:7px;font-size:12px }
  .studio-page-credit {
    margin-top:22px;padding:18px 6px 0;border-top:1px solid #dce7dd;
    color:#78917d;text-align:center;font-size:9px;font-weight:500;line-height:1.6;
    letter-spacing:.01em;
  }
  a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible {
    outline:3px solid #a0cc73;outline-offset:2px;
  }
}

@media screen and (max-width:1080px) {
  .studio-home { padding:0 9px }
  .header-actions { gap:7px }
}

@media screen and (max-width:690px) {
  .app-header { height:118px;padding:9px 12px;align-content:space-between;align-items:center;flex-wrap:wrap;gap:7px }
  .brand-lockup { width:100%;padding-right:75px }
  .studio-symbol { flex-basis:36px;width:36px;height:36px;border-radius:11px }
  .studio-sun { top:8px;left:13px }
  .studio-horizon { top:24px;left:5px }
  .brand-eyebrow { font-size:8px;letter-spacing:1px }
  .brand-lockup h1 { font-size:15px }
  .studio-home { position:absolute;top:10px;right:12px;height:35px;min-height:35px;font-size:11px;padding:0 8px }
  .header-actions { width:100%;gap:6px }
  .header-actions .btn { min-height:43px;flex:1;padding:10px 5px;font-size:11px }
  .header-actions .save-status { display:none }
  .nav-rail { top:118px;padding:6px 10px }
  .mobile-menu-bar button { color:#e8f3e7 }
  .mobile-nav-items .nav-button { border-color:#275544 }
  .workspace { min-height:calc(100dvh - 118px) }
  .editor-pane { padding:18px 12px 35px }
  .editor-intro { margin-bottom:16px }
  .form-card { padding:18px 15px;border-radius:13px }
  .studio-guide { padding:14px;border-radius:13px }
  .studio-guide-heading { margin-bottom:10px }
  .studio-guide-heading strong { font-size:13px }
  .studio-guide-steps { grid-template-columns:1fr;gap:6px }
  .studio-guide-steps>span { padding:7px 9px;font-size:12px }
  .studio-guide-steps b { width:21px;height:21px }
  .preview-pane,.workspace.focus-entry .preview-pane.open { inset:118px 0 0 }
  .editor-bottom { position:sticky;bottom:0;background:#f4f7eef4;padding:10px 3px;z-index:6;border-top:1px solid #dae6d6 }
  .editor-bottom .btn { min-height:43px }
}
@media (prefers-reduced-motion:reduce) {
  .btn,.form-section { animation:none!important;transition:none!important }
}
