/* SREDA application layer. Extends the selected design without external assets. */
.live-app{--canvas:#f5f7f3;--ink:#25392f;--muted:#7c887f;--accent:#245c49}
.live-app button{cursor:pointer}.live-app .app-shell{min-height:100vh}.live-app .sidebar{top:0;height:100vh}.live-app .app-main{min-width:0}.live-app .main-content{max-width:1600px;margin:auto;padding:30px 38px 18px}.live-app .topbar{height:76px}.role-label{display:flex;gap:12px;align-items:center;background:#f0f4ed;border:1px solid #e4e9df;border-radius:12px;padding:12px;margin:8px 0 28px}.role-label strong,.role-label small{display:block}.role-label small{color:#7a877f;font-size:11px}.logout{display:flex;align-items:center;gap:8px;background:none;border:0;color:#7a877f;font-size:12px;margin-top:16px;padding:5px}.sidebar-bottom{margin-top:auto}.live-app .main-nav a{min-height:40px}.live-app .main-nav .icon{width:18px;height:18px}.live-app .sidebar{overflow-y:auto}.app-footer{display:flex;justify-content:space-between;color:#879086;font-size:11px;padding:28px 0 8px;border-top:1px solid #e4e8df;margin-top:40px}.live-app .panel{margin-bottom:22px;overflow:hidden}.live-app .panel-heading{padding:22px 24px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #edf0e9}.dashboard-columns{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:24px;align-items:start}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.section-pad{padding:26px}.live-app .btn{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #dce3d7;border-radius:9px;background:#fff;padding:10px 17px;font-weight:560;line-height:1.3;transition:background .15s,transform .15s;cursor:pointer}.live-app .btn:hover{background:#edf2e8}.live-app .btn.primary{background:#245c49;color:#fff;border-color:#245c49}.live-app .btn.primary:hover{background:#174935}.live-app .btn.full{width:100%;margin-top:12px}.text-link{color:#245c49;font-weight:600;font-size:13px}.text-link:hover{text-decoration:underline}.muted{color:#7a877f}.live-app .badge{display:inline-flex;white-space:normal;gap:4px;padding:5px 10px;background:#eef2e8;border-radius:7px;color:#577050;font-size:11px;line-height:1.4}.badge.completed,.badge.reviewed{background:#e1efe4;color:#28603d}.badge.submitted,.badge.planned{background:#f7efdb;color:#927233}.badge.cancelled,.badge.returned{background:#f5e5df;color:#9a6253}.notice{padding:14px 18px;border:1px solid #dfe8d7;background:#eef4e7;border-radius:10px;margin-bottom:20px;color:#446342}.notice.error,.notice.warning{background:#fbede7;color:#8e4f36;border-color:#efd7ca}.demo-strip{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#e4eadd;color:#52614b;border-radius:9px;padding:9px 14px;margin-bottom:22px;font-size:11px}.demo-strip button{border:0;background:none;color:#245c49;font:inherit;font-weight:650}.live-app h1{font-size:32px}.live-app .hero{margin-bottom:24px;min-height:260px}.live-app .hero h2{font-size:37px}.live-app .hero p{line-height:1.7}.live-app .stat-number{font-size:34px}.stat .icon{color:#6e896a}.stat small{color:#83907f}.person-card{padding:24px;position:relative;display:flex;align-items:flex-start;flex-direction:column;gap:12px;min-height:230px;transition:box-shadow .2s}.person-card:hover,.lesson-card:hover,.request-card:hover{box-shadow:0 8px 28px #273c2810}.person-card .badge{position:absolute;top:25px;right:22px}.live-app .avatar.large{width:62px;height:62px;font-size:25px}.person-card p{color:#7a877f}.person-card .text-link{margin-top:auto}.person-title{display:flex;gap:14px;align-items:center;margin-bottom:20px}.person-title p{font-size:12px;color:#7c887f}.small-heading{margin-top:32px}.lesson-row{display:flex;gap:15px;align-items:center;padding:20px 24px;border-bottom:1px solid #edf0e9}.lesson-row:hover{background:#fafbf7}.lesson-time{width:64px;flex-shrink:0}.lesson-time strong,.lesson-time small{display:block}.lesson-time strong{font-size:18px}.lesson-time small{font-size:10px;color:#7c887f}.lesson-line{width:3px;height:38px;background:#adc59a;border-radius:8px;flex-shrink:0}.lesson-info{flex:1;min-width:0}.lesson-info strong,.lesson-info small{display:block}.lesson-info strong{font-size:13px}.lesson-info small{font-size:11px;color:#899184;margin-top:5px}.lesson-row .icon{width:16px}.focus-item{display:flex;align-items:center;gap:12px;padding:20px 22px;border-bottom:1px solid #edf0e9}.focus-item div{flex:1;min-width:0}.focus-item strong,.focus-item small{display:block}.focus-item strong{font-size:13px}.focus-item small{font-size:11px;color:#899184;margin-top:5px}.mini-icon{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#edf1e4;color:#6c855c;flex-shrink:0}.mini-icon .icon{width:21px}.panel>.btn.full{width:calc(100% - 40px);margin:15px 20px 20px}.empty{padding:50px 28px;text-align:center;display:flex;align-items:center;flex-direction:column;gap:12px;color:#7c887f}.empty>span{font-size:42px;color:#8da17e}.empty h2,.empty h3{color:#3b5143}.empty p{max-width:400px}.empty.compact{padding:32px 22px}.detail-block{padding:20px 0;border-bottom:1px solid #e8ece2;display:flex;flex-direction:column;gap:10px}.detail-block .btn{align-self:flex-start}.detail-block:last-child{border-bottom:0}.detail-block small{color:#899184}.filter-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:22px 0}.filter-bar h2{margin-right:auto}.search-field{display:flex;gap:10px;align-items:center;border:1px solid #dfe5da;background:#fff;padding:9px 14px;border-radius:10px;min-width:250px}.search-field input{border:0;background:none;outline:0;width:100%;padding:0}.search-field .icon{color:#9aa58e;width:18px}.filter-bar select{margin-left:8px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:20px;font-weight:550;font-size:13px}.field>label{font-weight:600}.field small{font-weight:400;color:#84917f}.field input,.field textarea,.field select,.filter-bar select,.chat-composer textarea{width:100%;border:1px solid #dce4d5;border-radius:9px;padding:12px;background:#fff;color:#2e4236;font:inherit;font-weight:400;max-width:100%}.field textarea{resize:vertical;min-height:130px;line-height:1.7}.field input:focus,.field textarea:focus,.field select:focus,.chat-composer textarea:focus{outline:2px solid #8fad7f;outline-offset:1px}.field input[type=checkbox],.checkline input{width:17px;height:17px;accent-color:#245c49;flex-shrink:0}.field input[type=file]{padding:9px}.field input[type=file]::file-selector-button{padding:9px;border:0;border-radius:6px;color:#245c49;background:#edf2e7;margin-right:12px}.checkbox-field{flex-direction:row;align-items:center}.checkbox-field>input{order:-1}.field #id_participants,.field #id_enrollments{padding:12px;background:#f7f9f3;border-radius:10px}.field #id_participants label,.field #id_enrollments label{display:flex;gap:8px;padding:7px;align-items:center}.form-layout{display:grid;grid-template-columns:minmax(0,740px) minmax(240px,1fr);gap:28px;align-items:start}.form-panel{padding:30px;max-width:760px}.form-hint{margin-bottom:24px;color:#74806b;line-height:1.7}.form-aside{padding:30px}.form-aside p{margin:18px 0;color:#7a8773;line-height:1.8}.soft-icon{width:65px;height:65px;display:flex;align-items:center;justify-content:center;background:#edf2de;color:#719653;border-radius:20px;font-size:40px;margin-bottom:20px}.form-actions{display:flex;gap:12px;flex-wrap:wrap;padding-top:10px}.errorlist{color:#9a4638;background:#fbeee8;border-radius:8px;padding:12px 16px;list-style:none;margin:8px 0;font-size:13px}.stack-actions{display:flex;flex-direction:column;gap:6px;margin-top:24px}.stack-actions .btn{margin-top:0}.stack-form{margin-top:20px}.tabs{display:flex;gap:8px;overflow:auto;margin:20px 0 24px;border-bottom:1px solid #e1e7db;padding-bottom:12px}.tabs a{white-space:nowrap;padding:9px 14px;border-radius:8px;color:#7b8774}.tabs .active{background:#e4ecd9;color:#456238}.assignment-row{display:flex;align-items:center;gap:18px;padding:20px 24px;border-bottom:1px solid #edf0e9}.assignment-row:hover{background:#fafbf7}.assignment-row>div{flex:1;min-width:0}.assignment-row strong,.assignment-row small{display:block}.assignment-row small{color:#899184;font-size:11px;margin-top:5px}.assignment-row>.muted{font-size:12px}.lesson-cover{height:145px;background:#e4ebd6;display:flex;align-items:center;justify-content:space-between;padding:28px;color:#577544}.lesson-cover span{font-size:42px;font-weight:600}.lesson-cover i{font-size:66px;font-style:normal;color:#a4b98b}.lesson-card:nth-child(3n+2) .lesson-cover{background:#eee4da;color:#aa7b59}.lesson-card:nth-child(3n+3) .lesson-cover{background:#dfe9e8;color:#507874}.lesson-card h2{margin:10px 0}.lesson-card p{color:#84917f;font-size:13px;margin-bottom:22px}.lesson-content{line-height:1.9;font-size:15px;margin-top:25px;white-space:normal;overflow-wrap:anywhere}.lesson-content p{margin-bottom:20px}.feedback{background:#eff5e8;border-left:3px solid #9dbb87;border-radius:8px;padding:22px;margin:24px 0}.feedback p{margin-top:12px}.skill-card{padding:25px}.skill-title{display:flex;align-items:center;justify-content:space-between;margin:20px 0}.skill-title>strong{font-size:32px}.skill-title small{font-size:14px}.skill-card p{color:#71816b;margin:18px 0;line-height:1.7}.skill-card>small{color:#94a18a}.live-app progress{width:100%;height:8px;border:0;border-radius:99px;overflow:hidden;appearance:none;background:#edf1e8}.live-app progress::-webkit-progress-bar{background:#edf1e8}.live-app progress::-webkit-progress-value{background:#91b474;border-radius:99px}.live-app progress::-moz-progress-bar{background:#91b474;border-radius:99px}.feedback-row{display:flex;gap:18px;padding:24px;border-bottom:1px solid #edf0e9;align-items:flex-start}.feedback-row>div:nth-child(2){flex:1}.feedback-row p{margin:8px 0;color:#708069}.feedback-row small{color:#91a087}.feedback-date{color:#8c9c82;font-size:12px;padding-top:3px}.balance-number{display:block;font-size:42px;font-weight:620;letter-spacing:-1.5px;margin-top:20px}.week-controls{display:flex;gap:6px}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));background:#fff;border:1px solid #e1e7d9;border-radius:16px;min-height:480px;overflow:hidden}.day-column{border-right:1px solid #e9ede4;padding:0 7px 20px}.day-column:last-child{border:0}.day-heading{text-align:center;border-bottom:1px solid #e9ede4;padding:18px 4px;margin-bottom:12px}.day-heading small,.day-heading strong{display:block}.day-heading small{color:#8c9982;font-size:11px;text-transform:uppercase}.day-heading strong{font-size:22px;margin-top:4px}.day-column.today{background:#f9fbf4}.today .day-heading strong{color:#245c49;background:#e3edd7;border-radius:100%;width:36px;line-height:36px;margin:2px auto}.calendar-lesson{display:flex;flex-direction:column;gap:9px;background:#eaf1df;border-left:3px solid #9bbb80;border-radius:8px;padding:12px 9px;margin-bottom:10px}.calendar-lesson span{font-size:10px;color:#73905d}.calendar-lesson strong{font-size:12px;line-height:1.5}.calendar-lesson small,.calendar-lesson em{font-size:10px;font-style:normal;color:#6e8560}.calendar-lesson.cancelled{background:#f3e9e5;border-color:#d6b6a5;opacity:.7}.calendar-lesson.completed{background:#e3efea;border-color:#94b7a6}.day-empty{text-align:center;font-size:10px;color:#bcc3b5;margin-top:100px}.calendar-note{color:#8c9982;font-size:12px;margin-top:16px}.chat-layout{display:grid;grid-template-columns:280px minmax(0,1fr);border:1px solid #e2e7dc;border-radius:16px;overflow:hidden;background:#fff;min-height:600px}.chat-list{border-right:1px solid #e2e7dc}.chat-person{display:flex;gap:12px;padding:20px;border-bottom:1px solid #edf0e7}.chat-person strong,.chat-person small{display:block}.chat-person small{font-size:10px;color:#87967c;margin-top:5px}.chat-person.active{background:#ecf2e5}.chat-room{display:flex;flex-direction:column;min-width:0}.chat-stream{height:420px;overflow:auto;padding:24px;display:flex;flex-direction:column;gap:18px;background:#f9fbf6}.message{align-self:flex-start;max-width:80%;overflow-wrap:anywhere}.message>small{font-size:10px;color:#8b9a82;display:block;margin-bottom:6px}.message>div{background:white;border:1px solid #e4eadd;padding:13px 17px;border-radius:0 13px 13px 13px}.message.mine{align-self:flex-end}.message.mine>div{background:#e5eedb;border-color:#e5eedb;border-radius:13px 0 13px 13px}.message.mine>small{text-align:right}.chat-composer{display:flex;gap:14px;padding:20px;align-items:flex-end}.chat-composer textarea{resize:vertical;min-height:68px;max-height:180px}.market-hero{padding:35px 40px;display:flex;justify-content:space-between;background:#e9efdf;border-radius:18px;margin-bottom:32px;overflow:hidden;gap:20px}.market-hero h2{font-size:36px;font-weight:600;line-height:1.2;margin:15px 0}.market-hero p{color:#6f8064;line-height:1.8;margin-bottom:24px}.market-art{display:flex;align-items:center;position:relative;min-width:260px}.market-art>span{background:#fafaf1;border:1px solid #cfdbbe;border-radius:18px;padding:35px 22px;font-size:25px;line-height:1.1;transform:rotate(-9deg);color:#7d9666;box-shadow:0 12px 20px #72865d15}.market-art>span:last-child{transform:rotate(10deg);background:#b8cf9f;color:#40613d}.market-art>b{position:absolute;top:12px;right:65px;font-size:65px;color:#688755;z-index:1}.request-card{padding:25px;display:flex;flex-direction:column;align-items:flex-start;gap:18px}.request-card>p{color:#75856c;line-height:1.7}.request-card>small{color:#87977d}.request-card form{width:100%}.request-meta{display:flex;flex-wrap:wrap;gap:10px;font-size:12px}.request-meta span{padding:7px 10px;background:#f2f5ed;border-radius:6px}.pagination{display:flex;justify-content:center;gap:20px;align-items:center;margin:25px 0}.live-app table{width:100%;border-collapse:collapse;font-size:13px}.live-app th{background:#f9fbf6;color:#91a085;text-align:left;font-weight:500;font-size:11px;padding:17px 24px}.live-app td{border-bottom:1px solid #edf1e7;padding:19px 24px}.table-scroll{overflow-x:auto}.auth-layout{display:grid;grid-template-columns:1.05fr 1fr;min-height:100vh}.auth-story{padding:45px 9%;background:#e7eddc;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;min-height:100vh}.auth-story .brand{margin-bottom:40px}.auth-story h1{font-size:clamp(36px,3.6vw,56px);font-weight:560;letter-spacing:-2px;line-height:1.1;margin:18px 0 25px}.auth-story p{line-height:1.8;color:#6c805e;font-size:15px}.auth-story>small{font-size:11px;color:#90a280;margin-top:35px}.auth-art{display:flex;position:relative;align-items:center;margin:45px 0 10px;height:150px}.auth-art span:first-child{font-size:58px;border:1px solid #c9d5b9;background:#f8f9ef;padding:22px 36px;border-radius:20px;transform:rotate(-10deg);color:#728f5c}.auth-art span:nth-child(2){font-size:110px;color:#a4bd85;position:absolute;left:110px;top:-35px}.auth-art span:last-child{font-size:25px;line-height:1.1;background:#afc795;color:#48683a;padding:25px 35px;border-radius:14px;transform:rotate(12deg);z-index:1;margin-left:32px}.auth-panel{max-width:540px;width:100%;margin:auto;padding:50px 45px}.auth-panel h1{font-size:32px;margin:12px 0 16px}.auth-subtitle{color:#85927c;margin:15px 0 26px;line-height:1.8}.auth-links{display:flex;justify-content:space-between;font-size:12px;color:#59704b;margin:22px 0}.demo-logins{border-top:1px solid #dfe6d6;margin-top:30px;padding-top:25px}.demo-logins p{color:#7f8f75;font-size:12px;margin:9px 0 15px}.demo-logins>div{display:flex;gap:8px;flex-wrap:wrap}.demo-logins .btn{min-height:36px;font-size:11px;padding:8px 12px}.checkline{display:flex;gap:10px;align-items:flex-start;line-height:1.7;font-size:12px;color:#75856a;margin:20px 0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.live-app :focus-visible{outline:3px solid #a3bc88;outline-offset:3px}
@media(min-width:1450px){.live-app .main-content{padding:38px 48px}.live-app .hero{min-height:285px}.live-app .hero h2{font-size:42px}}
@media(max-width:1200px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.live-app .main-content{padding:25px}.dashboard-columns{grid-template-columns:minmax(0,1.5fr) minmax(250px,1fr)}.chat-layout{grid-template-columns:230px minmax(0,1fr)}.market-art{min-width:210px}.market-art>span{font-size:22px;padding:25px 18px}.week-grid{grid-template-columns:repeat(7,minmax(115px,1fr));overflow:auto}.day-column{min-height:400px}.form-layout{grid-template-columns:minmax(0,1fr) 250px}.lesson-row{padding:18px 15px;gap:9px}.lesson-row>.icon{display:none}}
@media(max-width:1000px){.live-app .sidebar{height:auto;top:auto;overflow:visible}.live-app .role-label,.live-app .sidebar-bottom{display:none}.live-app .main-content{padding:24px}.live-app .topbar{height:60px}.live-app .main-nav{overflow-x:auto}.dashboard-columns{grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr)}.live-app .hero-art{transform:scale(.85)}.auth-story{padding:40px 8%}}
@media(max-width:760px){.live-app .main-content{padding:20px 16px}.live-app h1{font-size:26px}.live-app .page-heading{gap:18px;align-items:flex-start;flex-direction:column}.live-app .page-heading.small-heading{flex-direction:row}.live-app .topbar{padding:15px 18px}.live-app .sidebar{padding:18px 16px}.live-app .brand{margin-bottom:15px}.live-app .hero{padding:25px 22px;min-height:240px}.live-app .hero h2{font-size:30px}.live-app .hero-art{opacity:.3;right:-45px;position:absolute;pointer-events:none}.live-app .hero-copy{position:relative;z-index:1}.live-app .hero p{max-width:230px}.dashboard-columns,.form-layout{grid-template-columns:1fr}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.card-grid .panel{margin-bottom:0}.section-pad,.form-panel,.form-aside{padding:23px}.person-card{padding:20px;min-height:220px}.person-card .badge{position:static;font-size:10px}.person-card h2{font-size:15px}.live-app .stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.live-app .stat{padding:18px}.lesson-row{flex-wrap:wrap}.lesson-row .badge{font-size:9px}.assignment-row{padding:18px;gap:12px;flex-wrap:wrap}.assignment-row>div{min-width:150px}.assignment-row>.muted{margin-left:54px}.chat-layout{grid-template-columns:1fr;min-height:500px}.chat-list{display:flex;overflow-x:auto;border-right:0;border-bottom:1px solid #e2e7dc}.chat-list>.panel-heading{display:none}.chat-person{min-width:210px;flex-shrink:0;padding:14px}.chat-composer{padding:14px;flex-direction:column;align-items:stretch}.chat-stream{height:350px}.message{max-width:90%}.market-hero{padding:25px}.market-hero h2{font-size:30px}.market-art{display:none}.request-card{padding:20px}.auth-layout{grid-template-columns:1fr}.auth-story{min-height:auto;padding:25px}.auth-story>div,.auth-story>small{display:none}.auth-story .brand{margin-bottom:0}.auth-panel{padding:35px 25px;max-width:500px}.auth-panel h1{font-size:29px}.form-aside{display:none}.demo-strip{align-items:flex-start;font-size:10px}.week-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;min-height:380px}.day-column{min-width:170px;scroll-snap-align:start}.day-empty{margin-top:60px}.app-footer{font-size:10px}.live-app .filter-bar h2{font-size:15px}.filter-bar .search-field{flex:1;min-width:180px}.filter-bar>label{width:100%}.skill-title>strong{font-size:28px}.balance-number{font-size:36px}.live-app .panel-heading{padding:20px}.lesson-content{font-size:14px}.live-app table{min-width:600px}.checkline{align-items:flex-start}}
@media(max-width:480px){.card-grid{grid-template-columns:1fr}.live-app .stat-number{font-size:30px}.live-app .stat-top{font-size:11px}.live-app .breadcrumbs>span:first-child{display:none}.live-app .topbar .header-date{display:none}.live-app .hero-art{right:-90px}.live-app .hero h2{font-size:29px}.live-app .page-heading>.btn{width:100%}.app-footer span{display:none}.feedback-row{padding:20px 16px;gap:12px}.feedback-date{display:none}.lesson-info{min-width:140px}.person-card{min-height:200px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.live-app .panel{padding:0}.live-app .panel.section-pad,.live-app .panel.skill-card,.live-app .panel.request-card,.live-app .panel.person-card{padding:25px}.live-app .panel.form-panel,.live-app .panel.form-aside{padding:30px}.live-app .panel.empty{padding:50px 28px}.live-app .panel>p{font-size:13px}.live-app .message{padding:0;border:0;background:transparent;min-width:0;border-radius:0}.live-app .chat-stream{flex:none}.live-app .hero p{font-size:13px}.live-app .main-nav>a{font-size:12px}.live-app .sidebar{min-height:0}.live-app .request-card form{margin-top:auto}.live-app .lesson-row .lesson-info strong{overflow-wrap:anywhere}.live-app .lesson-card .section-pad{padding:24px}
@media(max-width:760px){.live-app .sidebar{display:block}.live-app .panel.section-pad,.live-app .panel.skill-card,.live-app .panel.request-card,.live-app .panel.person-card,.live-app .panel.form-panel{padding:22px}.live-app .main-nav>a{font-size:11px}.live-app .hero p{font-size:12px}}

