.plat-sidebar{border-right:1px solid var(--line);background:var(--paper-2);flex-direction:column;flex:none;gap:14px;width:232px;padding:14px 12px 24px;display:flex;overflow-y:auto}.plat-sidebar-group{flex-direction:column;gap:2px;display:flex}.plat-sidebar-group--bottom{border-top:1px solid var(--line-2);margin-top:auto;padding-top:12px}.plat-sidebar-grouplabel{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);padding:4px 12px 2px;font-size:.66rem;font-weight:700}.plat-sidebar-item{color:var(--muted);border-radius:6px;align-items:center;gap:10px;padding:8px 12px;font-size:.86rem;text-decoration:none;display:flex}.plat-sidebar-item:hover{background:var(--line-2);color:var(--ink)}.plat-sidebar-item.active{background:var(--navy);color:#fff}.plat-sidebar-item svg{flex:none}.plat-topnav-title{color:#c3cee2;font-size:.88rem;font-family:var(--serif)}.plat-main{padding-top:24px}.plat-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:22px;display:flex}.plat-page-header h1{font-family:var(--serif);color:var(--navy);margin:0;font-size:1.55rem}.plat-page-header p{color:var(--muted);margin:4px 0 0;font-size:.9rem}.plat-header-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.plat-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-bottom:26px;display:grid}.plat-kpi-card{border:1px solid var(--line-2);color:inherit;transition:transform .15s var(--ease), box-shadow .15s var(--ease), border-color .15s var(--ease);background:#fff;border-radius:10px;flex-direction:column;gap:6px;padding:16px 18px;text-decoration:none;display:flex}a.plat-kpi-card:hover{border-color:var(--teal);transform:translateY(-2px);box-shadow:0 8px 20px #0000001a}.plat-kpi-top{justify-content:space-between;align-items:center;display:flex}.plat-kpi-icon{width:34px;height:34px;color:var(--teal-ink);background:#e8f5f3;border-radius:8px;flex:none;place-items:center;display:grid}.plat-kpi-label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:.76rem;font-weight:700}.plat-kpi-value{color:var(--navy);font-size:1.7rem;font-weight:700;font-family:var(--serif);line-height:1}.plat-kpi-sub{color:var(--muted);font-size:.78rem}.plat-kpi-trend--up{color:var(--teal-ink)}.plat-kpi-trend--down{color:#b3261e}.plat-panel{border:1px solid var(--line-2);background:#fff;border-radius:10px;padding:18px 20px}.plat-panel-title{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 14px;font-size:.72rem;font-weight:700}.plat-grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;display:grid}.plat-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:30px 0 12px;font-size:.72rem;font-weight:700}.plat-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;display:flex}.plat-search{border:1px solid var(--line);background:#fff;border-radius:6px;flex:1;align-items:center;gap:8px;min-width:220px;padding:8px 11px;display:flex}.plat-search input{font-size:.9rem;font-family:var(--sans);color:var(--ink);background:0 0;border:none;outline:none;flex:1}.plat-select{border:1px solid var(--line);font-size:.88rem;font-family:var(--sans);color:var(--ink);background:#fff;border-radius:6px;padding:8px 11px}.plat-select:focus{outline:2px solid var(--teal);outline-offset:1px}.plat-tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:4px;margin-bottom:20px;display:flex}.plat-tab{color:var(--muted);cursor:pointer;font-size:.9rem;font-family:var(--sans);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:9px 14px}.plat-tab:hover{color:var(--ink)}.plat-tab.active{color:var(--navy);border-bottom-color:var(--teal);font-weight:600}.plat-chip{border:1px solid var(--line);color:var(--muted);cursor:pointer;font-size:.8rem;font-family:var(--sans);background:#fff;border-radius:20px;padding:6px 14px}.plat-chip:hover{border-color:var(--teal);color:var(--ink)}.plat-chip.active{background:var(--navy);border-color:var(--navy);color:#fff}.plat-table-wrap{border:1px solid var(--line-2);background:#fff;border-radius:10px;overflow:auto hidden}.plat-table{border-collapse:collapse;width:100%;font-size:.88rem}.plat-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:var(--paper-2);border-bottom:1px solid var(--line-2);white-space:nowrap;padding:11px 14px;font-size:.7rem;font-weight:700}.plat-table td{border-bottom:1px solid var(--line-2);color:var(--ink);vertical-align:middle;padding:11px 14px}.plat-table tr:last-child td{border-bottom:none}.plat-table tbody tr:hover{background:var(--paper-2)}.plat-table-cell-main{align-items:center;gap:10px;display:flex}.plat-table-name{color:var(--ink);font-weight:600}.plat-table-sub{color:var(--muted);font-size:.78rem}.plat-row-actions{justify-content:flex-end;gap:4px;display:flex}.plat-badge{border:1px solid var(--line);border-radius:20px;align-items:center;gap:4px;padding:3px 10px;font-size:.72rem;font-weight:600;display:inline-flex}.plat-badge--green{color:#06695b;background:#e1f3ef;border-color:#bfe5dd}.plat-badge--red{color:#b3261e;background:#fbf1f0;border-color:#e9c7c4}.plat-badge--amber{color:#8a5a00;background:#fbf1dd;border-color:#ecd9ae}.plat-badge--blue{color:#0b3e86;background:#e4edfb;border-color:#c5d6f1}.plat-badge--gray{color:var(--muted);background:var(--paper-2);border-color:var(--line)}.plat-badge--purple{color:#5b33a6;background:#eee6fa;border-color:#d8c7f0}.plat-badge--cefr{font-family:var(--mono);letter-spacing:.02em}.plat-cards-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.plat-card{border:1px solid var(--line-2);transition:box-shadow .15s var(--ease), border-color .15s var(--ease);background:#fff;border-radius:10px;flex-direction:column;gap:10px;padding:16px 18px;display:flex}.plat-card:hover{box-shadow:0 4px 14px #00000014}.plat-card-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.plat-card-title{font-family:var(--serif);color:var(--navy);margin:0;font-size:1.05rem}.plat-card-desc{color:var(--muted);font-size:.84rem;line-height:1.45}.plat-card-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;font-size:.78rem;display:flex}.plat-card-footer{justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:6px;display:flex}.plat-kanban{align-items:flex-start;gap:14px;padding-bottom:16px;display:flex;overflow-x:auto}.plat-kanban-col{background:var(--paper-2);border:1px solid var(--line-2);border-radius:10px;flex-direction:column;flex:none;width:280px;max-height:calc(100vh - 220px);display:flex}.plat-kanban-colhead{border-bottom:1px solid var(--line-2);justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.plat-kanban-coltitle{color:var(--navy);font-size:.82rem;font-weight:700}.plat-kanban-count{color:var(--muted);border:1px solid var(--line-2);background:#fff;border-radius:10px;padding:1px 7px;font-size:.72rem}.plat-kanban-cards{flex-direction:column;gap:8px;padding:10px;display:flex;overflow-y:auto}.plat-kanban-card{border:1px solid var(--line-2);cursor:pointer;background:#fff;border-radius:8px;padding:10px 12px;font-size:.84rem}.plat-kanban-card:hover{border-color:var(--teal);box-shadow:0 2px 8px #0000000f}.plat-kanban-card-title{color:var(--ink);margin-bottom:6px;font-weight:600}.plat-kanban-card-meta{flex-wrap:wrap;gap:6px;display:flex}.plat-progress{background:var(--line-2);border-radius:4px;height:7px;overflow:hidden}.plat-progress-bar{background:var(--teal);height:100%}.plat-form-grid{grid-template-columns:1fr 1fr;gap:0 16px;display:grid}.plat-form-grid .plat-field--full{grid-column:1/-1}@media (max-width:560px){.plat-form-grid{grid-template-columns:1fr}}.plat-field{flex-direction:column;gap:6px;margin-bottom:16px;font-size:.88rem;display:flex}.plat-field>span{color:var(--navy);font-weight:600}.plat-field input,.plat-field textarea,.plat-field select{font-family:var(--sans);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);background:#fff;width:100%;padding:9px 11px;font-size:.92rem}.plat-field input:focus,.plat-field textarea:focus,.plat-field select:focus{outline:2px solid var(--teal);outline-offset:1px}.plat-field textarea{resize:vertical;min-height:72px}.plat-modal-title{font-family:var(--serif);color:var(--navy);margin:0 0 4px;font-size:1.25rem}.plat-modal-sub{color:var(--muted);margin:0 0 20px;font-size:.86rem}.plat-modal-actions{justify-content:flex-end;gap:10px;margin-top:8px;display:flex}.plat-modal-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.plat-empty{text-align:center;color:var(--muted);border:1.5px dashed var(--line);background:var(--paper-2);border-radius:10px;padding:48px 20px}.plat-empty svg{color:var(--line);margin-bottom:10px}.plat-empty h3{color:var(--navy);font-family:var(--serif);margin:0 0 4px;font-size:1.1rem}.plat-empty p{margin:0;font-size:.88rem}.plat-loading{color:var(--muted);text-align:center;padding:40px 0;font-size:.9rem}.plat-bars{align-items:flex-end;gap:10px;height:160px;padding-top:10px;display:flex}.plat-bar-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:6px;height:100%;display:flex}.plat-bar{background:linear-gradient(180deg, var(--teal), var(--navy));border-radius:4px 4px 0 0;width:100%;max-width:42px;min-height:3px}.plat-bar-label{color:var(--muted);font-size:.72rem}.plat-bar-value{color:var(--navy);font-size:.74rem;font-weight:700}.plat-dist-row{align-items:center;gap:10px;margin-bottom:10px;display:flex}.plat-dist-label{width:44px;color:var(--navy);font-size:.78rem;font-weight:700;font-family:var(--mono)}.plat-dist-track{background:var(--line-2);border-radius:5px;flex:1;height:10px;overflow:hidden}.plat-dist-fill{background:var(--teal);height:100%}.plat-dist-count{text-align:right;width:34px;color:var(--muted);font-size:.8rem}.plat-banner{color:#8a5a00;background:#fbf1dd;border:1px solid #ecd9ae;border-radius:8px;align-items:center;gap:12px;margin-bottom:20px;padding:12px 16px;font-size:.88rem;display:flex}.plat-banner a{color:inherit;font-weight:700}.plat-list{flex-direction:column;gap:8px;display:flex}.plat-list-row{border:1px solid var(--line-2);background:#fff;border-radius:8px;align-items:center;gap:12px;padding:12px 14px;display:flex}.plat-list-row-main{flex:1;min-width:0}.plat-list-row-title{color:var(--ink);font-size:.9rem;font-weight:600}.plat-list-row-sub{color:var(--muted);margin-top:2px;font-size:.78rem}.plat-icon-btn{color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;place-items:center;padding:6px;display:grid}.plat-icon-btn:hover{background:var(--paper-2);color:var(--ink);border-color:var(--line-2)}.plat-icon-btn--danger:hover{color:#b3261e;background:#fbf1f0;border-color:#e9c7c4}.plat-login{background:#fff;grid-template-columns:minmax(340px,30%) 1fr;min-height:100vh;display:grid}.plat-login-form-col{background:#fff;flex-direction:column;justify-content:center;align-items:center;padding:48px clamp(28px,4vw,56px);display:flex;position:relative}.plat-login-box{width:100%;max-width:360px}.plat-login-brand{font-family:var(--serif);color:var(--navy);letter-spacing:-.01em;text-align:center;margin:0 0 30px;font-size:1.6rem;font-weight:600}.plat-login-brand span{color:var(--teal)}.plat-login-form{width:100%}.plat-login-error{color:#b3261e;border-radius:var(--radius);background:#fbf1f0;border:1px solid #e9c7c4;margin-bottom:16px;padding:9px 12px;font-size:.84rem}.plat-login-success{color:#06695b;border-radius:var(--radius);background:#e1f3ef;border:1px solid #bfe5dd;margin-bottom:14px;padding:9px 12px;font-size:.84rem}.plat-login-form .crm-btn{width:100%;margin-top:6px;padding:11px 16px}.plat-login-remember{color:var(--muted);cursor:pointer;align-items:center;gap:8px;margin:2px 0 18px;font-size:.86rem;display:flex}.plat-login-remember input{width:15px;height:15px;accent-color:var(--teal)}.plat-login-foot{text-align:center;color:var(--muted);font-size:.76rem;position:absolute;bottom:22px;left:0;right:0}.plat-input-wrap{display:flex;position:relative}.plat-input-icon{color:var(--muted);pointer-events:none;place-items:center;display:grid;position:absolute;top:50%;left:11px;transform:translateY(-50%)}.plat-input-wrap input{width:100%;padding-left:36px}.plat-login-form .crm-password-wrap input{padding-left:36px}.plat-social{flex-direction:column;gap:10px;display:flex}.plat-social-btn{border:1px solid var(--line);border-radius:var(--radius);width:100%;color:var(--ink);cursor:pointer;font-size:.9rem;font-weight:500;font-family:var(--sans);transition:background .15s var(--ease), border-color .15s var(--ease);background:#fff;justify-content:center;align-items:center;gap:10px;padding:11px 16px;display:flex}.plat-social-btn:hover{border-color:var(--navy);background:var(--paper-2)}.plat-social-btn:disabled{opacity:.6;cursor:not-allowed}.plat-social-btn svg{flex:none}.plat-login-divider{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:12px;margin:20px 0;font-size:.76rem;display:flex}.plat-login-divider:before,.plat-login-divider:after{content:"";background:var(--line);flex:1;height:1px}.plat-forgot{color:var(--teal-ink);cursor:pointer;font-size:.82rem;font-family:var(--sans);background:0 0;border:none;margin-top:-6px;margin-bottom:14px;margin-left:auto;padding:0;display:block}.plat-forgot:hover{text-decoration:underline}.plat-forgot-actions{gap:8px;display:flex}.plat-forgot-actions .crm-btn{margin-top:0}.plat-login-banner{color:#fff;background:var(--navy);flex-direction:column;justify-content:flex-end;padding:clamp(40px,5vw,72px);display:flex;position:relative;overflow:hidden}.plat-login-slides{z-index:1;min-height:200px;position:relative}.plat-login-slide{opacity:0;transition:opacity .6s var(--ease), transform .6s var(--ease);pointer-events:none;flex-direction:column;justify-content:flex-end;display:flex;position:absolute;inset:0;transform:translateY(14px)}.plat-login-slide.active{opacity:1;pointer-events:auto;transform:translateY(0)}.plat-login-slide-icon{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff29;border:1px solid #ffffff38;border-radius:14px;place-items:center;width:56px;height:56px;margin-bottom:22px;display:grid}.plat-login-slide h3{font-family:var(--serif);color:#fff;max-width:620px;margin:0 0 14px;font-size:clamp(1.6rem,2.6vw,2.3rem);font-weight:600;line-height:1.15}.plat-login-slide p{color:#ffffffe6;max-width:560px;margin:0;font-size:1.02rem;line-height:1.6}.plat-login-dots{z-index:1;gap:9px;margin-top:40px;display:flex;position:relative}.plat-login-dot{cursor:pointer;width:30px;height:4px;transition:background .3s var(--ease);background:#ffffff59;border:none;border-radius:2px;padding:0}.plat-login-dot.active{background:#fff}.plat-login-banner-top{z-index:1;font-family:var(--serif);align-items:center;gap:10px;margin-bottom:auto;font-size:1.1rem;font-weight:600;display:flex;position:relative}@media (max-width:900px){.plat-login{grid-template-columns:1fr}.plat-login-banner{display:none}.plat-login-form-col{min-height:100vh}}
