#planner label { display:block; font-size:.95rem; margin-bottom:16px; }
#planner fieldset {border:0;padding:0;margin:0;min-width:0;}
#planner input, #planner select, #planner textarea { display:block; width:100%; min-width:0; font:inherit; color:inherit; background:#fff; border:1px solid #9ca799; padding:9px; margin-top:6px; border-radius:2px; }
#planner textarea { resize:vertical; min-height:90px; }
#planner .form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 20px; }
#planner button { font:inherit; padding:9px 14px; border:1px solid #7b8d78; background:#f0f4ef; color:#263b2e; cursor:pointer; max-width:100%; overflow-wrap:anywhere; }
#planner button:disabled { cursor:not-allowed; opacity:.65; }
#planner .actions { display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
#planner [hidden] { display:none !important; }
#planner .card { margin-block:18px; }
#planner-error { border:2px solid #983e30; padding:16px; color:#79291d; white-space:pre-wrap; }
#planner-status { border-left:3px solid #73886c; padding:12px; white-space:pre-wrap; }
#saved-projects { padding-left:22px; }
#saved-projects li { margin-block:14px; }
#saved-projects button { margin:6px; }
.page-text { white-space:pre-wrap; }
.planning-preview .site-header,.planning-preview .site-footer,.planning-preview .dev-note,.planning-preview .breadcrumbs,.planning-preview .no-print:not(#print-preview-controls),.planning-preview #planner-status,.planning-preview #planner-error {display:none !important;}
.planning-preview .card {background:white;}
@media(max-width:600px) { #planner .form-grid {grid-template-columns:1fr;} #planner .actions {align-items:stretch;flex-direction:column;} #planner .actions button {width:100%;} }
@media print {
  .site-header,.site-footer,.dev-note,.breadcrumbs,.skip-link,.no-print,#planner-form,#planner-status,#planner-error,#confirmation {display:none !important;}
  body {background:white;color:black;font-size:10pt;} .wrap {width:100%;} main {padding:0;} .page-heading {padding:0 0 12px;} h1 {font-size:22pt;} h2 {font-size:16pt;} h3 {font-size:12pt;}
  #planner .notice {padding:8px;font-size:9pt;background:white;} #planner .card {break-inside:avoid;padding:12px;background:white;} #plan-output {display:block !important;} #plan-output p {margin-bottom:8px;}
}
