/* Раздел «Заявки» — заявки с сайта школы. */
.ap-wrap{max-width:860px}
.ap-titlerow .py-sub a{color:#2f6b46;text-decoration:underline;text-underline-offset:2px}
.ap-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0 16px}
.ap-tab{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:12px;border:1px solid #dcd6c8;background:#fffefb;
  font:600 13.5px var(--sans);color:#3f5a48;cursor:pointer}
.ap-tab i{font-style:normal;font-weight:600;color:#8a8576}
.ap-tab.on{background:#2f4738;border-color:#2f4738;color:#f4efe2}
.ap-tab.on i{color:#c9d8cc}
.ap-dot{font:700 11px var(--sans);background:#c9773f;color:#fff;border-radius:20px;padding:2px 7px}
.ap-list{display:flex;flex-direction:column;gap:12px}
.ap-card{background:#fffefb;border:1px solid #e6e1d4;border-radius:18px;padding:18px 20px}
.ap-card.is-new{border-color:#e2b48f;box-shadow:0 0 0 3px rgba(201,119,63,.08)}
.ap-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.ap-name{margin:0;font:600 19px var(--serif);color:#23211c}
.ap-date{font:500 12px var(--sans);color:#8a8576}
.ap-badge{flex:none;font:600 11.5px var(--sans);border-radius:20px;padding:4px 10px}
.ap-new{background:#f6e3d3;color:#9a5a32}
.ap-work{background:#e8eef5;color:#3d5a7a}
.ap-done{background:#dfeadb;color:#2f6b46}
.ap-rej{background:#efece5;color:#7a7566}
.ap-cts{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0}
.ap-ct{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:10px;background:#f4f8f2;border:1px solid #d6e2d3;
  font:600 13px var(--sans);color:#2f5a3b;text-decoration:none;word-break:break-all}
.ap-ct:hover{background:#eaf2e6}
.ap-facts{margin:12px 0 0;display:grid;gap:4px}
.ap-row{display:flex;gap:10px;font:500 13px/1.45 var(--sans)}
.ap-row span{flex:none;width:130px;color:#8a8576}
.ap-row b{font-weight:600;color:#3a372f}
.ap-msg{margin:10px 0 0;font:500 13.5px/1.55 var(--sans);color:#4a473e;white-space:pre-wrap;background:#faf8f2;border-radius:12px;padding:10px 12px}
.ap-acts{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 0}
.ap-sbtn{padding:7px 12px;border-radius:10px;border:1px solid #dcd6c8;background:#fffefb;font:600 12.5px var(--sans);color:#4a473e;cursor:pointer}
.ap-sbtn:hover{border-color:#a9c2af}
.ap-sbtn.on{background:#2f4738;border-color:#2f4738;color:#f4efe2}
.ap-note{margin:12px 0 0}
.ap-note summary{cursor:pointer;font:600 12.5px var(--sans);color:#5b6f60;list-style:none}
.ap-note summary::-webkit-details-marker{display:none}
.ap-note textarea{display:block;width:100%;box-sizing:border-box;margin:8px 0 0;padding:10px 12px;border-radius:12px;border:1px solid #dcd6c8;
  background:#fffefb;font:500 13.5px/1.45 var(--sans);resize:vertical}
.ap-nsave{margin-top:8px;padding:8px 14px;border-radius:10px;border:0;background:#2f4738;color:#f4efe2;font:600 12.5px var(--sans);cursor:pointer}
.ap-empty{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;padding:42px 20px;background:#fffefb;
  border:1px dashed #d9d4c6;border-radius:18px}
.ap-empty span{width:56px;height:56px;border-radius:16px;background:#eef3ea;display:flex;align-items:center;justify-content:center}
.ap-empty p{margin:0;max-width:360px;font:500 13.5px/1.5 var(--sans);color:#7a7566}
/* число новых заявок у пункта меню */
.ap-navbadge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-left:6px;
  border-radius:9px;background:#c9773f;color:#fff;font:700 10.5px/1 var(--sans)}
[data-tbmore].ap-has{position:relative}
[data-tbmore].ap-has::after{content:"";position:absolute;top:6px;right:calc(50% - 16px);width:8px;height:8px;border-radius:50%;background:#c9773f}
@media(max-width:640px){
  .ap-card{padding:16px}
  .ap-row{flex-direction:column;gap:0}
  .ap-row span{width:auto}
}

/* ---- Пробные занятия ---- */
.ap-tline{margin:12px 0 0;font:600 13.5px/1.45 var(--sans);color:#3f5a48}
.ap-pick{margin:12px 0 0;padding:12px;border-radius:14px;background:#faf8f2;border:1px solid #ece7da}
.ap-pnote{margin:0 0 10px;font:500 12.5px/1.45 var(--sans);color:#7a7566}
.ap-tsel{margin:0 0 10px;padding:8px 10px;border-radius:10px;border:1px solid #dcd6c8;font:600 13px var(--sans);background:#fffefb}
.ap-slots{display:flex;flex-wrap:wrap;gap:6px}
.ap-slot{display:inline-flex;flex-direction:column;align-items:flex-start;gap:1px;padding:8px 11px;border-radius:10px;
  border:1px solid #dcd6c8;background:#fffefb;font:600 12.5px var(--sans);color:#2f4738;cursor:pointer}
.ap-slot i{font-style:normal;font-weight:600;font-size:10.5px;color:#b0602c}
.ap-slot:hover{border-color:#a9c2af;background:#f4f8f2}
.ap-trialchk{margin:4px 0 10px}
/* окна в расписании */
.ev-trial{background:#fffaf4;border:1px dashed #d9a57a}
.ev-trial .et{color:#b06a37}.ev-trial .en{color:#7a4a26}.ev-trial .es{color:#c09070}
.ev-trialb{background:linear-gradient(135deg,#f3dcc8,#f9ece0);border:1px solid #e2b48f;border-left:3px solid #c9773f}
.ev-trialb .et{color:#a85f30}.ev-trialb .en{color:#4a2e18}.ev-trialb .es{color:#9a6a45}
.ev-trial.sch-ev-mini{border-left-color:#d9a57a}
.ev-trialb.sch-ev-mini{border-left-color:#c9773f}
.sch-badge.bg-trial{background:#fbeee2;color:#9a5a32}
.sch-badge.bg-trialb{background:#f3dcc8;color:#7a4a26}
.sch-legend .sw-trial{background:#fffaf4;border:1px dashed #d9a57a}
.sch-legend .sw-trialb{background:#f3dcc8;border-left:3px solid #c9773f}

/* ---------- Отзывы: вкладка владельца и форма ученика ---------- */
.rv-hint{margin:4px 0 16px;color:#6b7f71;font-size:14px;line-height:1.5;max-width:760px}
.rv-note{font:500 14px var(--sans,Manrope,sans-serif);color:#7a8f7f}
.rv-text{margin:12px 0 10px;font:italic 400 16.5px/1.55 Spectral,serif;color:#22382c}
.rv-res{display:inline-flex;gap:6px;align-items:center;font-size:13px;color:#4a5c50;background:#eef3ec;border-radius:999px;padding:5px 12px;margin-bottom:6px}
.rv-res b{color:#2f4738}
.rv-add{background:#fffefb;border:1px dashed #cfd9cd;border-radius:16px;padding:12px 16px;margin:0 0 18px}
.rv-add summary{cursor:pointer;font-weight:700;color:#2f4738;font-size:14.5px}
.rv-form{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px;margin-top:14px}
.rv-f{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:#4a5c50}
.rv-f.wide,.rv-chk.wide,.rv-fact.wide,.rv-err.wide{grid-column:1/-1}
.rv-f input,.rv-f textarea,.rv-f select{font:inherit;font-weight:500;font-size:15px;color:#22382c;background:#fff;border:1px solid #dcd6c8;border-radius:12px;padding:10px 12px;outline:none}
.rv-f input:focus,.rv-f textarea:focus,.rv-f select:focus{border-color:#5e8068;box-shadow:0 0 0 3px rgba(94,128,104,.15)}
.rv-resf>div{display:flex;gap:8px;align-items:center}.rv-resf>div input{min-width:0}
.rv-resf>div input:nth-child(1),.rv-resf>div input:nth-child(3){width:90px;flex:none}
.rv-resf>div input:nth-child(4){flex:1}.rv-resf i{font-style:normal;color:#7a8f7f}
.rv-chk{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:#4a5c50;line-height:1.45}
.rv-chk input{margin-top:3px;width:17px;height:17px;accent-color:#2f4738}
.rv-fact{display:flex;gap:10px;flex-wrap:wrap}
.rv-err{color:#b0602c;font-size:13.5px;margin:0}
.rv-mcard{cursor:pointer}
.rv-mico{width:46px;height:46px;border-radius:14px;background:#eef3ec;color:#2f4738;display:grid;place-items:center;flex:none}
.rv-mico svg{width:24px;height:24px}
.rv-ov{position:fixed;inset:0;z-index:1200;background:rgba(20,30,24,.42);display:flex;align-items:center;justify-content:center;padding:18px;animation:rvIn .25s ease}
@keyframes rvIn{from{opacity:0}to{opacity:1}}
.rv-modal{position:relative;width:100%;max-width:620px;max-height:calc(100vh - 36px);overflow:auto;background:#fffdf8;border-radius:24px;padding:28px 28px 24px;box-shadow:0 30px 80px rgba(20,30,24,.3)}
.rv-modal h2{font:600 28px Spectral,serif;color:#22382c;margin:0 0 6px}
.rv-lead{color:#6b7f71;font-size:14.5px;line-height:1.5;margin:0 0 6px}
.rv-x{position:absolute;right:14px;top:12px;width:38px;height:38px;border-radius:12px;border:0;background:#f1ede3;font-size:22px;color:#4a5c50;cursor:pointer}
.rv-send{border:0;border-radius:999px;background:linear-gradient(180deg,#d08550,#b8662f);color:#fff;font:700 15px var(--sans,Manrope,sans-serif);padding:13px 22px;cursor:pointer;box-shadow:0 10px 22px rgba(201,119,63,.3)}
.rv-send:disabled{opacity:.6}
@media (max-width:640px){.rv-form{grid-template-columns:1fr}.rv-modal{padding:22px 18px 18px;border-radius:20px}.rv-modal h2{font-size:24px}}
