:root{--ms-primary:#285694;--ms-primary-2:#47bcc2;--ms-danger:#d93025;--ms-warning:#f1c40f;--ms-success:#2ecc71;--ms-orange:#e67e22;--ms-radius:16px;--ms-radius-lg:24px;--ms-shadow:0 16px 45px rgba(28,41,66,.14);--ms-border:rgba(203,213,225,.9)}
html:not(.dark){--color-primary:#285694;--color-primary-light:rgba(40,86,148,.12);--color-accent:#47bcc2;--color-bg:#e3e8ee;--color-bg-card:#ffffff;--color-bg-input:#ffffff;--color-bg-nav:#2d384e;--color-text:#1a202c;--color-text-secondary:#5a657d;--color-border:#cbd5e1;--color-bg-bars-light:#ffffff}
html.dark{--color-primary:#64b5f6;--color-primary-light:rgba(100,181,246,.14);--color-accent:#47bcc2;--color-bg:#2d384e;--color-bg-card:#2d384e;--color-bg-input:#1e293b;--color-bg-nav:#1e293b;--color-text:#ffffff;--color-text-secondary:#d1d5db;--color-border:#40587f;--color-bg-bars-light:#1e293b;--ms-border:rgba(64,88,127,.9);--ms-shadow:0 18px 50px rgba(0,0,0,.24)}
body{background:radial-gradient(circle at 15% 0,rgba(71,188,194,.17),transparent 30%),radial-gradient(circle at 88% 4%,rgba(40,86,148,.22),transparent 28%),var(--color-bg)!important;color:var(--color-text)}
a{color:inherit;text-decoration:none}.ms-shell{min-height:100vh}.app-sidebar{background:linear-gradient(180deg,var(--color-bg-nav),#24314a);box-shadow:0 22px 80px rgba(0,0,0,.22)}html.dark .app-sidebar{background:linear-gradient(180deg,#1e293b,#111827)}.sidebar-header{gap:12px;font-size:1.1rem}.ms-logo{width:42px;height:42px;display:inline-grid;place-items:center;border-radius:15px;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:#fff;font-weight:900;letter-spacing:-.05em;box-shadow:0 14px 32px rgba(40,86,148,.32)}.sidebar-link{font-weight:750}.sidebar-link i,.mobile-nav-link i,.icon-button i,.btn i,button i{width:1.25em;height:1.25em}.sidebar-link.active{background:linear-gradient(135deg,var(--color-primary),var(--color-accent));box-shadow:0 12px 28px rgba(40,86,148,.25)}
.app-header{height:auto;min-height:60px;background:rgba(255,255,255,.82);backdrop-filter:blur(18px);box-shadow:0 4px 18px rgba(15,23,42,.08);border-bottom:1px solid var(--color-border)}html.dark .app-header{background:rgba(30,41,59,.86);box-shadow:none}.header-title{font-size:1.25rem;font-weight:900;letter-spacing:-.04em}.ms-domain{font-size:.86rem;color:var(--color-text-secondary);font-weight:650;margin-top:1px}.main-content-area{max-width:1280px;padding-top:18px}.icon-button{background:var(--color-primary-light);color:var(--color-primary)}
.ms-hero{background:linear-gradient(135deg,#285694,#2d384e 62%,#47bcc2);color:#fff;border-radius:28px;padding:22px;margin-bottom:18px;box-shadow:var(--ms-shadow);position:relative;overflow:hidden}.ms-hero:before{content:"";position:absolute;inset:auto -80px -110px auto;width:260px;height:260px;background:rgba(255,255,255,.13);border-radius:50%}.ms-hero-top{display:flex;align-items:center;justify-content:space-between;gap:18px;position:relative}.ms-kicker{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:7px 12px;font-weight:900;font-size:.82rem;text-transform:uppercase;letter-spacing:.03em}.ms-hero h1{font-size:clamp(1.7rem,4vw,2.9rem);line-height:1.02;margin:12px 0 8px;letter-spacing:-.06em}.ms-hero-subtext{color:rgba(255,255,255,.86);font-weight:650;line-height:1.4}.ms-hero-icon{width:84px;height:84px;border-radius:26px;display:grid;place-items:center;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.18);font-size:2.2rem}.ms-hero-icon i{width:1.4em;height:1.4em}
.uebungen-alert{display:flex;align-items:flex-start;gap:10px;padding:14px 16px;border-radius:16px;margin-bottom:16px;font-weight:800;border:1px solid transparent}.uebungen-alert.success{background:rgba(46,204,113,.13);border-color:rgba(46,204,113,.28);color:#18a85a}.uebungen-alert.error{background:rgba(217,48,37,.12);border-color:rgba(217,48,37,.26);color:#ff6b61}.uebungen-alert i{flex:0 0 auto;margin-top:1px}
.panel,.content-card,.uebungen-filter-card{background:linear-gradient(180deg,var(--color-bg-card),rgba(255,255,255,.78));border:1px solid var(--color-border);border-radius:24px;padding:18px;margin-bottom:18px;box-shadow:var(--ms-shadow);color:var(--color-text);overflow:hidden}html.dark .panel,html.dark .content-card,html.dark .uebungen-filter-card{background:linear-gradient(145deg,#2d384e,#40587f);border-color:var(--color-border)}.panel h2,.content-card h2{margin:0 0 16px;font-size:1.25rem;font-weight:900;letter-spacing:-.035em}.grid{display:grid;gap:15px;grid-template-columns:1fr}.grid.two,.grid.three,.grid.four{grid-template-columns:1fr}.uebungen-stats-grid,.stat-area-chart-grid{display:grid;grid-template-columns:1fr;gap:15px;margin-bottom:18px}.uebungen-stat-card{background:linear-gradient(145deg,var(--color-bg-card),rgba(255,255,255,.76));border:1px solid var(--color-border);border-left:5px solid var(--color-primary);border-radius:18px;padding:18px;box-shadow:var(--ms-shadow);color:var(--color-text)}html.dark .uebungen-stat-card{background:linear-gradient(145deg,#2d384e,#40587f)}.uebungen-stat-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.uebungen-stat-label{color:var(--color-text-secondary);font-weight:750}.uebungen-stat-value{font-size:2.05rem;font-weight:950;line-height:1;margin:6px 0;letter-spacing:-.06em}.uebungen-stat-sub{font-size:.9rem;color:var(--color-text-secondary);font-weight:650}.uebungen-stat-icon{width:54px;height:54px;border-radius:17px;background:var(--color-primary-light);display:grid;place-items:center;color:var(--color-primary);font-size:1.45rem}.uebungen-stat-blue{border-left-color:#3498db}.uebungen-stat-green{border-left-color:#2ecc71}.uebungen-stat-orange{border-left-color:#f39c12}.uebungen-stat-red{border-left-color:#e74c3c}
.actions,.action-buttons-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:16px}.actions form{display:inline-flex;margin:0}.btn,button{border:0;border-radius:13px;background:linear-gradient(135deg,var(--color-primary),#285694);color:#fff!important;padding:12px 15px;min-height:44px;font-weight:850;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.1;text-decoration:none;box-shadow:0 10px 24px rgba(40,86,148,.18);font-family:inherit;font-size:.95rem}.btn:hover,button:hover{filter:brightness(1.04);transform:translateY(-1px)}.btn.secondary,.btn.btn-secondary,button.secondary,button.btn-secondary{background:var(--color-primary-light)!important;color:var(--color-primary)!important;box-shadow:none}.btn.danger,.btn.btn-danger,button.danger,button.btn-danger{background:var(--ms-danger)!important;color:#fff!important}.btn.success,button.success{background:var(--ms-success)!important;color:#fff!important}
.field{display:grid;gap:7px;margin-bottom:14px}.field label,label{font-weight:850;color:var(--color-text)}.field input,.field select,.field textarea,input,select,textarea,.form-control,.form-select{width:100%;border:1px solid var(--color-border);background:var(--color-bg-input);color:var(--color-text);border-radius:13px;padding:12px 13px;font-size:16px;min-height:46px;font-family:inherit}.field textarea,textarea{min-height:116px;resize:vertical}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-light)}input[type="checkbox"]{width:20px;height:20px;min-height:20px;margin-right:8px;vertical-align:-4px;accent-color:var(--color-primary)}
.table-wrap{overflow:auto;border:1px solid var(--color-border);border-radius:18px;background:rgba(255,255,255,.36)}html.dark .table-wrap{background:rgba(15,23,42,.16)}table{width:100%;border-collapse:collapse;min-width:760px}th,td{text-align:left;padding:13px;border-bottom:1px solid var(--color-border);vertical-align:middle}th{font-size:.82rem;text-transform:uppercase;letter-spacing:.025em;color:var(--color-text-secondary);font-weight:900}td{font-weight:650}tr:last-child td{border-bottom:0}.pill,.badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 10px;background:var(--color-primary-light);color:var(--color-primary);font-weight:900;font-size:.82rem}.pill.ok,.badge.ok{background:rgba(46,204,113,.13);color:#22b96a}.pill.bad,.badge.bad{background:rgba(217,48,37,.13);color:#e4483d}.storage-bar{height:14px;border-radius:999px;background:rgba(90,101,125,.22);overflow:hidden;margin:10px 0 8px}.storage-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:999px}
.uebungen-empty{text-align:center;padding:36px 18px;border-radius:20px;background:rgba(255,255,255,.34);border:1px dashed var(--color-border);color:var(--color-text)}html.dark .uebungen-empty{background:rgba(15,23,42,.16)}.uebungen-empty-icon{width:62px;height:62px;border-radius:20px;display:grid;place-items:center;margin:0 auto 12px;background:var(--color-primary-light);color:var(--color-primary);font-size:1.8rem}.uebungen-empty h3{margin:0 0 6px;font-size:1.2rem}.uebungen-empty p{margin:0;color:var(--color-text-secondary);font-weight:650}.pager{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:16px}.pager a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:13px;border:1px solid var(--color-border);margin-left:6px;font-weight:900}.pager a.active{background:var(--color-primary);color:#fff}.pager select{width:auto;min-width:74px}
.app-mobile-nav{height:78px;border-radius:24px 24px 0 0;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border-top:1px solid var(--color-border);box-shadow:0 -14px 32px rgba(15,23,42,.12)}html.dark .app-mobile-nav{background:rgba(30,41,59,.94)}.mobile-nav-link{font-size:.72rem;font-weight:900;color:var(--color-text-secondary);border-radius:14px}.mobile-icon-wrapper{height:30px;margin-bottom:2px}.mobile-nav-link.active{background:var(--color-primary-light);color:var(--color-primary)!important}.mobile-nav-link.active i,.mobile-nav-link.active span{color:var(--color-primary)!important}.wb-modal-overlay{position:fixed;inset:0;background:rgba(2,6,23,.7);z-index:10000;display:none;align-items:center;justify-content:center;padding:18px;backdrop-filter:blur(5px)}.wb-modal-overlay.open{display:flex}.wb-modal-card{width:min(460px,100%);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:24px;box-shadow:0 24px 70px rgba(0,0,0,.35)}.ms-modal-inner{padding:22px}.ms-modal-inner h3{margin:0 0 8px;font-size:1.35rem}.ms-modal-inner p{margin:0 0 18px;color:var(--color-text-secondary);font-weight:650;line-height:1.45}.login-page{min-height:100vh;display:grid;place-items:center;padding:18px;background:radial-gradient(circle at 20% 0,rgba(71,188,194,.25),transparent 35%),radial-gradient(circle at 90% 12%,rgba(40,86,148,.32),transparent 35%),var(--color-bg)}.login-card{width:min(440px,100%);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:26px;padding:25px;box-shadow:0 25px 80px rgba(0,0,0,.28)}.login-card h1{margin:0 0 8px;font-size:2rem;letter-spacing:-.06em}.login-card p{color:var(--color-text-secondary);font-weight:650;margin-bottom:18px}
@media(max-width:1024px){.app-header{padding:10px 14px}.main-content-area{padding:14px 12px 98px}.ms-hero{border-radius:24px;padding:18px}.ms-hero-side{display:none}.actions .btn,.actions button{flex:1 1 auto}.panel,.content-card,.uebungen-filter-card{border-radius:20px;padding:16px}.table-wrap{border-radius:16px}table{min-width:680px}th,td{padding:12px 10px}.header-title{font-size:1.18rem}}
@media(min-width:760px){.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.four,.uebungen-stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.stat-area-chart-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1025px){.main-content-area{padding:24px 28px 48px}.app-mobile-nav{display:none!important}.app-sidebar{display:flex}.app-main{margin-left:var(--sidebar-width)}}
@media print{body,html{background:#fff!important;color:#000!important}.app-sidebar,.app-mobile-nav,.app-header,.ms-hero,.actions,.wb-modal-overlay{display:none!important}.app-main,.main-content-area{margin:0!important;padding:0!important}.panel,.content-card,.table-wrap,.uebungen-stat-card{background:#fff!important;color:#000!important;box-shadow:none!important;border:1px solid #ccc!important}}
:root{--ms-mobile-fix-version:v20260614_1132}
@media(max-width:700px){
html,body,.ms-shell,.app-main,.main-content-area{max-width:100%;overflow-x:hidden}
.main-content-area{padding-left:12px;padding-right:12px}
.ms-hero{margin-left:0;margin-right:0}
.actions,.action-buttons-row{display:grid;grid-template-columns:1fr;gap:10px;width:100%}
.actions .btn,.actions button,.action-buttons-row .btn,.action-buttons-row button{width:100%;min-width:0}
.panel,.content-card,.uebungen-filter-card{width:100%;max-width:100%;padding:16px;overflow:visible}
.table-wrap{overflow:visible;border:0;background:transparent;border-radius:0}
.table-wrap table,table{width:100%;min-width:0;border-collapse:separate;border-spacing:0 12px}
table thead{display:none}
table tbody{display:block;width:100%}
table tr{display:block;width:100%;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:18px;padding:12px;box-shadow:0 10px 24px rgba(28,41,66,.09);overflow:hidden}
html.dark table tr{background:linear-gradient(145deg,#2d384e,#40587f)}
table td{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;width:100%;border:0!important;padding:9px 0;text-align:right;font-weight:800;word-break:break-word;overflow-wrap:anywhere}
table td:before{content:attr(data-label);text-align:left;color:var(--color-text-secondary);font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;font-weight:950;flex:0 0 42%;max-width:42%;word-break:normal;overflow-wrap:break-word}
table td:empty{display:none}
table td.actions-cell,table td:last-child{display:flex;flex-wrap:wrap;justify-content:flex-start;text-align:left;padding-top:12px;margin-top:4px;border-top:1px solid var(--color-border)!important}
table td.actions-cell:before,table td:last-child:before{content:attr(data-label);flex:0 0 100%;max-width:100%;margin-bottom:6px}
table td.actions-cell .btn,table td.actions-cell button,table td:last-child .btn,table td:last-child button{flex:1 1 100%;width:100%;min-width:0}
.pager{display:grid;grid-template-columns:1fr auto;align-items:center;width:100%;gap:10px}.pager select{width:86px}.pager div:last-child{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.pager a{margin-left:0}
.mobile-nav-link{min-width:0}.mobile-nav-link span{font-size:.68rem;line-height:1.05}.app-mobile-nav{left:0;right:0;width:100%;max-width:100%}
}
:root{--ms-refine-version:v20260614_1157}
.ms-page-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}.ms-page-toolbar .btn{min-height:48px}.ms-primary-action{background:linear-gradient(135deg,#285694,#47bcc2)!important;box-shadow:0 16px 34px rgba(40,86,148,.22)}.ms-list-panel{padding:20px}.ms-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.ms-panel-head h2{margin:0 0 4px}.ms-panel-head p{margin:0;color:var(--color-text-secondary);font-weight:700;line-height:1.35}.ms-count-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--color-primary-light);color:var(--color-primary);font-size:.82rem;font-weight:950;padding:8px 12px;white-space:nowrap}.ms-card-list{display:grid;gap:14px}.ms-row-card{position:relative;border:1px solid var(--color-border);border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(255,255,255,.7));padding:16px;box-shadow:0 12px 28px rgba(28,41,66,.1);display:grid;gap:14px;overflow:hidden}.ms-row-card:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(180deg,var(--color-primary),var(--color-accent));opacity:.95}.ms-row-card:after{content:"";position:absolute;right:-70px;top:-90px;width:190px;height:190px;border-radius:50%;background:var(--color-primary-light);pointer-events:none}.ms-row-card>*{position:relative;z-index:1}html.dark .ms-row-card{background:linear-gradient(145deg,#2d384e,#40587f);box-shadow:0 16px 34px rgba(0,0,0,.18)}.ms-row-main{display:flex;align-items:center;gap:14px;min-width:0}.ms-tv-number,.ms-content-icon{width:58px;height:58px;flex:0 0 58px;border-radius:19px;display:grid;place-items:center;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:#fff;font-weight:950;box-shadow:0 14px 28px rgba(40,86,148,.24)}.ms-content-icon{font-size:1.45rem}.ms-content-icon i{width:1.4em;height:1.4em}.ms-row-title-wrap{min-width:0;flex:1}.ms-row-title-wrap h3{margin:0 0 8px;font-size:1.18rem;font-weight:950;letter-spacing:-.04em;color:var(--color-text);line-height:1.15}.ms-row-subline{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:var(--color-text-secondary);font-size:.9rem;font-weight:800}.pill.wait{background:rgba(241,196,15,.16);color:#b7791f}.ms-copy-box{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--color-border);background:rgba(40,86,148,.06);border-radius:17px;padding:12px}.ms-mini-label{display:block;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);font-weight:950;font-size:.72rem;margin-bottom:4px}.ms-link-preview{font-weight:950;color:var(--color-text);font-size:1.02rem}.ms-copy-btn{white-space:nowrap}.ms-content-preview{border:1px solid var(--color-border);background:rgba(255,255,255,.36);border-radius:17px;padding:13px}html.dark .ms-content-preview,html.dark .ms-copy-box{background:rgba(15,23,42,.16)}.ms-content-preview p{margin:0;color:var(--color-text);font-weight:750;line-height:1.45}.ms-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ms-meta-grid>div{border:1px solid var(--color-border);border-radius:16px;background:rgba(255,255,255,.26);padding:12px;min-width:0}html.dark .ms-meta-grid>div{background:rgba(15,23,42,.13)}.ms-meta-grid strong{display:block;color:var(--color-text);font-size:.95rem;line-height:1.25;overflow-wrap:anywhere}.ms-row-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.ms-row-actions form{display:inline-flex;margin:0}.ms-row-actions .btn,.ms-row-actions button{min-height:42px}.ms-toast{position:fixed;left:50%;bottom:94px;transform:translateX(-50%) translateY(20px);z-index:12000;background:var(--color-bg-nav);color:#fff;border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:11px 15px;font-weight:950;box-shadow:0 16px 42px rgba(0,0,0,.24);opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease}.ms-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
@media(max-width:700px){.ms-page-toolbar{display:grid;grid-template-columns:1fr;gap:10px}.ms-module-toolbar{grid-template-columns:1fr 1fr}.ms-module-toolbar .ms-primary-action{grid-column:1/-1}.ms-page-toolbar .btn{width:100%}.ms-list-panel{padding:14px;border-radius:22px}.ms-panel-head{display:grid;gap:10px;margin-bottom:14px}.ms-count-badge{justify-content:flex-start;width:max-content}.ms-row-card{border-radius:20px;padding:14px;gap:13px}.ms-row-card:before{width:4px}.ms-row-card:after{width:150px;height:150px;right:-76px;top:-78px}.ms-row-main{align-items:flex-start}.ms-tv-number,.ms-content-icon{width:50px;height:50px;flex-basis:50px;border-radius:17px}.ms-row-title-wrap h3{font-size:1.08rem}.ms-row-subline{font-size:.84rem;gap:6px}.ms-copy-box{display:grid;grid-template-columns:1fr;gap:10px}.ms-copy-btn{width:100%}.ms-meta-grid{grid-template-columns:1fr}.ms-row-actions{display:grid;grid-template-columns:1fr;gap:9px}.ms-row-actions .btn,.ms-row-actions button,.ms-row-actions form{width:100%}.ms-toast{bottom:92px;max-width:calc(100vw - 24px);white-space:nowrap}.ms-content-preview{padding:12px}.ms-content-preview p{font-size:.94rem}}
@media(min-width:920px){.ms-monitor-card{grid-template-columns:1.25fr 1fr}.ms-monitor-card .ms-row-main{grid-column:1/2}.ms-monitor-card .ms-copy-box{grid-column:2/3}.ms-monitor-card .ms-row-actions{grid-column:1/-1}.ms-content-card{grid-template-columns:1.15fr .85fr}.ms-content-card .ms-row-main{grid-column:1/2}.ms-content-card .ms-content-preview{grid-column:2/3;grid-row:1/3}.ms-content-card .ms-meta-grid{grid-column:1/2}.ms-content-card .ms-row-actions{grid-column:1/-1}}
.ms-monitor-quick-grid{display:grid;grid-template-columns:1fr;gap:12px}.ms-monitor-quick-card{border:1px solid var(--color-border);border-radius:18px;background:rgba(40,86,148,.06);padding:13px;display:grid;gap:10px;align-content:start;min-width:0}.ms-monitor-quick-card strong{display:block;color:var(--color-text);font-size:1.05rem;line-height:1.2;overflow-wrap:anywhere}.ms-monitor-quick-card .btn{width:100%;min-height:44px}.ms-monitor-content-card{background:linear-gradient(135deg,rgba(40,86,148,.12),rgba(71,188,194,.10))}html.dark .ms-monitor-quick-card{background:rgba(15,23,42,.18)}html.dark .ms-monitor-content-card{background:linear-gradient(135deg,rgba(100,181,246,.16),rgba(71,188,194,.10))}.ms-edit-panel{padding:18px}.ms-edit-form{display:grid;gap:16px}.ms-edit-form .field label{display:flex;align-items:center;gap:8px;font-weight:900;margin-bottom:7px;color:var(--color-text)}.ms-checkline{display:flex;align-items:center;gap:10px;font-weight:900;color:var(--color-text);border:1px solid var(--color-border);border-radius:16px;padding:13px;background:rgba(40,86,148,.06)}.ms-checkline input{width:22px;height:22px;accent-color:var(--color-primary)}.ms-form-actions{display:flex;flex-wrap:wrap;gap:10px}.ms-form-actions button,.ms-form-actions .btn{min-height:46px}@media(min-width:920px){.ms-monitor-card{grid-template-columns:1fr}.ms-monitor-quick-grid{grid-template-columns:1fr 1fr}.ms-monitor-card .ms-row-main,.ms-monitor-card .ms-monitor-quick-grid,.ms-monitor-card .ms-row-actions{grid-column:1/-1}}@media(max-width:700px){.ms-monitor-quick-grid{grid-template-columns:1fr}.ms-monitor-quick-card{border-radius:17px;padding:12px}.ms-edit-panel{padding:14px}.ms-form-actions{display:grid;grid-template-columns:1fr}.ms-form-actions button,.ms-form-actions .btn{width:100%}}
.ms-brand-header{gap:13px}.ms-logo-img{width:46px;height:46px;border-radius:16px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16);display:grid;place-items:center;overflow:hidden;box-shadow:0 14px 32px rgba(40,86,148,.22);flex:0 0 46px}.ms-logo-img img{width:88%;height:88%;object-fit:contain;display:block}.ms-monitor-card{border-left:0!important}.ms-monitor-card:before{background:linear-gradient(180deg,#47bcc2,#285694)!important}.ms-monitor-card .ms-row-main{align-items:flex-start}.ms-monitor-card .ms-tv-number{background:linear-gradient(135deg,#285694,#47bcc2);font-size:.95rem;letter-spacing:-.02em}.ms-monitor-card .ms-row-title-wrap h3{font-size:1.28rem}.ms-monitor-quick-grid{align-items:stretch}.ms-monitor-quick-card{position:relative;overflow:hidden}.ms-monitor-quick-card:after{content:"";position:absolute;right:-38px;top:-50px;width:116px;height:116px;border-radius:50%;background:rgba(71,188,194,.10);pointer-events:none}.ms-monitor-quick-card>*{position:relative;z-index:1}.ms-monitor-quick-card strong{font-size:1.15rem}.ms-row-actions .btn,.ms-row-actions button{border-radius:14px}.ms-copy-btn.copied{background:linear-gradient(135deg,#16a34a,#22c55e)!important;color:#fff!important}.ms-tv-state-line{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px}.ms-tv-state-line span{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:rgba(40,86,148,.08);border:1px solid var(--color-border);padding:7px 10px;font-weight:850;color:var(--color-text-secondary);font-size:.84rem}.ms-tv-state-line i{width:1.1em;height:1.1em}.ms-monitor-content-card .btn{font-weight:950}@media(max-width:700px){.sidebar-header .ms-logo-img{width:40px;height:40px;flex-basis:40px}.ms-monitor-card .ms-row-main{display:grid;grid-template-columns:50px 1fr;gap:12px}.ms-monitor-card .ms-row-title-wrap h3{font-size:1.16rem}.ms-tv-state-line{display:grid;grid-template-columns:1fr;gap:7px}.ms-tv-state-line span{width:100%;justify-content:flex-start}.ms-monitor-quick-card strong{font-size:1.05rem}}

.ms-upload-stats {
    margin-bottom: 18px;
}
.ms-upload-panel .storage-bar {
    margin: 0 0 18px;
}
.ms-upload-form input[type="file"] {
    min-height: 48px;
}
.ms-library-filter {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    margin-bottom: 20px;
}
.ms-library-filter button,
.ms-library-filter .btn {
    width: 100%;
}
.ms-upload-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px;
}
.ms-upload-card {
    display: grid;
    grid-template-columns: 96px 1fr;
    gap: 14px;
    align-items: stretch;
    border: 1px solid var(--color-border);
    background: var(--color-bg-card);
    border-radius: 18px;
    padding: 12px;
    box-shadow: var(--shadow-sm);
    overflow: hidden;
}
.ms-upload-thumb {
    width: 96px;
    min-height: 96px;
    border-radius: 16px;
    background: linear-gradient(135deg, rgba(40,86,148,.16), rgba(71,188,194,.18));
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    color: var(--color-primary);
}
.ms-upload-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.ms-file-icon {
    width: 54px;
    height: 54px;
    border-radius: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(40,86,148,.12);
    color: var(--color-primary);
    flex: 0 0 auto;
}
.ms-file-icon i {
    font-size: 1.7rem;
}
.ms-upload-body {
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 7px;
}
.ms-upload-body h3 {
    margin: 0;
    font-size: 1rem;
    line-height: 1.25;
    overflow-wrap: anywhere;
}
.ms-upload-meta,
.ms-upload-category {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    color: var(--color-text-secondary);
    font-size: .86rem;
}
.ms-upload-meta span,
.ms-upload-category {
    padding: 4px 9px;
    border-radius: 999px;
    background: rgba(40,86,148,.09);
    width: fit-content;
}
.ms-upload-actions {
    grid-column: 1 / -1;
    display: flex;
    gap: 10px;
}
.ms-upload-actions .btn {
    width: 100%;
}
.ms-asset-field {
    min-width: 0;
}
.ms-selected-asset {
    min-height: 82px;
    border: 1px solid var(--color-border);
    background: var(--color-bg-input);
    border-radius: 16px;
    padding: 10px;
    display: grid;
    grid-template-columns: 58px 1fr;
    grid-template-rows: auto auto;
    gap: 5px 12px;
    align-items: center;
}
.ms-selected-asset img {
    grid-row: 1 / span 2;
    width: 58px;
    height: 58px;
    object-fit: cover;
    border-radius: 14px;
}
.ms-selected-asset .ms-file-icon {
    grid-row: 1 / span 2;
    width: 58px;
    height: 58px;
}
.ms-selected-asset strong,
.ms-selected-asset small {
    min-width: 0;
    overflow-wrap: anywhere;
}
.ms-selected-asset small {
    color: var(--color-text-secondary);
}
.ms-asset-actions {
    margin-top: 10px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
}
.ms-asset-actions .btn,
.ms-asset-actions button {
    width: 100%;
}
.ms-asset-modal {
    padding: 12px;
    z-index: 20000;
}
.ms-asset-modal-card {
    width: min(980px, 96vw);
    max-height: 92vh;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}
.ms-asset-modal-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 18px;
    border-bottom: 1px solid var(--color-border);
}
.ms-asset-modal-head h3 {
    margin: 0;
    font-size: 1.25rem;
}
.ms-asset-modal-head p {
    margin: 4px 0 0;
    color: var(--color-text-secondary);
}
.ms-asset-filter {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 14px 18px;
    border-bottom: 1px solid var(--color-border);
}
.ms-asset-filter input,
.ms-asset-filter select {
    width: 100%;
    min-height: 48px;
}
.ms-asset-grid {
    padding: 16px 18px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    overflow: auto;
    flex: 1;
}
.ms-asset-card {
    border: 1px solid var(--color-border);
    background: var(--color-bg-card);
    color: var(--color-text);
    border-radius: 16px;
    padding: 10px;
    min-width: 0;
    text-align: left;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.ms-asset-card:hover {
    border-color: var(--color-primary);
    transform: translateY(-1px);
}
.ms-asset-card img,
.ms-asset-card .ms-file-icon {
    width: 100%;
    height: 112px;
    border-radius: 14px;
    object-fit: cover;
    background: linear-gradient(135deg, rgba(40,86,148,.16), rgba(71,188,194,.18));
}
.ms-asset-card .ms-file-icon {
    display: flex;
}
.ms-asset-card strong {
    font-size: .95rem;
    line-height: 1.2;
    overflow-wrap: anywhere;
}
.ms-asset-card small,
.ms-asset-card em {
    color: var(--color-text-secondary);
    font-size: .78rem;
    font-style: normal;
}
.ms-asset-empty,
.ms-asset-loading {
    grid-column: 1 / -1;
    min-height: 220px;
    border: 1px dashed var(--color-border);
    border-radius: 18px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: center;
    justify-content: center;
    color: var(--color-text-secondary);
    text-align: center;
}
.ms-asset-loading span {
    width: 42px;
    height: 42px;
    border: 5px solid rgba(255,255,255,.22);
    border-top-color: var(--color-primary);
    border-radius: 999px;
    animation: msSpin .8s linear infinite;
}
.ms-asset-pager {
    padding: 14px 18px;
    border-top: 1px solid var(--color-border);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}
.ms-asset-pager .btn,
.ms-asset-pager button {
    width: auto;
}
.ms-asset-pager button:disabled {
    opacity: .45;
    pointer-events: none;
}
@keyframes msSpin {
    to { transform: rotate(360deg); }
}
@media (min-width: 700px) {
    .ms-library-filter {
        grid-template-columns: minmax(220px, 1fr) 220px auto auto;
        align-items: end;
    }
    .ms-upload-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .ms-asset-actions {
        grid-template-columns: auto auto;
    }
    .ms-asset-actions .btn,
    .ms-asset-actions button {
        width: auto;
    }
    .ms-asset-filter {
        grid-template-columns: minmax(220px, 1fr) 240px;
    }
    .ms-asset-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}
@media (min-width: 1100px) {
    .ms-upload-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .ms-asset-grid {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }
}
html.dark .ms-upload-card,
html.dark .ms-asset-card,
html.dark .ms-selected-asset {
    background: var(--color-bg-card);
}


.ms-file-picker {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 12px;
    min-height: 52px;
    border: 1px solid var(--color-border);
    background: var(--color-bg-input);
    border-radius: 16px;
    padding: 8px;
    cursor: pointer;
}
.ms-file-picker input[type="file"] {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}
.ms-file-picker span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    padding: 0 16px;
    border-radius: 13px;
    background: var(--color-primary);
    color: #fff;
    font-weight: 900;
    box-shadow: var(--shadow-sm);
    white-space: nowrap;
}
.ms-file-picker strong {
    color: var(--color-text-secondary);
    font-weight: 700;
    min-width: 0;
    overflow-wrap: anywhere;
}
.ms-upload-progress-modal,
.ms-file-preview-modal {
    z-index: 30000;
    padding: 14px;
}
.ms-upload-progress-card {
    width: min(460px, 94vw);
    padding: 28px;
    text-align: center;
}
.ms-progress-icon {
    width: 70px;
    height: 70px;
    border-radius: 24px;
    margin: 0 auto 16px;
    display: grid;
    place-items: center;
    background: linear-gradient(135deg, var(--color-primary), var(--color-accent));
    color: #fff;
    font-size: 2rem;
}
.ms-upload-progress-card h3 {
    margin: 0 0 8px;
    font-size: 1.3rem;
}
.ms-upload-progress-card p {
    margin: 0 0 18px;
    color: var(--color-text-secondary);
    font-weight: 700;
}
.ms-progress-bar {
    height: 14px;
    border-radius: 999px;
    background: rgba(40,86,148,.14);
    overflow: hidden;
}
.ms-progress-bar span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--color-primary), var(--color-accent));
    transition: width .18s ease;
}
.ms-file-preview-card {
    width: min(1100px, 96vw);
    max-height: 92vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}
.ms-file-preview-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 18px;
    border-bottom: 1px solid var(--color-border);
}
.ms-file-preview-head h3 {
    margin: 0;
    font-size: 1.15rem;
    overflow-wrap: anywhere;
}
.ms-file-preview-body {
    padding: 16px;
    overflow: auto;
    display: grid;
    place-items: center;
    min-height: 260px;
}
.ms-file-preview-body img,
.ms-file-preview-body video {
    max-width: 100%;
    max-height: 72vh;
    object-fit: contain;
    border-radius: 18px;
    box-shadow: var(--shadow-md);
}
.ms-file-preview-body iframe {
    width: 100%;
    height: 72vh;
    border: 0;
    border-radius: 18px;
    background: #fff;
}
.ms-file-preview-fallback {
    min-height: 260px;
    display: grid;
    place-items: center;
    gap: 18px;
    color: var(--color-text-secondary);
}
.ms-file-preview-fallback i {
    font-size: 4rem;
}
.ms-upload-thumb {
    border: 0;
    cursor: pointer;
    padding: 0;
}
.ms-content-preview-visual {
    min-height: 130px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.ms-content-preview-visual img {
    width: 100%;
    max-height: 220px;
    object-fit: contain;
    border-radius: 16px;
    background: rgba(0,0,0,.04);
}
.ms-content-file-preview {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}
.ms-content-file-preview strong {
    overflow-wrap: anywhere;
}
.ms-monitor-action-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px;
    margin-top: 16px;
}
.ms-monitor-action-card {
    border: 1px solid var(--color-border);
    background: var(--color-bg-card);
    border-radius: 20px;
    padding: 16px;
    display: grid;
    gap: 12px;
    box-shadow: var(--shadow-sm);
}
.ms-inline-copy-form {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
}
.ms-module-quick-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 16px;
}
.ms-module-quick-grid form {
    margin: 0;
}
.ms-module-quick-button {
    width: 100%;
    min-height: 84px;
    border-radius: 18px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: var(--color-bg-card);
    color: var(--color-text);
    border: 1px solid var(--color-border);
    box-shadow: var(--shadow-sm);
    font-weight: 900;
}
.ms-module-quick-button i {
    font-size: 1.5rem;
    color: var(--color-primary);
}
.ms-monitor-content-item .ms-meta-grid input[type="number"] {
    width: 100%;
    min-height: 48px;
}
@media (min-width: 760px) {
    .ms-monitor-action-grid {
        grid-template-columns: 1fr 1.4fr;
    }
    .ms-inline-copy-form {
        grid-template-columns: minmax(220px, 1fr) auto;
        align-items: end;
    }
    .ms-module-quick-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}
@media (min-width: 1100px) {
    .ms-module-quick-grid {
        grid-template-columns: repeat(7, minmax(0, 1fr));
    }
}
@media (max-width: 640px) {
    .ms-file-picker {
        grid-template-columns: 1fr;
    }
    .ms-file-picker span {
        width: 100%;
    }
    .ms-file-preview-body {
        padding: 10px;
    }
    .ms-content-preview-visual img {
        max-height: 180px;
    }
}

.ms-module-quick-button,
.ms-module-quick-button span,
.ms-module-quick-button strong {
    color: var(--color-text) !important;
}
.ms-module-quick-button i {
    color: var(--color-primary) !important;
}
html.dark .ms-module-quick-button,
html.dark .ms-module-quick-button span,
html.dark .ms-module-quick-button strong {
    color: #ffffff !important;
}
html.dark .ms-module-quick-button i {
    color: #64b5f6 !important;
}
.ms-panel-head-actions {
    align-items: flex-start;
    gap: 14px;
}
.ms-panel-head-actions .btn,
.ms-panel-head-actions button {
    width: 100%;
}
.ms-monitor-sort-grid {
    align-items: stretch;
}
.ms-preview-box {
    min-height: 120px;
}
.ms-content-mini-image {
    width: 100%;
    max-height: 170px;
    object-fit: contain;
    border-radius: 14px;
    margin-top: 10px;
    background: rgba(0,0,0,.04);
}
.ms-sort-footer {
    margin-top: 16px;
    display: flex;
    justify-content: flex-end;
}
.ms-sort-footer .btn,
.ms-sort-footer button {
    width: 100%;
}
.ms-module-picker-modal {
    z-index: 31000;
    padding: 14px;
}
.ms-module-picker-card {
    width: min(720px, 96vw);
    max-height: 92vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}
.ms-module-picker-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    padding: 18px;
    border-bottom: 1px solid var(--color-border);
}
.ms-module-picker-head h3 {
    margin: 0 0 4px;
    font-size: 1.25rem;
    color: var(--color-text);
}
.ms-module-picker-head p {
    margin: 0;
    color: var(--color-text-secondary);
    font-weight: 700;
}
.ms-module-picker-body {
    padding: 18px;
    overflow: auto;
    display: grid;
    gap: 14px;
}
.ms-module-new-card,
.ms-existing-module-card,
.ms-module-empty {
    border: 1px solid var(--color-border);
    border-radius: 18px;
    background: var(--color-bg-card);
    box-shadow: var(--shadow-sm);
}
.ms-module-new-card {
    display: grid;
    grid-template-columns: 52px 1fr;
    gap: 4px 14px;
    align-items: center;
    padding: 16px;
    color: var(--color-text);
}
.ms-module-new-card i {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    grid-row: span 2;
    background: linear-gradient(135deg, var(--color-primary), var(--color-accent));
    color: #ffffff !important;
    font-size: 1.35rem;
}
.ms-module-new-card strong {
    font-size: 1.05rem;
    color: var(--color-text);
}
.ms-module-new-card span {
    color: var(--color-text-secondary);
    font-weight: 700;
}
.ms-existing-module-list {
    display: grid;
    gap: 10px;
}
.ms-existing-module-card {
    padding: 14px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    margin: 0;
}
.ms-existing-module-card div {
    display: grid;
    gap: 4px;
    min-width: 0;
}
.ms-existing-module-card strong {
    color: var(--color-text);
    overflow-wrap: anywhere;
}
.ms-existing-module-card span {
    color: var(--color-text-secondary);
    font-weight: 700;
    overflow-wrap: anywhere;
}
.ms-existing-module-card .btn,
.ms-existing-module-card button {
    width: 100%;
}
.ms-module-empty {
    padding: 28px 18px;
    display: grid;
    place-items: center;
    gap: 8px;
    text-align: center;
    color: var(--color-text-secondary);
}
.ms-module-empty i {
    font-size: 2.1rem;
    color: var(--color-primary);
}
.ms-module-empty strong {
    color: var(--color-text);
}
@media (min-width: 760px) {
    .ms-panel-head-actions {
        align-items: center;
    }
    .ms-panel-head-actions .btn,
    .ms-panel-head-actions button {
        width: auto;
    }
    .ms-sort-footer .btn,
    .ms-sort-footer button {
        width: auto;
    }
    .ms-existing-module-card {
        grid-template-columns: 1fr auto;
        align-items: center;
    }
    .ms-existing-module-card .btn,
    .ms-existing-module-card button {
        width: auto;
    }
}

.ms-sort-actions {
    align-items: stretch;
}
.ms-sort-actions .ms-sort-move {
    min-width: 112px;
}
@media (max-width: 700px) {
    .ms-sort-actions {
        display: grid !important;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }
    .ms-sort-actions a,
    .ms-sort-actions button {
        width: 100% !important;
        min-height: 46px;
    }
    .ms-sort-actions a:nth-child(n+3),
    .ms-sort-actions button:nth-child(n+3) {
        grid-column: span 1;
    }
}

.ms-bg-picker {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 14px;
    width: 100%;
}

.ms-bg-option {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    padding: 0;
    border: 2px solid var(--color-border);
    border-radius: 18px;
    overflow: hidden;
    background: var(--color-bg-input);
    cursor: pointer;
    box-shadow: var(--shadow-sm);
}

.ms-bg-option img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ms-bg-option.active {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 4px var(--color-primary-light), var(--shadow-md);
}

.ms-bg-empty {
    border: 1px dashed var(--color-border);
    border-radius: 18px;
    padding: 18px;
    color: var(--color-text-secondary);
    background: var(--color-bg-input);
}

.ms-bg-empty strong,
.ms-bg-empty span {
    display: block;
}

.ms-module-image-field .ms-selected-asset {
    min-height: 110px;
}

.ms-module-image-field .ms-selected-asset img {
    width: 120px;
    height: 76px;
    object-fit: cover;
    border-radius: 14px;
}

@media (max-width: 720px) {
    .ms-bg-picker {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .ms-module-image-field .ms-selected-asset {
        align-items: flex-start;
    }

    .ms-module-image-field .ms-selected-asset img {
        width: 100%;
        height: auto;
        aspect-ratio: 16 / 9;
    }
}

.ms-content-edit-form {
    display: grid;
    gap: 18px;
}

.ms-content-edit-section {
    padding: 20px;
    overflow: visible;
}

.ms-section-title {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 950;
    color: var(--color-text);
    font-size: 1.08rem;
    margin-bottom: 16px;
}

.ms-section-title i {
    color: var(--color-primary);
}

.ms-bg-section {
    width: 100%;
    min-width: 0;
}

.ms-bg-section .ms-bg-picker {
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    align-items: start;
}

.ms-bg-section .ms-bg-option {
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    aspect-ratio: 16 / 9 !important;
    padding: 0 !important;
    border-radius: 20px !important;
    box-shadow: var(--shadow-sm) !important;
    transform: none !important;
    background: var(--color-bg-input) !important;
}

.ms-bg-section .ms-bg-option:hover {
    transform: none !important;
    filter: none !important;
}

.ms-bg-section .ms-bg-option img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

.ms-content-active-check {
    align-self: end;
    min-height: 55px;
    margin-top: 0;
}

.ms-sticky-actions {
    position: sticky;
    bottom: calc(var(--mobile-nav-height) + 12px);
    z-index: 40;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    padding: 12px;
    border: 1px solid var(--color-border);
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.88);
    backdrop-filter: blur(18px);
    box-shadow: var(--ms-shadow);
}

html.dark .ms-sticky-actions {
    background: rgba(30, 41, 59, 0.9);
}

.ms-sticky-actions button,
.ms-sticky-actions .btn {
    min-height: 48px;
}

@media (max-width: 720px) {
    .ms-content-edit-section {
        padding: 15px;
        border-radius: 22px;
    }

    .ms-bg-section .ms-bg-picker {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }

    .ms-sticky-actions {
        display: grid;
        grid-template-columns: 1fr;
        bottom: calc(var(--mobile-nav-height) + 10px);
    }

    .ms-sticky-actions button,
    .ms-sticky-actions .btn {
        width: 100%;
    }
}

.ms-clean-toolbar {
    margin-bottom: 14px;
}

.ms-content-edit-clean {
    max-width: 1180px;
    margin: 0 auto;
}

.ms-content-edit-clean .ms-content-edit-section {
    padding: 20px;
    border-radius: 22px;
    overflow: visible;
}

.ms-section-headline {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 18px;
}

.ms-section-headline p {
    margin: 4px 0 0;
    color: var(--color-text-secondary);
    font-weight: 650;
}

.ms-form-block {
    display: grid;
    gap: 14px;
}

.ms-clean-select,
.ms-content-edit-clean select {
    min-height: 48px !important;
    height: 48px !important;
    max-height: 48px !important;
    line-height: 1.1 !important;
    padding: 0 42px 0 14px !important;
    border-radius: 14px !important;
    display: block !important;
    appearance: auto !important;
    -webkit-appearance: menulist !important;
    background-color: var(--color-bg-input) !important;
    color: var(--color-text) !important;
}

.ms-type-upload-grid {
    align-items: start;
}

.ms-type-upload-grid > .field:first-child {
    align-self: start;
}

.ms-asset-modal {
    padding: 16px !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 30000 !important;
}

.ms-asset-modal-card {
    width: min(1120px, calc(100vw - 32px)) !important;
    max-width: min(1120px, calc(100vw - 32px)) !important;
    height: min(820px, calc(100vh - 32px)) !important;
    max-height: min(820px, calc(100vh - 32px)) !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    border-radius: 26px !important;
}

.ms-asset-modal-head {
    padding: 20px 22px !important;
    min-height: 88px;
}

.ms-modal-close {
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    padding: 0 !important;
    border-radius: 18px !important;
    background: var(--color-primary-light) !important;
    color: var(--color-primary) !important;
    box-shadow: none !important;
    flex: 0 0 auto !important;
}

.ms-modal-close i {
    width: 1.55em !important;
    height: 1.55em !important;
}

.ms-asset-filter {
    grid-template-columns: minmax(240px, 1fr) 260px !important;
    gap: 12px !important;
    padding: 14px 22px !important;
}

.ms-asset-grid {
    padding: 18px 22px !important;
    grid-template-columns: repeat(auto-fill, minmax(155px, 1fr)) !important;
    align-content: start !important;
    gap: 14px !important;
}

.ms-asset-card {
    min-height: 235px !important;
    padding: 12px !important;
    border-radius: 18px !important;
    box-shadow: none !important;
    color: var(--color-text) !important;
    background: var(--color-bg-card) !important;
}

.ms-asset-card img,
.ms-asset-card .ms-file-icon {
    height: 126px !important;
    border-radius: 15px !important;
}

.ms-asset-card strong {
    font-size: .94rem !important;
    line-height: 1.25 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

.ms-asset-card small,
.ms-asset-card em {
    display: block !important;
    line-height: 1.25 !important;
}

.ms-asset-pager {
    padding: 14px 22px !important;
}

.ms-selected-asset {
    border-radius: 18px !important;
}

@media (max-width: 760px) {
    .ms-content-edit-clean .ms-content-edit-section {
        padding: 15px;
        border-radius: 20px;
    }

    .ms-section-headline {
        display: block;
    }

    .ms-asset-modal {
        padding: 8px !important;
    }

    .ms-asset-modal-card {
        width: calc(100vw - 16px) !important;
        max-width: calc(100vw - 16px) !important;
        height: calc(100vh - 16px) !important;
        max-height: calc(100vh - 16px) !important;
        border-radius: 22px !important;
    }

    .ms-asset-modal-head {
        padding: 16px !important;
        min-height: 78px;
    }

    .ms-modal-close {
        width: 52px !important;
        height: 52px !important;
        min-width: 52px !important;
        min-height: 52px !important;
    }

    .ms-asset-filter {
        grid-template-columns: 1fr !important;
        padding: 12px 16px !important;
    }

    .ms-asset-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        padding: 14px 16px !important;
        gap: 10px !important;
    }

    .ms-asset-card {
        min-height: 210px !important;
        padding: 10px !important;
    }

    .ms-asset-card img,
    .ms-asset-card .ms-file-icon {
        height: 106px !important;
    }

    .ms-asset-pager {
        padding: 12px 16px !important;
    }
}

.ms-upload-thumb img,
.ms-asset-card img,
.ms-selected-asset img,
.ms-content-mini-image {
    object-fit: cover;
    image-rendering: auto;
}

.ms-upload-thumb img,
.ms-asset-card img {
    width: 100%;
    height: 100%;
    display: block;
}

.ms-selected-asset img {
    width: 58px;
    height: 58px;
    border-radius: 14px;
    flex: 0 0 auto;
}

.ms-content-mini-image {
    max-width: 170px;
    max-height: 110px;
    border-radius: 12px;
}

.ms-floating-app-actions{position:fixed;right:18px;bottom:18px;z-index:22000;display:flex;gap:10px;align-items:center}.ms-floating-action{width:50px;min-width:50px;height:50px;min-height:50px;padding:0!important;border-radius:16px!important;background:var(--color-bg-card)!important;color:var(--color-primary)!important;border:1px solid var(--color-border)!important;box-shadow:0 16px 38px rgba(15,23,42,.18)!important}.ms-floating-action:hover{transform:translateY(-2px)}.ms-floating-action i{width:1.3em;height:1.3em}.ms-install-action{background:linear-gradient(135deg,var(--color-primary),var(--color-accent))!important;color:#fff!important;border:0!important}.ms-monitor-list{display:grid;gap:14px}.ms-monitor-simple-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:center;padding:17px;border:1px solid var(--color-border);border-radius:22px;background:var(--color-bg-card);box-shadow:0 10px 26px rgba(15,23,42,.06)}.ms-monitor-simple-number{align-self:stretch;display:flex;align-items:center;justify-content:center;min-width:92px;padding:12px;border-radius:17px;background:var(--color-primary-light);color:var(--color-primary);font-weight:950;font-size:1.15rem}.ms-monitor-simple-main{min-width:0}.ms-monitor-simple-main h3{margin:0 0 7px;font-size:1.2rem}.ms-monitor-simple-main p{margin:7px 0 0;color:var(--color-text-secondary);font-weight:650}.ms-monitor-simple-primary{display:flex;align-items:center;justify-content:flex-end}.ms-monitor-manage{grid-column:1/-1;border-top:1px solid var(--color-border);padding-top:12px}.ms-monitor-manage summary{display:inline-flex;align-items:center;gap:8px;cursor:pointer;color:var(--color-primary);font-weight:850;list-style:none}.ms-monitor-manage summary::-webkit-details-marker{display:none}.ms-monitor-manage-body{display:grid;gap:13px;padding-top:14px}.ms-monitor-link-box{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:13px;border-radius:16px;background:var(--color-primary-light)}.ms-monitor-link-box strong{color:var(--color-primary)}.ms-monitor-link-box span{font-weight:800;overflow-wrap:anywhere}.ms-monitor-link-box .btn{margin-left:auto}.ms-monitor-manage-actions{display:flex;gap:10px;flex-wrap:wrap}.ms-monitor-content-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:center;background:linear-gradient(135deg,#285694,#2d384e 64%,#47bcc2);color:#fff;border-color:transparent}.ms-monitor-content-hero-icon{width:72px;height:72px;border-radius:23px;display:grid;place-items:center;background:rgba(255,255,255,.16);font-size:2rem}.ms-monitor-content-hero h2{margin:3px 0 7px;color:#fff}.ms-monitor-content-hero p{margin:0;color:rgba(255,255,255,.82);font-weight:650}.ms-monitor-content-hero .ms-mini-label{color:rgba(255,255,255,.72)}.ms-monitor-content-hero-stat{display:grid;place-items:center;min-width:112px;padding:14px;border-radius:18px;background:rgba(255,255,255,.14);text-align:center}.ms-monitor-content-hero-stat strong{font-size:1.8rem;line-height:1}.ms-monitor-content-hero-stat span{margin-top:5px;font-size:.78rem;font-weight:800;color:rgba(255,255,255,.78)}.ms-template-catalog-group+.ms-template-catalog-group{margin-top:22px}.ms-template-catalog-group h3{margin:0 0 10px;font-size:.92rem;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary)}.ms-template-catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(228px,1fr));gap:12px}.ms-template-choice{display:grid;grid-template-columns:44px minmax(0,1fr);gap:10px;padding:15px;border:1px solid var(--color-border);border-radius:19px;background:var(--color-bg-card);transition:.16s ease;min-width:0}.ms-template-choice:hover{transform:translateY(-2px);border-color:var(--color-primary);box-shadow:0 14px 30px rgba(40,86,148,.12)}.ms-template-choice>i{grid-row:span 2;width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:var(--color-primary-light);color:var(--color-primary);font-size:1.25rem}.ms-template-choice strong{align-self:end;font-size:1rem}.ms-template-choice span{grid-column:2;display:block;color:var(--color-text-secondary);font-size:.86rem;line-height:1.35;font-weight:650}.ms-template-choice b{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;padding-top:9px;border-top:1px solid var(--color-border);color:var(--color-primary);font-size:.87rem}.ms-template-content-list{display:grid;gap:12px}.ms-template-content-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:15px;border:1px solid var(--color-border);border-radius:20px;background:var(--color-bg-card)}.ms-template-content-main{display:flex;gap:12px;align-items:flex-start;min-width:0}.ms-template-content-icon{width:48px;height:48px;min-width:48px;border-radius:15px;background:var(--color-primary-light);color:var(--color-primary);display:grid;place-items:center;font-size:1.35rem}.ms-template-content-main h3{margin:0 0 7px;font-size:1.08rem}.ms-template-content-main p{margin:7px 0 0;color:var(--color-text-secondary);font-size:.86rem;font-weight:650}.ms-template-content-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.ms-template-content-actions form{margin:0}.ms-template-content-actions .btn,.ms-template-content-actions button{min-height:40px;padding:10px 11px;font-size:.86rem}.ms-template-content-actions button:disabled{opacity:.42;cursor:not-allowed;transform:none}.ms-legacy-list{display:grid;gap:9px}.ms-legacy-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-primary-light)}.ms-legacy-card>div{display:grid;gap:4px}.ms-legacy-card span{font-size:.86rem;color:var(--color-text-secondary);font-weight:700}.ms-template-heading{display:flex;align-items:center;gap:15px}.ms-template-heading-icon{width:62px;height:62px;min-width:62px;border-radius:20px;background:var(--color-primary-light);color:var(--color-primary);display:grid;place-items:center;font-size:1.8rem}.ms-template-heading h2{margin:3px 0 5px}.ms-template-heading p{margin:0;color:var(--color-text-secondary);font-weight:650}.ms-template-form{display:grid;gap:18px}.ms-template-edit-panel,.ms-template-display-panel{margin:0}.ms-week-editor{display:grid;border:1px solid var(--color-border);border-radius:17px;overflow:hidden}.ms-week-editor-head,.ms-week-editor-row{display:grid;grid-template-columns:130px minmax(0,1.25fr) minmax(0,1.25fr) 120px;gap:8px;align-items:center;padding:10px 12px}.ms-week-editor-head{background:var(--color-primary-light);font-size:.78rem;text-transform:uppercase;font-weight:900;color:var(--color-primary)}.ms-week-editor-row+.ms-week-editor-row{border-top:1px solid var(--color-border)}.ms-week-editor-row strong{font-size:.9rem}.ms-week-editor-row input{min-height:42px;padding:9px 10px}.ms-opening-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ms-opening-editor label{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:center;gap:9px;padding:10px 12px;border:1px solid var(--color-border);border-radius:15px;background:var(--color-bg-card)}.ms-opening-editor input{min-height:42px;padding:8px 10px}.ms-template-fixed-time{padding:12px 14px;border-radius:15px;background:var(--color-primary-light);color:var(--color-primary);font-weight:750;line-height:1.45}.ms-template-active{align-self:end;min-height:46px;display:flex;align-items:center;border:1px solid var(--color-border);border-radius:13px;padding:0 13px;background:var(--color-bg-card)}.ms-template-asset-field{margin-top:4px}@media(max-width:820px){.ms-monitor-simple-card{grid-template-columns:auto minmax(0,1fr)}.ms-monitor-simple-primary{grid-column:1/-1;justify-content:stretch}.ms-monitor-simple-primary .btn{width:100%}.ms-monitor-content-hero{grid-template-columns:auto minmax(0,1fr)}.ms-monitor-content-hero-stat{grid-column:1/-1;grid-template-columns:auto auto;justify-content:start;gap:8px;width:max-content}.ms-monitor-content-hero-stat span{margin:0}.ms-template-content-card{grid-template-columns:1fr}.ms-template-content-actions{justify-content:flex-start}.ms-week-editor-head{display:none}.ms-week-editor-row{grid-template-columns:1fr 1fr}.ms-week-editor-row strong{grid-column:1/-1}.ms-week-editor-row input:last-child{grid-column:1/-1}.ms-opening-editor{grid-template-columns:1fr}.ms-floating-app-actions{right:12px;bottom:88px}.ms-floating-action{width:46px;min-width:46px;height:46px;min-height:46px}}@media(max-width:520px){.ms-monitor-simple-card{grid-template-columns:1fr}.ms-monitor-simple-number{min-height:52px}.ms-monitor-simple-primary{grid-column:auto}.ms-monitor-link-box .btn{width:100%;margin-left:0}.ms-monitor-manage-actions{display:grid;grid-template-columns:1fr}.ms-monitor-manage-actions .btn,.ms-monitor-manage-actions button{width:100%}.ms-template-catalog-grid{grid-template-columns:1fr}.ms-template-content-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.ms-template-content-actions form,.ms-template-content-actions .btn,.ms-template-content-actions button{width:100%}.ms-template-content-actions span{display:none}.ms-legacy-card{align-items:flex-start;flex-direction:column}.ms-legacy-card .btn{width:100%}.ms-template-heading{align-items:flex-start}.ms-opening-editor label{grid-template-columns:1fr}.ms-week-editor-row{grid-template-columns:1fr}.ms-week-editor-row input:last-child{grid-column:auto}}


:root {
    --ms-app-purple: #8b35ff;
    --ms-app-purple-dark: #4d1dc7;
    --ms-app-cyan: #22d8f6;
    --ms-app-blue: #2d73ff;
}

html,
body,
.app-sidebar,
.sidebar-nav,
.main-content-area,
.table-wrap {
    scrollbar-width: none;
}

html::-webkit-scrollbar,
body::-webkit-scrollbar,
.app-sidebar::-webkit-scrollbar,
.sidebar-nav::-webkit-scrollbar,
.main-content-area::-webkit-scrollbar,
.table-wrap::-webkit-scrollbar {
    width: 0;
    height: 0;
}

body {
    overflow-x: hidden !important;
    background: radial-gradient(circle at 12% 0, rgba(45, 115, 255, .13), transparent 30rem), radial-gradient(circle at 92% 12%, rgba(34, 216, 246, .14), transparent 28rem), #edf2f7 !important;
}

.table-wrap {
    overflow: visible !important;
}

table {
    min-width: 0 !important;
    table-layout: auto;
}

th,
td {
    white-space: normal;
    overflow-wrap: anywhere;
}

.app-header {
    min-height: 64px;
    padding: 0 22px;
    background: rgba(255, 255, 255, .92);
    border-bottom: 1px solid rgba(203, 213, 225, .8);
    box-shadow: 0 10px 28px rgba(15, 23, 42, .06);
}

.app-header .header-left,
.app-header .header-right {
    min-width: 0;
}

.app-header .header-right {
    gap: 8px;
}

.ms-header-actions {
    display: none;
    align-items: center;
    gap: 7px;
}

.app-header .ms-header-actions {
    display: flex;
}

.ms-header-action {
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
    min-height: 40px !important;
    padding: 0 !important;
    border-radius: 13px !important;
    background: rgba(40, 86, 148, .09) !important;
    color: var(--color-primary) !important;
    box-shadow: none !important;
}

.ms-header-action:hover {
    transform: translateY(-1px);
    background: rgba(40, 86, 148, .16) !important;
}

.ms-header-action[hidden] {
    display: none !important;
}

.ms-header-action i {
    width: 1.2em;
    height: 1.2em;
}

#theme-toggle .ffweb-sun {
    display: none;
}

html.dark #theme-toggle .ffweb-moon {
    display: none;
}

html.dark #theme-toggle .ffweb-sun {
    display: inline-block;
}

.ms-floating-app-actions {
    display: none !important;
}

html.dark {
    --color-primary: #a56bff;
    --color-primary-light: rgba(139, 53, 255, .22);
    --color-accent: #22d8f6;
    --color-bg: #070716;
    --color-bg-card: rgba(255, 255, 255, .075);
    --color-bg-input: rgba(7, 7, 22, .72);
    --color-bg-nav: #0d0c23;
    --color-text: #f7f8ff;
    --color-text-secondary: #c8cae0;
    --color-border: rgba(255, 255, 255, .14);
    --color-bg-bars-light: rgba(13, 12, 35, .88);
    --ms-border: rgba(255, 255, 255, .14);
    --ms-shadow: 0 24px 70px rgba(0, 0, 0, .34);
}

html.dark body {
    background: radial-gradient(circle at 14% 10%, rgba(139, 53, 255, .22), transparent 30rem), radial-gradient(circle at 85% 8%, rgba(34, 216, 246, .18), transparent 34rem), linear-gradient(180deg, #050511 0%, #060617 36%, #070714 100%) !important;
}

html.dark .app-sidebar {
    background: radial-gradient(circle at 0 0, rgba(139, 53, 255, .22), transparent 22rem), linear-gradient(180deg, #12102b, #070716 78%) !important;
    border-right: 1px solid rgba(255, 255, 255, .08);
    box-shadow: 18px 0 52px rgba(0, 0, 0, .18);
}

html.dark .sidebar-link.active {
    background: linear-gradient(135deg, #8b35ff, #2d73ff 54%, #22d8f6) !important;
    box-shadow: 0 14px 32px rgba(34, 216, 246, .14);
}

html.dark .app-header {
    background: rgba(13, 12, 35, .82) !important;
    border-bottom-color: rgba(255, 255, 255, .1);
    box-shadow: 0 12px 34px rgba(0, 0, 0, .22);
}

html.dark .ms-header-action {
    background: rgba(255, 255, 255, .08) !important;
    color: #f7f8ff !important;
    border: 1px solid rgba(255, 255, 255, .11) !important;
}

html.dark .ms-header-action:hover {
    background: rgba(34, 216, 246, .14) !important;
}

html.dark .panel,
html.dark .content-card,
html.dark .uebungen-filter-card,
html.dark .ms-monitor-simple-card,
html.dark .ms-dashboard-monitor-card,
html.dark .ms-template-choice,
html.dark .ms-template-content-card,
html.dark .ms-legacy-card,
html.dark .ms-monitor-settings-link,
html.dark .ms-monitor-pair-box,
html.dark .ms-monitor-link-box {
    background: linear-gradient(145deg, rgba(255, 255, 255, .095), rgba(255, 255, 255, .045)) !important;
    border-color: rgba(255, 255, 255, .14) !important;
    box-shadow: 0 20px 52px rgba(0, 0, 0, .18);
}

html.dark .field input,
html.dark .field select,
html.dark .field textarea,
html.dark input,
html.dark select,
html.dark textarea,
html.dark .form-control,
html.dark .form-select {
    background: rgba(7, 7, 22, .64) !important;
    border-color: rgba(255, 255, 255, .16) !important;
}

html.dark .btn,
html.dark button {
    background: linear-gradient(135deg, #8b35ff, #2d73ff 52%, #22d8f6) !important;
    box-shadow: 0 14px 32px rgba(34, 216, 246, .12);
}

html.dark .btn.secondary,
html.dark .btn.btn-secondary,
html.dark button.secondary,
html.dark button.btn-secondary {
    background: rgba(255, 255, 255, .085) !important;
    color: #f7f8ff !important;
    box-shadow: none;
}

html.dark .storage-bar {
    background: rgba(255, 255, 255, .12);
}

html.dark .storage-bar span {
    background: linear-gradient(90deg, #8b35ff, #2d73ff 52%, #22d8f6);
}

.ms-page-toolbar {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 18px;
    margin: 4px 0 18px;
}

.ms-page-toolbar h1,
.ms-dashboard-welcome h1,
.ms-edit-panel h1 {
    margin: 3px 0 6px;
    color: var(--color-text);
    font-size: clamp(1.65rem, 3vw, 2.3rem);
    line-height: 1.04;
    letter-spacing: -.055em;
}

.ms-page-toolbar p,
.ms-dashboard-welcome p,
.ms-edit-panel p {
    margin: 0;
    color: var(--color-text-secondary);
    font-weight: 650;
}

.ms-page-kicker {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 0 9px;
    border-radius: 999px;
    color: var(--color-primary);
    background: var(--color-primary-light);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.ms-monitor-panel {
    padding: 16px;
}

.ms-monitor-list {
    display: grid;
    gap: 14px;
}

.ms-monitor-simple-card {
    display: grid;
    grid-template-columns: 82px minmax(0, 1fr) auto;
    gap: 14px;
    align-items: center;
    padding: 16px;
    border: 1px solid var(--color-border);
    border-radius: 22px;
    background: var(--color-bg-card);
    box-shadow: 0 12px 28px rgba(15, 23, 42, .06);
}

.ms-monitor-simple-number {
    min-width: 82px;
    min-height: 66px;
    align-self: stretch;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 18px;
    background: linear-gradient(135deg, rgba(40, 86, 148, .16), rgba(71, 188, 194, .21));
    color: var(--color-primary);
    font-weight: 950;
    font-size: 1rem;
}

html.dark .ms-monitor-simple-number {
    background: linear-gradient(135deg, rgba(139, 53, 255, .28), rgba(34, 216, 246, .17));
    color: #f7f8ff;
}

.ms-monitor-simple-main {
    min-width: 0;
}

.ms-monitor-title-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.ms-monitor-title-row h2 {
    margin: 0;
    color: var(--color-text);
    font-size: 1.18rem;
    letter-spacing: -.035em;
}

.ms-monitor-simple-main p {
    margin: 7px 0 0;
    color: var(--color-text-secondary);
    font-size: .88rem;
    font-weight: 700;
}

.pill.ready {
    background: rgba(34, 216, 246, .16);
    color: #087a90;
}

html.dark .pill.ready {
    color: #78eaf8;
}

.ms-monitor-simple-primary {
    display: flex;
}

.ms-monitor-access-grid {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 10px;
    padding-top: 13px;
    border-top: 1px solid var(--color-border);
}

.ms-monitor-link-box,
.ms-monitor-pair-box,
.ms-monitor-settings-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-width: 0;
    padding: 12px 13px;
    border-radius: 17px;
    background: rgba(40, 86, 148, .06);
    border: 1px solid rgba(40, 86, 148, .1);
}

.ms-monitor-link-box > div,
.ms-monitor-pair-box > div,
.ms-monitor-settings-link > div {
    min-width: 0;
}

.ms-monitor-link-box strong,
.ms-monitor-pair-box strong,
.ms-monitor-settings-link strong {
    display: block;
    color: var(--color-text);
    font-size: .96rem;
    overflow-wrap: anywhere;
}

.ms-monitor-pair-box strong {
    font-size: 1.12rem;
    letter-spacing: .09em;
}

.ms-monitor-link-box .btn,
.ms-monitor-pair-box .btn,
.ms-monitor-settings-link .btn {
    flex: 0 0 auto;
}

.ms-monitor-bottom-actions {
    grid-column: 1 / -1;
    display: flex;
    justify-content: flex-end;
}

.ms-monitor-bottom-actions .btn {
    min-height: 40px;
    padding: 10px 12px;
}

.js-monitor-approve:disabled {
    opacity: .56;
    cursor: not-allowed;
    filter: grayscale(.2);
}

.ms-dashboard-welcome {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 22px;
    margin-bottom: 16px;
    border: 1px solid rgba(40, 86, 148, .13);
    border-radius: 24px;
    background: linear-gradient(135deg, rgba(40, 86, 148, .11), rgba(71, 188, 194, .14));
}

html.dark .ms-dashboard-welcome {
    border-color: rgba(255, 255, 255, .12);
    background: radial-gradient(circle at 18% 20%, rgba(139, 53, 255, .3), transparent 22rem), radial-gradient(circle at 92% 8%, rgba(34, 216, 246, .21), transparent 24rem), linear-gradient(135deg, rgba(20, 14, 54, .96), rgba(7, 12, 31, .96));
}

.ms-dashboard-welcome-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
}

.ms-dashboard-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 16px;
}

.ms-dashboard-stats article {
    display: grid;
    gap: 4px;
    min-width: 0;
    padding: 16px;
    border: 1px solid var(--color-border);
    border-radius: 20px;
    background: var(--color-bg-card);
    box-shadow: 0 10px 26px rgba(15, 23, 42, .05);
}

.ms-dashboard-stats span,
.ms-dashboard-stats small {
    color: var(--color-text-secondary);
    font-weight: 750;
}

.ms-dashboard-stats strong {
    color: var(--color-text);
    font-size: 1.82rem;
    line-height: 1;
    letter-spacing: -.06em;
}

.ms-dashboard-monitor-panel {
    margin-bottom: 16px;
}

.ms-dashboard-monitor-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 12px;
}

.ms-dashboard-monitor-card {
    display: grid;
    gap: 9px;
    padding: 15px;
    border: 1px solid var(--color-border);
    border-radius: 19px;
    background: var(--color-bg-card);
}

.ms-dashboard-monitor-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.ms-dashboard-tv {
    color: var(--color-primary);
    font-size: .82rem;
    font-weight: 950;
}

.ms-dashboard-monitor-card h3 {
    margin: 2px 0 0;
    color: var(--color-text);
    font-size: 1.08rem;
}

.ms-dashboard-monitor-card p {
    margin: 0;
    color: var(--color-text-secondary);
    font-size: .9rem;
    font-weight: 650;
}

.ms-dashboard-monitor-card .btn {
    width: 100%;
    margin-top: 3px;
}

.ms-dashboard-bottom-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr);
    gap: 16px;
}

.ms-storage-panel,
.ms-dashboard-start-panel {
    margin-bottom: 0;
}

.ms-storage-panel .ms-panel-head {
    align-items: start;
}

.ms-storage-panel .ms-panel-head > strong {
    color: var(--color-primary);
    font-size: 1.15rem;
}

.ms-dashboard-start-list {
    display: grid;
    gap: 10px;
}

.ms-dashboard-start-list div {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    color: var(--color-text);
    font-weight: 800;
}

.ms-dashboard-start-list b {
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    display: inline-grid;
    place-items: center;
    border-radius: 10px;
    background: var(--color-primary-light);
    color: var(--color-primary);
}

.ms-monitor-settings-panel {
    display: grid;
    gap: 14px;
}

.ms-monitor-settings-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.ms-install-sheet {
    position: fixed;
    inset: 0;
    z-index: 25000;
    display: none;
    align-items: end;
    justify-content: center;
    padding: 16px;
    background: rgba(4, 4, 18, .55);
    backdrop-filter: blur(8px);
}

.ms-install-sheet.open {
    display: flex;
}

.ms-install-sheet-card {
    position: relative;
    width: min(420px, 100%);
    padding: 22px;
    border: 1px solid var(--color-border);
    border-radius: 24px;
    background: var(--color-bg-card);
    color: var(--color-text);
    box-shadow: 0 28px 74px rgba(0, 0, 0, .28);
}

.ms-install-sheet-card h2 {
    margin: 0 0 8px;
    font-size: 1.3rem;
}

.ms-install-sheet-card p {
    margin: 0;
    color: var(--color-text-secondary);
    font-weight: 650;
    line-height: 1.5;
}

.ms-install-sheet-icon {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    margin-bottom: 14px;
    border-radius: 17px;
    background: linear-gradient(135deg, var(--ms-app-purple), var(--ms-app-blue) 52%, var(--ms-app-cyan));
    color: #fff;
    font-size: 1.4rem;
}

.ms-install-sheet-close {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 38px;
    min-width: 38px;
    height: 38px;
    min-height: 38px;
    padding: 0;
    border-radius: 12px;
}

@media (max-width: 820px) {
    .app-header {
        padding: 0 14px;
    }

    .main-content-area {
        padding: 14px 14px calc(var(--mobile-nav-height) + 16px);
    }

    .ms-page-toolbar,
    .ms-dashboard-welcome {
        align-items: stretch;
        flex-direction: column;
    }

    .ms-page-toolbar .btn,
    .ms-dashboard-welcome-actions .btn {
        width: 100%;
    }

    .ms-dashboard-welcome-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .ms-dashboard-bottom-grid {
        grid-template-columns: 1fr;
    }

    .ms-monitor-simple-card {
        grid-template-columns: 68px minmax(0, 1fr);
    }

    .ms-monitor-simple-primary {
        grid-column: 1 / -1;
    }

    .ms-monitor-simple-primary .btn {
        width: 100%;
    }

    .ms-monitor-access-grid {
        grid-template-columns: 1fr;
    }

    .ms-monitor-bottom-actions {
        justify-content: stretch;
    }

    .ms-monitor-bottom-actions .btn {
        width: 100%;
    }
}

@media (max-width: 560px) {
    .app-header {
        min-height: 58px;
    }

    .header-title {
        font-size: 1.04rem;
    }

    .ms-domain {
        display: none;
    }

    .ms-header-actions {
        gap: 5px;
    }

    .ms-header-action {
        width: 36px !important;
        min-width: 36px !important;
        height: 36px !important;
        min-height: 36px !important;
        border-radius: 11px !important;
    }

    .ms-monitor-panel,
    .panel {
        border-radius: 20px;
    }

    .ms-monitor-simple-card {
        grid-template-columns: 1fr;
        gap: 12px;
        padding: 14px;
    }

    .ms-monitor-simple-number {
        min-height: 48px;
    }

    .ms-monitor-link-box,
    .ms-monitor-pair-box,
    .ms-monitor-settings-link {
        align-items: stretch;
        flex-direction: column;
    }

    .ms-monitor-link-box .btn,
    .ms-monitor-pair-box .btn,
    .ms-monitor-settings-link .btn,
    .ms-monitor-settings-actions .btn {
        width: 100%;
    }

    .ms-dashboard-stats {
        grid-template-columns: 1fr;
    }

    .ms-dashboard-monitor-grid {
        grid-template-columns: 1fr;
    }

    .ms-dashboard-welcome {
        padding: 18px;
        border-radius: 21px;
    }

    .ms-dashboard-stats article {
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
    }

    .ms-dashboard-stats strong {
        grid-row: span 2;
        grid-column: 2;
    }

    .ms-monitor-settings-actions {
        display: grid;
        grid-template-columns: 1fr;
    }
}

.app-header .header-left .ms-back-action {
    margin-right: 3px;
}
