/* Small screens define the planner; larger screens add room and columns. */
.planner-dialog{width:calc(100% - 24px);max-width:780px;max-height:calc(100dvh - 24px);padding:24px 20px;border-radius:18px;scrollbar-width:thin;overscroll-behavior:contain;overflow-x:hidden}
.planner-dialog [hidden]{display:none!important}
.planner-dialog .dialog-close{width:44px;height:44px;right:8px;top:8px}
.planner-header{display:flex;align-items:center;gap:11px;padding-right:28px;padding-bottom:18px;border-bottom:1px solid #ededeb}
.planner-header>div:last-child{min-width:0}
.planner-header .avatar{width:46px;height:46px;flex:none}
.planner-header h2{font-size:23px;line-height:1.15;font-weight:500;letter-spacing:-.05em}
.planner-header p{font-size:12px;line-height:1.5;margin-top:7px;color:#686868}
.planner-step{display:block;font-size:12px;line-height:1.5;color:#737373;margin:0 0 17px}
.planner-dialog form{margin-top:22px}
.planner-business-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:17px}
.planner-business-fields>div{min-width:0}
.planner-dialog label,.planner-dialog legend{font-size:14px;color:#333;font-weight:500}
.planner-dialog select{display:block;width:100%;max-width:100%;font-size:16px;line-height:1.4;padding:12px;min-height:48px;color:#333;border-radius:10px;margin-top:8px;background:#fff}
.planner-selection-hint{font-size:12px;line-height:1.5;color:#686868;margin-top:10px}
.planner-dialog fieldset{margin:22px 0}
.planner-dialog legend{margin-bottom:12px}
.planner-option{gap:12px;padding:12px;min-height:68px;margin-bottom:9px;border-radius:10px;transition:background .18s,border-color .18s}
.planner-option:has(input:checked){background:#f6f8f0;border-color:#b4c392}
.planner-option input{accent-color:#111;width:18px;height:18px;flex:none;margin:0}
.planner-option span{min-width:0}
.planner-option b{font-size:14px;font-weight:550;line-height:1.4}
.planner-option small{font-size:13px;line-height:1.5;color:#666;margin-top:4px}
.planner-dialog form .button{font-size:14px;min-height:48px;width:100%;gap:12px;padding-inline:17px}
.planner-dialog .planner-privacy{font-size:12px;line-height:1.5;color:#777}
#planner-result{margin-top:20px}
#planner-result h3{font-size:25px;line-height:1.15;font-weight:500;margin-bottom:8px}
#planner-result>p{font-size:13px;line-height:1.6;color:#666}
#planner-result .planner-step{margin-bottom:12px}
.planner-group-tabs{display:flex;gap:8px;margin:18px 0 0}
.planner-group-tabs button{flex:1;min-height:44px;border:1px solid #ddd;background:#fff;border-radius:999px;padding:10px 12px;font-size:13px;font-weight:500}
.planner-group-tabs button[aria-selected="true"]{background:#111;color:#fff;border-color:#111}
.planner-agent-rail{display:flex;gap:6px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scroll-snap-type:x proximity;margin:18px 0 16px;padding:3px 2px 8px}
.planner-agent{display:flex;flex:0 0 69px;min-height:88px;flex-direction:column;align-items:center;gap:7px;padding:8px 4px;border:1px solid transparent;background:#fff;border-radius:13px;scroll-snap-align:center;transition:background .2s,border-color .2s}
.planner-agent .avatar{width:43px;height:43px}
.planner-agent>span:last-child{font-size:11px;line-height:1.3;white-space:nowrap}
.planner-agent[aria-selected="true"]{background:#f5f7ee;border-color:#dce4c7}
.planner-agent:hover{background:#f6f6f4}
.planner-agent[aria-selected="true"]:hover{background:#f5f7ee}
.planner-agent:focus-visible{outline-offset:0}
.planner-agent-details{display:grid;grid-template-columns:52px minmax(0,1fr);gap:16px 10px;align-items:center;padding:18px;background:#f8f8f6;border:1px solid #ebebe7;border-radius:15px}
.planner-active-portrait{width:52px;height:52px;margin:0;grid-column:1;grid-row:1}
.planner-profile-heading{grid-column:2;grid-row:1;min-width:0}
.planner-agent-details h4{margin:0;font-size:23px;line-height:1.2;letter-spacing:-.035em;font-weight:550;text-align:left;overflow-wrap:break-word}
.planner-agent-details .planner-tasks{grid-column:1/-1}
.planner-tasks{display:flex;flex-direction:column;gap:10px;margin:0;padding:0}
.planner-tasks li{display:flex;align-items:flex-start;gap:9px;font-size:14px;line-height:1.6;color:#505050;overflow-wrap:break-word}
.planner-task-mark{width:15px;height:15px;margin-top:4px;flex:none;color:#6a842b}
.planner-agent-details .planner-approval{grid-column:1/-1;font-size:12px;line-height:1.5;color:#686868;margin:0}
.planner-result-actions{margin-top:17px}
#request-audit{width:100%;justify-content:space-between;min-height:49px;font-size:13px;gap:10px;padding-inline:17px;text-align:left;background:#000;color:#fff}
#request-audit:disabled{cursor:default;background:#000;color:#fff;opacity:1;transform:none}
.audit-availability{font-size:12px;color:#777;line-height:1.5;margin-top:9px}
#change-plan{font-size:13px;margin-top:8px;min-height:44px}
.planner-dialog .avatar svg{animation:none;filter:drop-shadow(0 3px 2px #00000012)}
.planner-dialog .agent-orientation{animation:none;transform:none}
.planner-dialog .eye-look{animation:planner-glance 10s ease-in-out infinite;animation-delay:var(--eye-delay,0s)}
.planner-dialog[data-tracking="true"] .eye-look{animation:none;transform:translate(var(--look-x,0px),var(--look-y,0px));transition:transform .2s ease}
.planner-dialog:not([open]) .eye-look,.planner-dialog[data-inactive="true"] .eye-look{animation-play-state:paused}
@keyframes planner-glance{0%,12%,100%{transform:translate(0,0)}20%,30%{transform:translate(-7px,0)}40%,50%{transform:translate(7px,0)}60%,68%{transform:translate(0,-5px)}78%,88%{transform:translate(0,5px)}}
@media(min-width:640px){
  .planner-dialog{width:calc(100% - 32px);padding:30px;max-height:calc(100dvh - 32px);border-radius:22px}
  .planner-dialog .dialog-close{right:14px;top:14px}
  .planner-header{gap:16px;padding-right:30px;padding-bottom:22px}
  .planner-header .avatar{width:58px;height:58px}
  .planner-header h2{font-size:28px}
  .planner-header p{font-size:13px;line-height:1.6}
  .planner-business-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  .planner-option{padding:14px}
  .planner-dialog form .button{width:auto;min-width:240px}
  #planner-result h3{font-size:27px}
  .planner-group-tabs button{flex:initial;padding:10px 19px}
  .planner-agent{flex-basis:77px;min-height:95px}
  .planner-agent .avatar{width:48px;height:48px}
  .planner-agent-details{grid-template-columns:96px minmax(0,1fr);gap:14px 20px;padding:22px;min-height:210px}
  .planner-active-portrait{width:96px;height:96px;grid-row:1/4;align-self:center}
  .planner-agent-details h4{font-size:27px}
  .planner-agent-details .planner-tasks,.planner-agent-details .planner-approval{grid-column:2}
  .planner-result-actions{margin-top:19px}
  #request-audit{font-size:14px}
}
@media(prefers-reduced-motion:reduce){.planner-dialog .agent-orientation,.planner-dialog .eye-look,.planner-dialog .eye-blink{animation:none!important;transform:none!important;transition:none!important}.planner-dialog .planner-agent-rail{scroll-behavior:auto}}

.planner-dialog .button{appearance:none;-webkit-appearance:none}
