/* One monthly direction; one place to browse schedules. */
.main .monthly-board.monthly-compact{margin:0 0 20px;padding:0;border:1px solid #cad5ce;border-radius:14px;background:#fff;color:#203b30;overflow:hidden}
.monthly-compact-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;border-bottom:1px solid #e1e7e2;font-size:12px;color:#365347}
.monthly-compact-head .text-btn{min-height:40px;display:inline-flex;align-items:center;gap:5px;margin:-6px 0}
.monthly-compact-head svg{width:15px;height:15px}
.monthly-goal-line{display:grid;grid-template-columns:90px minmax(0,1fr);align-items:center;gap:12px;padding:12px 16px}
.monthly-goal-line+ .monthly-goal-line{padding-top:0}
.monthly-goal-line>strong{font-size:13px;font-weight:650;color:#203b30}
.monthly-goal-line>p{margin:0;font-size:14px;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#203b30}
.monthly-result-fold{border-top:1px solid #e1e7e2}
.monthly-result-fold>summary{display:flex;align-items:center;gap:10px;min-height:48px;padding:10px 16px;cursor:pointer;list-style:none;background:#f4f6f2;font-size:13px;color:#203b30}
.monthly-result-fold>summary::-webkit-details-marker{display:none}
.monthly-result-fold>summary>span{margin-left:auto;font-weight:650}
.monthly-result-fold>summary>svg{width:16px;height:16px}
.monthly-result-fold[open]>summary>svg{transform:rotate(180deg)}
.monthly-result-body{padding:14px 16px}
.monthly-result-body dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 12px}
.monthly-result-body dt{font-size:12px;margin:0 0 4px;color:#365347}
.monthly-result-body dd{font-size:16px;font-weight:650;margin:0;color:#203b30;overflow-wrap:anywhere}
.monthly-result-meter{height:7px;border-radius:8px;background:#e4e9e1;overflow:hidden}
.monthly-result-meter>span{display:block;height:100%;background:#365b44}
.monthly-result-note{font-size:13px;line-height:1.6;margin:12px 0 0;overflow-wrap:anywhere}
.monthly-result-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px}
.monthly-result-foot small{font-size:11px;color:#365347;line-height:1.5}
.monthly-form-count{margin:0 0 18px;padding:0;border:1px solid #cad5ce;border-radius:10px}
.monthly-form-count>summary{padding:12px;cursor:pointer;min-height:48px}
.monthly-form-count>.field-row{padding:12px}
.monthly-compact-form .monthly-form-month{margin:0 0 20px;font-size:13px;color:#365347}
.monthly-form-reference{margin:0 0 20px;padding:12px;background:#f4f6f2;border-radius:10px;line-height:1.7}
.monthly-compact-form .mb-error:empty{display:none}
.monthly-compact-form .mb-form-footer{margin:20px 0 0;padding:0}
.main .calendar-query-row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr) minmax(0,1fr);gap:10px;align-items:start;margin-bottom:14px;padding:0;min-width:0}
.calendar-query-row>.ff-period-controls{margin:0;width:100%;min-width:0}
.calendar-quick-field{display:block;margin:0;min-width:0}
.calendar-quick-field select{width:100%;max-width:100%;min-width:0;height:48px;box-sizing:border-box;padding:0 28px 0 12px;border:1px solid #bdcbbf;border-radius:10px;background:#fff;color:#203b30;-webkit-text-fill-color:#203b30;color-scheme:light;font-size:14px;opacity:1}
.calendar-query-row .ff-period-fold>summary{min-height:48px;box-sizing:border-box;border-radius:10px;padding:10px 12px;gap:6px;font-size:13px}
.calendar-query-row .ff-period-fold>summary>.ff-period-edit{display:none}
.calendar-query-row .ff-period-fold>summary .ff-period-full{display:none}
.calendar-query-row .ff-period-fold>summary .ff-period-short{display:inline}
.calendar-query-row .ff-period-fold>summary>svg:first-child{display:none}
.calendar-query-row .ff-period-fields{grid-template-columns:minmax(0,1fr)}
.calendar-view-options{margin:0!important;min-width:0;flex:0 0 auto}
.calendar-view-options>summary{padding:10px 12px;min-height:48px;font-size:12px;box-sizing:border-box}
.calendar-toolbar{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.calendar-view-options[open]{position:relative}
.calendar-view-options[open]>.ff-query-extras{position:absolute;right:0;top:100%;width:min(310px,calc(100vw - 48px));box-sizing:border-box;z-index:15;background:#fff;padding:16px;border:1px solid #cad5ce;border-radius:12px;box-shadow:0 12px 28px #203b3026;display:grid;grid-template-columns:1fr;gap:12px}
.calendar-view-options .view-switch{display:flex;gap:8px}
.calendar-view-options .view-switch button{min-height:48px;flex:1}
.calendar-view-options .ff-query-field{width:100%;margin:0}
.main .calendar-toolbar .date-controls{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:nowrap}
.main .calendar-toolbar .date-controls h2{font-size:20px;white-space:nowrap;margin:0}
.calendar-toolbar .date-controls .btn{padding:8px;min-height:48px;font-size:13px}
.calendar-toolbar .date-controls .icon-btn{width:36px;min-width:36px;min-height:48px;padding:6px}
@media(max-width:680px){
  .monthly-goal-line{grid-template-columns:78px minmax(0,1fr);gap:8px;padding:12px 14px}
  .monthly-compact-head,.monthly-result-fold>summary{padding-left:14px;padding-right:14px}
  .monthly-goal-line>p{font-size:13px}
  .monthly-result-body dd{font-size:15px}
  .main .calendar-query-row{grid-template-columns:minmax(0,1.22fr) minmax(0,.75fr) minmax(0,1fr);gap:6px}
  .calendar-query-row .ff-period-fold>summary{padding:10px 7px;gap:3px;font-size:12px}
  .calendar-query-row .ff-period-caption{min-width:0;gap:4px}
  .calendar-query-row .ff-period-caption strong{font-size:12px}
  .calendar-query-row .ff-period-short{font-size:11px}
  .calendar-query-row .ff-period-chevron{width:12px;height:12px}
  .calendar-quick-field select{padding-left:8px;padding-right:20px;font-size:13px}
  .main .calendar-toolbar .date-controls{gap:2px}
  .main .calendar-toolbar .date-controls h2{font-size:17px}
  .calendar-view-options>summary{padding:10px 8px}
  .calendar-toolbar .date-controls .icon-btn{width:30px;min-width:30px;padding:5px}
}
.narrow-preview .main .calendar-query-row{grid-template-columns:minmax(0,1.22fr) minmax(0,.75fr) minmax(0,1fr);gap:6px}
.narrow-preview .calendar-query-row .ff-period-full,.narrow-preview .calendar-query-row .ff-period-edit{display:none}
.narrow-preview .calendar-query-row .ff-period-short{display:inline}

/* Two team workspaces; four focused CRM parts. */
.main .team-heading{display:flex;flex-direction:row;align-items:center;gap:10px;margin-bottom:14px}
.team-heading h1{font-size:24px;line-height:1.3;margin:0}
.team-heading .team-title-row{gap:8px}
.team-heading .team-motto{font-size:13px;margin:5px 0 0}
.team-heading .team-motto-empty{display:none}
.team-heading .heading-actions{width:auto;flex:0 0 auto}
.main .team-work-tabs{width:auto;max-width:none;box-sizing:border-box;margin-bottom:14px}
.team-work-tabs>button{min-height:48px}
.team-work-tools{display:flex;align-items:start;gap:8px;margin:0 0 16px;position:relative}
.team-work-tools>.btn{min-height:48px;flex:1}
.team-more-tools{margin:0!important;min-width:0}
.team-more-tools>summary{min-height:48px;padding:11px 14px;box-sizing:border-box;font-size:13px}
.team-more-tools[open]>.team-more-actions{position:absolute;right:0;top:48px;z-index:12;display:grid;gap:8px;padding:12px;background:#fff;border:1px solid #cad5ce;border-radius:10px;box-shadow:0 10px 24px #203b3026}
.main .team-sales-fold,.main .team-notes-fold{margin:12px 0;border-radius:12px}
.team-sales-fold>summary,.team-notes-fold>summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;min-height:48px;font-size:14px}
.team-sales-fold>summary>span,.team-notes-fold>summary>span{margin:0;font-size:12px;color:#365347;-webkit-text-fill-color:#365347}
.team-note-kind{border-bottom:1px solid #d6dfd8;margin:0}
.team-note-kind:last-child{border-bottom:0}
.team-note-kind>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:12px 0;font-size:14px;cursor:pointer}
.team-note-kind>summary>span{font-size:12px;color:#365347;-webkit-text-fill-color:#365347}
.team-notes-fold .rtw-meeting{padding-top:4px;padding-bottom:4px}
.team-note-kind .rtw-genders{padding-bottom:14px}
.team-sale-source .rtw-source-sale{padding:14px 0;border-bottom:1px solid #d6dfd8;font-size:13px}
.team-sale-source .rtw-source-sale p{margin:6px 0;line-height:1.6}
.team-sales-fold .report-help{font-size:12px;margin:12px 0 0}
.main .crm-part-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:4px;border-radius:12px;background:#e8ede2;margin:0 0 14px}
.main .crm-part-tabs>button{min-height:48px;min-width:0;border:0;border-radius:8px;background:transparent;font-size:14px;font-weight:650;color:#203b30;-webkit-text-fill-color:#203b30}
.main .crm-part-tabs>button.active{background:#285343;color:#fff;-webkit-text-fill-color:#fff}
.crm-part-content{min-width:0;padding:0}
.crm-part-content>.growth-entry{margin:12px 0}
.crm-part-content .crm-compact-workflow{margin:0;padding:0;border:0;background:#fff}
.crm-part-content .crm-workflow-heading{margin:16px 0 12px}
.crm-goal-grid{display:grid;grid-template-columns:1fr;gap:12px}
.crm-goal-card.crm-goal-compact{margin:0;padding:0;overflow:hidden;border:1px solid #cad5ce;border-radius:12px;background:#fff}
.crm-goal-compact>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px}
.crm-goal-compact>header>h4{margin:0;font-size:14px;line-height:1.5;min-width:0;overflow-wrap:anywhere}
.crm-goal-compact>header>small{font-size:11px;flex:0 0 auto;color:#365347;-webkit-text-fill-color:#365347}
.crm-goal-compact .monthly-goal-line{padding-top:0}
.crm-goal-compact .monthly-result-body>p{font-size:13px;line-height:1.6;margin:12px 0 0}
.crm-compact-counts{display:flex;align-items:center;flex-wrap:wrap;gap:14px;padding:12px 0;margin-bottom:4px;font-size:13px;color:#365347;-webkit-text-fill-color:#365347}
.crm-compact-counts strong{font-size:14px;color:#203b30;-webkit-text-fill-color:#203b30}
.crm-meeting-record{margin:12px 0;border:1px solid #cad5ce;background:#fff;border-radius:12px;overflow:hidden}
.crm-meeting-record>summary{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center;min-height:48px;padding:14px 16px;font-size:13px;cursor:pointer}
.crm-meeting-record>summary>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#365347;-webkit-text-fill-color:#365347}
.crm-meeting-record .growth-note{margin:0;border:0;border-radius:0}
.crm-monthly-goal .monthly-result-body>p{margin:0;font-size:13px;line-height:1.6}
.crm-monthly-goal .monthly-result-body>p+p{margin-top:8px}
@media(max-width:680px){
 .team-heading h1{font-size:21px}
 .team-heading .team-identity-edit{font-size:12px}
 .team-heading .heading-actions>.btn{padding-left:12px;padding-right:12px;font-size:12px}
 .team-work-tools>.btn{font-size:13px;padding-left:10px;padding-right:10px}
 .team-sales-fold>summary,.team-notes-fold>summary{font-size:13px;padding:12px 14px}
 .main .crm-part-tabs>button{font-size:13px}
 .crm-goal-compact>header{padding:12px 14px}
 .crm-meeting-record>summary{grid-template-columns:1fr;gap:4px}
}

.team-target-fields{padding:12px}
.crm-goal-action{padding:8px 16px;border-top:1px solid #e1e7e2}
.crm-goal-action .text-btn{min-height:40px;font-size:13px}
