.student-calls{--calls-muted:var(--secondary,#58646d);display:grid;gap:16px;color:var(--ink);font-size:13px}
.calls-section-head,.calls-week-heading,.calls-slot-time,.calls-person,.calls-row-actions,.calls-week-nav,.calls-form-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}
.calls-week-heading p,.calls-meta{margin:0;color:var(--calls-muted);line-height:1.5}
.calls-status:empty{display:none}.calls-status{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:var(--ink);font-size:12px}
.calls-layout{display:grid;grid-template-columns:minmax(240px,290px) minmax(0,1fr);gap:24px;align-items:start}
.calls-queue{display:grid;gap:12px;min-width:0;border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--surface,#fff)}
.calls-section-head h2,.calls-week-heading h2{font-size:15px;font-weight:600;margin:0;letter-spacing:0}
.calls-section-head>span,.calls-week-heading p{font-size:12px;color:var(--calls-muted)}
.calls-filters{display:flex;gap:4px;border-bottom:1px solid var(--line)}
.calls-filters button{border:0;background:transparent;font:inherit;font-size:12px;color:var(--calls-muted);padding:10px 8px;border-bottom:2px solid transparent;cursor:pointer}
.calls-filters button[aria-pressed=true]{color:var(--ink);border-bottom-color:var(--accent)}
.calls-queue .input{width:100%;min-width:0;box-sizing:border-box}
.calls-queue-list{max-height:65vh;overflow-y:auto;scrollbar-color:var(--line) transparent;scrollbar-width:thin}
.calls-candidate{padding:16px 0;border-bottom:1px solid var(--line);display:grid;gap:8px}
.calls-candidate:first-child{padding-top:4px}.calls-candidate:last-child{border-bottom:0;padding-bottom:0}
.calls-candidate[draggable=true]{cursor:grab}.calls-candidate[draggable=true]:active{cursor:grabbing}
.calls-person{justify-content:flex-start;align-items:center;flex-wrap:wrap;gap:9px;min-width:0}
.calls-avatar{width:30px;height:30px;flex:none;position:relative;display:grid;place-items:center;border-radius:50%;overflow:hidden;background:var(--accent-soft,#e7f7f5);color:var(--ink);font-size:11px;font-weight:600}
.calls-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.calls-name{max-width:calc(100% - 39px)}
.calls-name{border:0;background:transparent;text-align:left;padding:0;color:inherit;font:inherit;font-weight:600;line-height:1.5;cursor:pointer;overflow-wrap:anywhere}
.calls-name:hover{text-decoration:underline;text-underline-offset:3px}
.calls-renewal .calls-name{background:#fff0b2;color:#594315;border-radius:3px;padding:1px 4px}
.calls-priority{background:#fbe7e8;color:#903e46;font-size:10px;padding:3px 6px;border-radius:4px}
.calls-note{font-size:12px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;margin:0}
.calls-meta{font-size:12px;color:var(--ink);overflow-wrap:anywhere}
.calls-row-actions{justify-content:flex-start;flex-wrap:wrap;gap:6px}
.student-calls .btn,.calls-form .btn{min-height:34px;white-space:normal;font-size:11px}
.calls-week{min-width:0;display:grid;gap:18px}.calls-week-heading{align-items:flex-start;flex-wrap:wrap}.calls-week-heading p{margin-top:5px}.calls-week-nav{gap:5px;flex-wrap:wrap}
.calls-days{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}
.calls-day{min-width:0;display:flex;flex-direction:column;gap:12px;min-height:200px;border-radius:8px}.calls-day-slots{flex:1;align-content:start;min-height:100px}.calls-day>.btn{flex:none}.calls-is-dragging .calls-day{outline:1px dashed var(--accent);outline-offset:5px}.calls-day.calls-drop-active{background:var(--accent-soft,#e7f7f5);outline:2px solid var(--accent);outline-offset:5px}.calls-day>header{border-bottom:1px solid var(--line);padding-bottom:12px;display:flex;flex-direction:column;gap:5px}
.calls-day h3{font-size:13px;font-weight:600;margin:0;letter-spacing:0}.calls-day>header span{font-size:12px;color:var(--calls-muted)}
.calls-day-slots{display:grid;gap:10px}.calls-slot{padding:13px 12px;border:1px dashed var(--line);border-radius:12px;display:grid;gap:10px;background:var(--surface,#fff);transition:background-color 140ms ease-out,border-color 140ms ease-out}
.calls-slot-filled{border-style:solid}.calls-slot-time{font-size:12px;flex-wrap:wrap;font-variant-numeric:tabular-nums}.calls-slot-time span{color:var(--calls-muted);font-size:11px}
.calls-drop-active{border-color:var(--accent);background:var(--accent-soft,#e7f7f5)}
.calls-empty{color:var(--calls-muted);font-size:12px;line-height:1.65;margin:0;padding:14px 0;max-width:65ch}
.calls-history{border-top:1px solid var(--line);padding-top:18px;margin-top:4px}.calls-history summary{font-size:13px;cursor:pointer;min-height:28px}
.calls-history-row{display:grid;grid-template-columns:minmax(0,1fr) 80px auto;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding:12px 0;font-size:12px}.calls-history-row strong{font-weight:550;overflow-wrap:anywhere}.calls-history-row small{display:block;color:var(--calls-muted);margin-top:4px}
.calls-form{display:grid;gap:18px;max-width:520px;margin:auto}.calls-field{display:grid;gap:8px;font-size:12px}.calls-field .input{width:100%;box-sizing:border-box;font-size:13px;min-height:40px}.calls-field textarea{resize:vertical;line-height:1.6}.calls-check{display:flex;align-items:center;gap:9px;font-size:13px;min-height:32px}.calls-check input{width:17px;height:17px;accent-color:var(--accent)}
.calls-form [role=status]{font-size:12px;margin:0;line-height:1.6;color:var(--ink)}.calls-form-actions{justify-content:flex-end;flex-wrap:wrap}.calls-form-actions .btn{min-height:40px}
.student-calls :is(button,input,summary):focus-visible,.calls-form :is(button,input,select,textarea):focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.student-calls button:disabled,.calls-form button:disabled{opacity:.5;cursor:not-allowed}.student-calls input,.calls-form :is(input,textarea){caret-color:var(--accent)}.student-calls ::selection,.calls-form ::selection{background:#c6e9e3;color:#133d36}
@media(max-width:1100px){.calls-layout{grid-template-columns:minmax(215px,250px) minmax(0,1fr);gap:18px}.calls-days{grid-template-columns:1fr}.calls-day>header{flex-direction:row;justify-content:space-between}.calls-day-slots{grid-template-columns:repeat(2,minmax(0,1fr))}.calls-day>.btn{justify-self:start}}
@media(max-width:680px){.calls-layout{grid-template-columns:1fr}.calls-queue-list{max-height:340px}.calls-day-slots{grid-template-columns:1fr}.calls-week-nav .btn{min-height:40px}.calls-history-row{grid-template-columns:minmax(0,1fr) auto}.calls-history-row>.btn{grid-column:1/-1;justify-self:start}.student-calls .btn{min-height:40px}}
@media(prefers-reduced-motion:reduce){.calls-slot{transition:none}}

.calls-week-heading [data-calls-settings]{margin-top:6px;border:0;background:transparent;box-shadow:none;padding:0;min-height:28px;font-size:12px}
.calls-booking[draggable=true]{cursor:grab}.calls-booking[draggable=true]:active{cursor:grabbing}
