:root{color-scheme:dark;--bg:#080a0e;--panel:#101319;--panel2:#171c24;--border:#ffffff12;--text:#f1f3f6;--muted:#858d9a;--blue:#2b70f7;--cyan:#9abcff;--green:#88c9ad;--red:#ee9b9b;--radius:18px;font-family:"Segoe UI",Arial,sans-serif;font-size:14px;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;color:var(--text);background:var(--bg);min-height:100vh;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 88% -12%,#23478a24,transparent 54%);z-index:-1}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:11px 17px;border:1px solid #ffffff19;border-radius:9px;background:#191e26;color:#e9edf4;font-weight:550;cursor:pointer;text-decoration:none;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s}button:hover,.button:hover{background:#222b38;border-color:#789acf65;box-shadow:0 4px 20px #125ac710}button:active{transform:translateY(1px)}button:disabled{opacity:.4;cursor:default}button.primary,.button.primary{color:#fff;background:linear-gradient(110deg,#2665dc,#327cfc);border-color:#5b92ff66;box-shadow:0 6px 22px #185fee25;position:relative;overflow:hidden}button.primary:after,.button.primary:after{content:"";position:absolute;width:35%;height:200%;top:-50%;left:-70%;background:linear-gradient(90deg,transparent,#ffffff20,transparent);transform:skew(-24deg);transition:left .7s ease;pointer-events:none}button.primary:hover:after,.button.primary:hover:after{left:140%}button.primary:hover,.button.primary:hover{box-shadow:0 0 28px #3078ff35;border-color:#a4c6ff88}button.ghost{background:transparent;border-color:#ffffff13}button.danger{background:#512931;color:#ffc6c6;border-color:#b66c6940}button.danger.ghost{background:transparent;color:#ec9b9b;border-color:#ba666633}:focus-visible{outline:2px solid #81acff;outline-offset:4px}svg.icon{width:19px;height:19px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(30px,3.1vw,44px);letter-spacing:-1.6px;font-weight:550;line-height:1.15;margin-bottom:12px}h2{font-size:21px;letter-spacing:-.55px;font-weight:550;margin-bottom:0}h3{font-size:17px;letter-spacing:-.3px;margin:22px 0 12px;font-weight:550}p{line-height:1.65}small,.muted{color:var(--muted)}small{font-size:12px}.eyebrow,.section-kicker,.nav-label{font-size:10px;font-weight:600;letter-spacing:1.7px;text-transform:uppercase}.eyebrow{display:flex;align-items:center;gap:9px;color:#8799b5;margin:0 0 14px}.eyebrow>span{color:#8cb4ff;font-family:Georgia,serif;font-size:19px;line-height:1}.section-kicker{color:#717e92;font-size:9px;margin-bottom:9px;letter-spacing:1.8px}.layout{display:grid;grid-template-columns:228px minmax(0,1fr);min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:228px;padding:30px 20px 23px;background:linear-gradient(180deg,#0d1016,#090b0f);border-right:1px solid #ffffff0c;display:flex;flex-direction:column;z-index:20}.brand{display:flex;flex-direction:column;align-items:center;text-align:center;padding-bottom:29px;margin-bottom:27px;border-bottom:1px solid #ffffff0d}.brand img{width:116px;height:116px;object-fit:contain;filter:drop-shadow(0 0 24px #0a65df25);transition:filter .6s,transform .6s}.brand:hover img{filter:drop-shadow(0 0 32px #167bff50);transform:translateY(-2px)}.brand strong{display:block;font-size:20px;font-weight:600;letter-spacing:2.4px;margin-top:15px}.brand strong span{font-weight:350;color:#a4b7d8}.brand small{display:block;font-size:8px;letter-spacing:1.25px;margin-top:8px;color:#73829b}.nav-label{color:#586373;font-size:9px;margin:0 13px 16px;letter-spacing:1.3px}.nav{display:grid;gap:8px}.nav a{display:flex;gap:12px;align-items:center;font-size:12px;font-weight:500;color:#8b95a6;padding:13px 12px;border:1px solid transparent;border-radius:8px;transition:.2s}.nav a .icon{width:17px;height:17px;opacity:.8}.nav a:hover{color:#e8edf8;background:#ffffff05}.nav a.active{color:#edf3ff;background:linear-gradient(100deg,#2c63ac28,#2c63ac08);border-color:#5d8ac52a;box-shadow:inset 2px 0 0 #6198ff}.nav a.active .icon{color:#91b8ff;opacity:1}.nav a.active:after{content:"";width:4px;height:4px;background:#78a8ff;box-shadow:0 0 10px #528dff;border-radius:50%;margin-left:auto}.admin-nav-label{margin-top:30px!important}.sidebar-signature{display:flex;align-items:center;flex-direction:column;gap:12px;margin:auto 0 28px;padding-top:35px}.sidebar-signature>span{font-size:25px;color:#3d4a61;font-family:Georgia,serif}.sidebar-signature small{font-size:8px;color:#475365;letter-spacing:2px}.sidebar-signature>div{width:30px;height:1px;background:#45557050}.sidebar-bottom{border-top:1px solid #ffffff0d;padding-top:22px}.user-nav{display:flex;align-items:center;gap:10px}.names{min-width:0;flex:1}.names strong{display:block;font-size:12px;font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.names small{font-size:10px;display:block;margin-top:5px;color:#637189}.icon-button{padding:8px;min-height:34px;min-width:34px}.user-nav .icon-button{border:0;color:#6d7a8e}.avatar{width:34px;height:34px;flex-shrink:0;overflow:hidden;border-radius:50%;border:1px solid #ffffff26;background:#1c2535;display:inline-flex}.avatar img{width:100%;height:100%;object-fit:cover}.avatar.large{width:62px;height:62px}.main{grid-column:2;min-width:0}.topbar{height:74px;display:flex;align-items:center;justify-content:space-between;padding:0 42px;border-bottom:1px solid #ffffff08;background:#090c11aa;gap:12px}.breadcrumb{font-size:11px;color:#5e6d83;letter-spacing:.15px}.breadcrumb span{margin-left:14px;color:#657389}.breadcrumb b{color:#c0cad9;font-weight:500;margin-left:12px}.topbar-right{display:flex;gap:22px;align-items:center;color:#728198;font-size:10px}.private-badge{display:inline-flex;align-items:center;gap:7px;color:#9daabd;font-size:10px}.private-badge .icon{width:13px;height:13px}.dot{display:inline-block;width:4px;height:4px;background:#7ec5a5;border-radius:50%;margin-right:8px;box-shadow:0 0 8px #67cfa950}.content{max-width:1600px;padding:40px 42px 34px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:32px}.page-heading>div>p:last-child{margin:0;font-size:12px;color:#7d889a}.heading-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.heading-actions button{font-size:12px;min-height:43px}.page-heading .primary{min-height:46px;padding:12px 20px}.stats{display:grid;grid-template-columns:1.7fr repeat(3,minmax(0,1fr));gap:14px;margin-bottom:28px}.stat{position:relative;overflow:hidden;min-width:0;padding:24px 22px;border:1px solid #ffffff0c;background:linear-gradient(120deg,#151922,#10141c);border-radius:14px;display:flex;flex-direction:column;justify-content:center;min-height:151px;transition:transform .3s,border-color .3s}.stat:hover{transform:translateY(-2px);border-color:#839ec433}.stat-title{display:flex;align-items:center;gap:9px;color:#96a0b0;font-size:11px;position:relative;z-index:1}.stat-title .icon{width:15px;height:15px;color:#759ad0}.stat-value{font-size:clamp(24px,2.2vw,35px);font-weight:550;letter-spacing:-1px;margin:17px 0 9px;line-height:1.1;font-variant-numeric:tabular-nums;position:relative;z-index:1;overflow-wrap:anywhere}.stat-foot{font-size:10px;color:#626e80;position:relative;z-index:1;line-height:1.5}.stat-foot strong{font-weight:500}.stat-money{background:linear-gradient(120deg,#f7f9fd 0%,#e0e7f0 70%,#c4d1e1 100%);border-color:#f1f5ff;color:#101c32;box-shadow:0 10px 35px #00000030}.stat-money .stat-title{color:#46576c}.stat-money .stat-title .icon{color:#3568b6}.stat-money .stat-value{font-size:clamp(27px,2.6vw,41px);letter-spacing:-1.4px}.stat-money .stat-foot{color:#62738b}.stat-watermark{position:absolute;right:-2px;bottom:-36px;font-family:Georgia,serif;font-size:155px;line-height:1;color:#40609c0d;transform:rotate(-10deg);pointer-events:none}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,1fr);gap:24px}.panel{min-width:0;padding:26px;background:linear-gradient(150deg,#13171f,#0f1219);border:1px solid #ffffff0e;border-radius:var(--radius);box-shadow:0 5px 30px #0000000a}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:25px}.panel-head>div>small{display:block;margin-top:9px;font-size:11px}.panel-head .muted{font-size:12px;margin:8px 0 0}.panel-head>.icon{color:#667d9f;margin-top:5px;width:19px}.panel-emblem{font-family:Georgia,serif;color:#445b7c;font-size:26px}.activity-panel{position:relative;overflow:hidden}.activity-panel:before{content:"";position:absolute;top:-150px;right:-100px;width:300px;height:300px;background:radial-gradient(circle,#236be014,transparent 70%);pointer-events:none;animation:breathe 8s ease-in-out infinite alternate}.controls{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.controls select{max-width:100%}.segmented{display:inline-flex;gap:2px;border-bottom:1px solid #ffffff0f;padding:0 0 4px;background:transparent}.segmented button{min-height:30px;padding:7px 11px;border:0;border-radius:6px;font-size:10px;background:transparent;color:#687a96;box-shadow:none}.segmented button.active{background:#d6e3ff11;color:#d5e4ff}.small-select{width:auto;min-height:34px;padding:8px 27px 8px 11px;font-size:11px;max-width:100%}.chart-toolbar{margin-bottom:24px}.chart-toolbar .controls{justify-content:space-between;gap:14px}.chart-summary{display:flex;flex-direction:column;gap:8px;margin:23px 0 13px}.chart-main-number{font-size:32px;font-weight:450;letter-spacing:-1px;line-height:1.15}.chart-legend{color:#75849a;font-size:10px;display:flex;align-items:center;gap:8px}.chart-legend:before{content:"";width:4px;height:4px;background:#5e97ff;border-radius:50%;box-shadow:0 0 8px #4a8aff80}.chart{width:100%;height:210px;overflow:visible}.chart text{fill:#5d6c84;font-size:10px}.chart .gridline{stroke:#a7bcda12;stroke-width:1;stroke-dasharray:2 7}.chart .line{stroke:#659aff;stroke-width:2.2;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:0;animation:draw-line .9s ease-out;filter:drop-shadow(0 0 5px #377dff45)}.chart-empty{position:relative}.empty-overlay{position:absolute;inset:70px 0;display:flex;align-items:center;justify-content:center;color:#5a6b86;font-size:11px;pointer-events:none}.rank-controls{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:8px}.rank-controls select{width:100%;font-size:10px;padding-left:10px}.ranking-panel{display:flex;flex-direction:column}.rank-list{flex:1}.rank-row{display:flex;align-items:center;gap:13px;padding:16px 0;border-bottom:1px solid #ffffff08}.rank-row:last-child{border-bottom:0}.rank-place{display:flex;align-items:center;justify-content:center;width:39px;flex-shrink:0}.medal{width:34px;height:43px;overflow:visible;filter:drop-shadow(0 3px 6px #0006);transition:transform .25s,filter .25s}.podium-row:hover .medal{transform:translateY(-2px) rotate(-5deg);filter:drop-shadow(0 0 8px #bdd7ff35)}.rank-number{display:block;font-size:14px;color:#5b6b84;text-align:center;font-variant-numeric:tabular-nums}.rank-name{flex:1;min-width:0}.rank-name strong{display:block;font-size:12px;font-weight:550;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.rank-name small{display:block;font-size:9px;color:#67738a;margin-top:6px}.rank-score{font-size:12px;white-space:nowrap;color:#c5d1e8;font-weight:500;font-variant-numeric:tabular-nums}.panel-link,.text-link{display:flex;align-items:center;justify-content:center;gap:9px;color:#9eafca;font-size:11px}.panel-link{padding-top:18px;margin-top:12px;border-top:1px solid #ffffff09}.panel-link .icon,.text-link .icon{width:14px;height:14px}.text-link:hover,.panel-link:hover{color:white}.section-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:33px 0 20px}.section-head h2{font-size:21px}.section-head p:not(.section-kicker){color:var(--muted);font-size:11px;margin:6px 0 0}.section-head small{font-size:10px}.badge{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid #6f96d822;border-radius:5px;font-size:9px;color:#a2b9dc;background:#376dce0d;line-height:1.3;letter-spacing:.25px;white-space:nowrap}.badge.good{color:#9bc7b5;border-color:#629e8227;background:#4d8c7110}.badge.warn{color:#d6b88c;border-color:#b5976b30;background:#b5976b0c}.badge.bad{color:#dba2a2;border-color:#a46c6c30;background:#a46c6c0d}.quota-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.quota{padding:23px 24px;background:linear-gradient(125deg,#141923,#10141b);border-radius:13px;border:1px solid #ffffff0c}.quota-top{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:500;margin-bottom:23px}.quota-icon{display:flex;color:#8ba8d7}.quota-icon .icon{width:17px;height:17px}.quota-top .badge{margin-left:auto;font-size:8px}.quota-value{font-size:28px;font-weight:500;letter-spacing:-.8px;font-variant-numeric:tabular-nums}.quota-value small{font-size:13px;font-weight:400;color:#546278;margin-left:6px;letter-spacing:0}.progress{height:3px;background:#27324880;border-radius:4px;overflow:hidden;margin:16px 0 12px}.progress span{display:block;height:100%;background:linear-gradient(90deg,#337af6,#a4c5ff);border-radius:4px;animation:progress .8s ease-out;box-shadow:0 0 12px #679dff70}.quota-foot{display:flex;justify-content:space-between;color:#66738a;font-size:9px;gap:8px}.recent-panel{margin-top:30px}.table-wrap{overflow-x:auto}.activity-table{width:100%;border-collapse:collapse;font-size:12px}.table-wrap .activity-table{min-width:560px}.activity-table th{text-align:left;font-size:9px;font-weight:500;letter-spacing:1.3px;text-transform:uppercase;color:#6a7890;padding:14px 13px;border-bottom:1px solid #ffffff12;white-space:nowrap}.activity-table td{padding:18px 13px;border-bottom:1px solid #ffffff08;color:#9eabc1;vertical-align:middle;line-height:1.5}.activity-table tr:last-child td{border-bottom:0}.activity-table td strong{color:#dde4f1;font-weight:500}.activity-table td small{font-size:10px}.activity-table td a{color:#b5c9ed;font-size:11px}.activity-table td a:hover{color:white}.activity-table tbody tr{transition:background .2s}.activity-table tbody tr:hover{background:#c4d9ff03}.money{font-variant-numeric:tabular-nums;color:#c8d6ed!important}.empty{text-align:center;padding:32px 16px;color:#6d7b94;font-size:12px;line-height:1.8}.footer{display:flex;justify-content:space-between;gap:15px;margin-top:33px;padding-top:20px;border-top:1px solid #ffffff07;color:#47546c;font-size:9px;letter-spacing:.5px}.callout{display:flex;align-items:center;gap:14px;background:#244c9012;border:1px solid #5986ca25;border-radius:10px;padding:16px 18px;font-size:12px;color:#aabedf;margin-bottom:20px}.callout p{margin:0}.error{background:#45253066;border:1px solid #a4516745;border-radius:9px;padding:14px 16px;color:#efb5bf;font-size:12px;line-height:1.6;margin:16px 0}.field-error:empty{display:none}.loading{min-height:100vh;display:grid;place-content:center;text-align:center;color:#8493a9}.loading img{width:115px;margin:0 auto 25px;filter:drop-shadow(0 0 35px #2371df35)}.loading p{font-size:12px;letter-spacing:.5px}
label{display:grid;gap:9px;font-size:11px;color:#a3afc2;margin-bottom:17px;min-width:0}input,select,textarea{width:100%;min-width:0;min-height:44px;padding:11px 12px;border:1px solid #ffffff17;border-radius:8px;color:#dce5f4;background:#0b0f16;transition:border-color .2s,box-shadow .2s}input:focus,select:focus,textarea:focus{border-color:#6793df88;outline:none;box-shadow:0 0 0 3px #3d73ce0c}input::placeholder{color:#465570}input[type=file]{font-size:11px;padding:9px}input[type=checkbox]{width:16px;min-height:16px}textarea{min-height:90px;resize:vertical}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.full{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:26px}.form-actions button{font-size:12px}.check-label{display:flex;align-items:center;gap:9px}.filter-bar{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:23px}.filter-bar label{flex:1;min-width:120px;margin:0}.filter-bar button{font-size:11px}.pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:24px;font-size:11px;color:#8290a8}.pagination button{font-size:11px;min-height:34px;padding:7px 12px}.tabbar{display:flex;gap:25px;overflow-x:auto;border-bottom:1px solid #ffffff12;margin-bottom:25px;padding-bottom:0}.tabbar button{border:0;border-bottom:2px solid transparent;background:transparent;border-radius:0;padding:0 1px 15px;white-space:nowrap;font-size:12px;min-height:39px;color:#75839a;box-shadow:none}.tabbar button.active{border-bottom-color:#8fb5ff;color:#e2ebfa}.admin-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:25px}.member-name{display:flex;align-items:center;gap:10px}.admin-invite{display:flex;gap:9px;flex-wrap:wrap}.report-value{white-space:nowrap;line-height:1.8}.report-value .badge{margin-top:5px}.count-label{font-size:11px;color:#6c7d99;padding-top:8px;white-space:nowrap}.journal-list{margin-top:25px}.journal-entry{display:flex;gap:20px;position:relative;padding:0 0 30px;margin-bottom:8px}.journal-entry:not(:last-child):before{content:"";position:absolute;top:37px;bottom:0;left:17px;width:1px;background:linear-gradient(#32486660,#32486620)}.journal-mark{width:35px;height:35px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#92b4f0;background:#1a2a452e;border:1px solid #5c84c12d;border-radius:50%}.journal-mark .icon{width:16px;height:16px}.journal-body{min-width:0;flex:1;padding-bottom:20px;border-bottom:1px solid #ffffff08}.journal-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin:3px 0 13px}.journal-head strong{font-size:14px;font-weight:550;color:#eef2fa}.journal-head a:hover{color:#a7c7ff}.journal-head time{font-size:11px;color:#657592;font-variant-numeric:tabular-nums}.journal-entry h3{font-size:12px;font-weight:500;color:#a9b8cf;margin:0 0 7px}.journal-values{margin:0;font-size:14px;color:#d8e2f3;font-variant-numeric:tabular-nums}.journal-corrections{margin-top:17px}.journal-corrections summary{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:10px;color:#b4a58c}.correction{padding:16px;margin-top:13px;background:#ffffff03;border:1px solid #ffffff0a;border-radius:9px}.correction>small{display:block;font-size:10px;margin-bottom:16px}.correction>div{display:flex;gap:18px;align-items:baseline;margin:9px 0}.correction>div>span{font-size:10px;min-width:35px;color:#6c7d99}.correction p{font-size:12px;margin:0}.correction>div:nth-child(2) p{color:#7c899f;text-decoration:line-through;text-decoration-color:#ffffff18}
.profile-grid{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(0,1.6fr);gap:27px;align-items:start}.profile-main{display:grid;gap:25px}.profile-head{display:flex;align-items:center;gap:17px}.profile-head h2{font-size:25px;margin-bottom:12px}.profile-head .section-kicker{margin-bottom:8px}.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px;margin:28px 0}.info-item small{display:block;font-size:10px;margin-bottom:7px;color:#6f7c91}.info-item strong{display:block;font-size:13px;font-weight:500;overflow-wrap:anywhere}.identity-card{padding-top:23px;border-top:1px solid #ffffff0d}.identity-card .section-kicker{margin-bottom:15px}.rp-card{display:block;width:100%;max-height:290px;object-fit:contain;border-radius:11px;background:linear-gradient(130deg,#d9e2ee12,#72809b08);border:1px solid #bacded20;padding:10px}.credential-block{border-bottom:1px solid #ffffff0b;padding:25px 0}.credential-block>small{font-size:11px}.credential-block summary{display:flex;align-items:center;justify-content:space-between;margin-top:10px;cursor:pointer;color:#c3d6f5;font-size:12px}.credential-block summary .icon{width:14px;height:14px;color:#6686b8}.microcopy{font-size:10px;color:#566982;margin:13px 0 0;line-height:1.6}.secret{padding:16px;border:1px solid #376bae55;background:#0b1930;color:#b1ccfa;border-radius:9px;font-family:Consolas,monospace;font-size:12px;overflow-wrap:anywhere;margin:18px 0;user-select:all}.profile-lifetime{padding-top:25px}.profile-lifetime .info-grid{margin-bottom:0}.profile-lifetime strong{font-size:21px;color:#d7e5fb;letter-spacing:-.5px}.admin-member-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:27px;padding-top:25px;border-top:1px solid #ffffff0c}.admin-member-actions .section-kicker{width:100%;margin-bottom:5px}.admin-member-actions button{font-size:11px}.back-link{display:inline-flex;align-items:center;color:#7f95b7;font-size:11px;margin:0 0 25px}.back-link:hover{color:white}.calendar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.calendar button{display:block;text-align:left;padding:17px 16px;background:#ffffff02;border:1px solid #ffffff0d;border-radius:11px;box-shadow:none;font-size:11px;font-weight:400}.calendar button:hover{background:#233d661c;border-color:#8aa5cf3a}.calendar button strong{font-weight:500;font-size:12px;color:#c5d3eb}.calendar button small{display:block;font-size:10px;margin:10px 0 12px;color:#637590}.calendar .badge{font-size:8px}.absence-row{border-bottom:1px solid #ffffff0a;padding:15px 0}.absence-row:last-child{border-bottom:0}.absence-row strong{font-size:12px;font-weight:500}.absence-row p{font-size:12px;color:#7e8ca3;margin:8px 0 0}.absences-panel .muted{font-size:12px;margin-bottom:0}.spacer{height:22px}
dialog{padding:0;background:linear-gradient(145deg,#191f2b,#11161f);color:var(--text);border:1px solid #6d87b33d;border-radius:20px;width:min(570px,calc(100% - 32px));max-height:90vh;overflow-y:auto;box-shadow:0 30px 100px #000b,0 0 100px #175bdd08}dialog[open]{animation:enter .25s ease-out}dialog::backdrop{background:#020407bc;backdrop-filter:blur(8px)}.modal-body{padding:29px}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:13px}.modal-head h2{font-size:23px;font-weight:500;letter-spacing:-.6px}.modal-body>p{font-size:12px;color:#7d8da7;margin:0 0 25px}#toasts{position:fixed;right:25px;bottom:25px;z-index:100;display:grid;gap:10px;max-width:calc(100% - 40px)}.toast{background:#162720ed;border:1px solid #658d7745;border-radius:12px;box-shadow:0 10px 40px #0005;padding:15px 20px;color:#b8d6c7;font-size:12px;animation:enter .25s}.toast.error{background:#42212e;color:#f1b2bf;border-color:#94506b66;margin:0}.login{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr}.login-art{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:60px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 35%,#214b942a,transparent 63%),#090d14;border-right:1px solid #ffffff09}.login-art:before,.login-art:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:580px;height:580px;border:1px solid #456aa024;border-radius:50%;pointer-events:none}.login-art:after{width:660px;height:660px;border-color:#456aa010}.login-art img{width:min(360px,80%);height:auto;position:relative;filter:drop-shadow(0 0 45px #2b74ed23);margin-bottom:35px;animation:breathe 7s ease-in-out infinite alternate}.login-art h1{font-size:44px;letter-spacing:6px;font-weight:500}.login-art>p:not(.eyebrow){max-width:300px;font-size:13px;color:#8195b5}.login-art>.eyebrow{font-size:9px;color:#5c7ca9}.login-art .private-badge{margin-top:20px;font-size:10px;color:#536c92}.login-form{display:flex;align-items:center;justify-content:center;padding:50px}.auth-card{width:100%;max-width:410px}.auth-card h1{font-size:33px;letter-spacing:-1.1px}.auth-card>.muted{font-size:12px;margin-bottom:30px}.auth-card .segmented{display:flex;margin-bottom:28px;padding-bottom:8px;gap:7px}.auth-card .segmented button{flex:1;font-size:11px;min-height:39px}.auth-card button[type=submit]{width:100%;margin-top:13px}.auth-note{display:flex;align-items:center;justify-content:center;gap:8px;font-size:10px;color:#51627e;margin-top:25px}.auth-note .icon{width:13px;height:13px}.mobile-logo{display:none}.install{padding:45px 20px}.install-card{max-width:660px;margin:auto;padding:38px;border:1px solid #ffffff17;border-radius:21px;background:#111722}.install-logo{width:100px;margin-bottom:28px;display:block}.install-card h1{font-size:31px}.install-card p{font-size:12px}.install-card button[type=submit]{width:100%}.menu-toggle,.nav-scrim{display:none}
@keyframes enter{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@keyframes progress{from{width:0}}@keyframes draw-line{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes breathe{from{opacity:.75}to{opacity:1}}.panel,.stat,.quota{animation:enter .5s ease-out both}.stats .stat:nth-child(2){animation-delay:.04s}.stats .stat:nth-child(3){animation-delay:.08s}.stats .stat:nth-child(4){animation-delay:.12s}
@media(min-width:1650px){.content{padding:46px 58px}.topbar{padding:0 58px}.stats{gap:20px}.stat{min-height:165px;padding:27px}.panel{padding:30px}.chart{height:250px}.dashboard-grid{gap:28px}.rank-row{padding:20px 0}}
@media(max-width:1250px){.layout{grid-template-columns:205px minmax(0,1fr)}.sidebar{width:205px;padding:26px 15px 22px}.brand img{width:104px;height:104px}.content{padding:32px 28px}.topbar{padding:0 28px}.stats{grid-template-columns:1.4fr repeat(3,minmax(0,1fr));gap:10px}.stat{padding:20px 16px}.stat-title{font-size:10px;gap:7px}.stat-money .stat-value{font-size:30px}.stat-value{font-size:27px}.stat-foot{font-size:9px}.dashboard-grid{grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:18px}.panel{padding:23px}.rank-row{gap:10px}.rank-score{font-size:11px}.quota{padding:20px}.quota-top{font-size:11px;gap:7px}.quota-top .badge{font-size:7px}.profile-grid{grid-template-columns:minmax(290px,1fr) minmax(0,1.4fr);gap:20px}.chart-toolbar .controls{gap:10px}.segmented button{padding:7px 9px;font-size:9px}}
@media(max-width:1020px){.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.stat{padding:23px;min-height:145px}.stat-value,.stat-money .stat-value{font-size:33px}.stat-title{font-size:11px}.stat-foot{font-size:10px}.dashboard-grid{grid-template-columns:1fr}.ranking-panel .rank-list{display:grid;grid-template-columns:1fr}.rank-controls{max-width:400px}.rank-row{padding:15px 0}.rank-name strong{font-size:13px}.rank-score{font-size:13px}.quota-grid{gap:12px}.quota-top{flex-wrap:wrap}.quota-top .badge{margin-left:0}.profile-grid,.admin-grid{grid-template-columns:1fr}.identity-panel .rp-card{max-height:300px}.calendar{grid-template-columns:repeat(3,minmax(0,1fr))}.page-heading{align-items:flex-start}.heading-actions{justify-content:flex-end}.panel-head{flex-wrap:wrap}.login-form{padding:35px}.login-art{padding:35px}.login-art h1{font-size:35px}}
@media(max-width:760px){.layout{display:block}.sidebar{transform:translateX(-100%);transition:transform .25s ease;width:250px;box-shadow:15px 0 60px #0009}.sidebar.open{transform:translateX(0)}.sidebar.open+.nav-scrim{display:block;position:fixed;inset:0;background:#0008;border:0;border-radius:0;z-index:15;backdrop-filter:blur(4px)}.main{width:100%;min-width:0}.menu-toggle{display:inline-flex}.topbar{height:64px;padding:0 18px}.topbar>.controls{gap:9px;flex-wrap:nowrap}.breadcrumb{font-size:9px}.breadcrumb span{margin-left:6px}.breadcrumb b{margin-left:5px}.topbar-right{gap:12px;font-size:9px}.private-badge{font-size:9px}.private-badge .icon{width:12px;height:12px}.content{padding:29px 20px 30px}.page-heading{margin-bottom:25px;gap:20px;flex-wrap:wrap}.page-heading h1{font-size:34px;letter-spacing:-1.3px}.page-heading>div>p:last-child{font-size:11px}.eyebrow{font-size:8px;letter-spacing:1.5px}.eyebrow>span{font-size:17px}.heading-actions{justify-content:flex-start;width:100%;gap:9px}.heading-actions button{flex:1;font-size:11px;white-space:nowrap}.page-heading .primary{font-size:12px}.stats{gap:12px;margin-bottom:21px}.stat{padding:19px 17px;border-radius:12px;min-height:143px}.stat-title{font-size:10px;gap:7px}.stat-title .icon{width:14px;height:14px}.stat-value,.stat-money .stat-value{font-size:clamp(23px,5.5vw,32px);letter-spacing:-.8px;line-height:1.2}.stat-foot{font-size:9px}.stat-watermark{font-size:130px;bottom:-33px}.panel{padding:22px 20px;border-radius:14px}.panel-head{margin-bottom:24px}.panel-head h2{font-size:20px}.section-kicker{font-size:8px;letter-spacing:1.6px;margin-bottom:10px}.dashboard-grid{gap:21px}.chart-toolbar{margin-bottom:20px}.chart-toolbar .controls{align-items:flex-start;gap:15px}.chart-toolbar .small-select{font-size:11px;min-width:145px}.segmented button{font-size:10px;padding:8px 10px}.chart-summary{margin:23px 0 16px}.chart-main-number{font-size:29px}.chart{height:210px}.rank-row{gap:13px}.rank-name strong{font-size:12px}.rank-score{font-size:12px}.rank-name small{font-size:9px}.rank-controls{gap:8px}.rank-controls select{font-size:10px}.panel-link{font-size:11px}.quota-grid{grid-template-columns:1fr;gap:12px}.quota{padding:23px;border-radius:12px}.quota-top{flex-wrap:nowrap;font-size:13px;margin-bottom:21px;gap:11px}.quota-top .badge{margin-left:auto;font-size:8px}.quota-value{font-size:29px}.quota-foot{font-size:10px}.section-head{margin-top:31px;gap:15px;flex-wrap:wrap}.section-head h2{font-size:21px}.section-head small{font-size:10px}.recent-panel{margin-top:23px}.text-link{font-size:10px}.activity-table td{padding:17px 11px}.footer{flex-direction:column;gap:10px;font-size:8px}.profile-head h2{font-size:25px}.profile-grid{gap:20px}.profile-main{gap:20px}.profile-head .section-kicker{font-size:8px}.info-grid{gap:22px 20px}.info-item small{font-size:10px}.calendar{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar button{padding:14px 12px;font-size:10px}.calendar button strong{font-size:11px}.calendar button small{font-size:9px;line-height:1.6}.calendar .badge{font-size:7px}.filter-bar{gap:10px}.filter-bar label{min-width:calc(50% - 10px)}.filter-bar button{flex:1;font-size:11px}.admin-invite{width:100%}.admin-invite button{font-size:10px;padding:11px}.tabbar{gap:23px;margin-bottom:23px}.tabbar button{font-size:11px}.journal-entry{gap:13px}.journal-head{align-items:flex-start;gap:7px;flex-direction:column}.journal-head strong{font-size:13px}.journal-head time{font-size:10px}.journal-values{font-size:12px;line-height:1.8}.journal-mark{width:30px;height:30px}.journal-entry:not(:last-child):before{left:14px;top:32px}.correction{padding:13px}.correction p{font-size:11px}.correction>div{gap:8px}.form-grid{gap:0 12px}.modal-body{padding:24px}.modal-head h2{font-size:22px}.form-actions button{font-size:11px;padding:11px 13px}.login{display:block}.login-art{display:none}.login-form{min-height:100vh;padding:35px 25px}.mobile-logo{display:block;width:122px;margin:0 auto 29px;filter:drop-shadow(0 0 30px #1d72ec25)}.auth-card h1{font-size:31px;text-align:center}.auth-card>.muted{text-align:center;font-size:12px}.install{padding:25px 15px}.install-card{padding:25px}.install-card h1{font-size:28px}}
@media(max-width:400px){.content{padding:26px 15px}.topbar{padding:0 14px}.private-badge{display:none}.stats{gap:9px}.stat{padding:18px 13px}.stat-title{font-size:9px}.stat-value,.stat-money .stat-value{font-size:23px}.panel{padding:21px 17px}.calendar{grid-template-columns:1fr}.journal-head time{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

#view.quiet-refresh *,#view.quiet-refresh *::before,#view.quiet-refresh *::after{animation:none!important}
/* LDS — édition claire */
:root{color-scheme:light;--bg:#fff;--panel:#fff;--panel2:#f5f7fa;--border:#e3e8ef;--text:#182238;--muted:#69768a;--blue:#125ddc;--cyan:#2462ba;--green:#287556;--red:#b23b4d}
body{background:#fff}body:before{display:none}.sidebar{background:#fff;border-color:#e6eaf0}.brand,.sidebar-bottom{border-color:#e4e8ef}.brand strong{color:#17243c}.brand strong span{color:#2c60ad}.brand img{filter:drop-shadow(0 5px 12px #24457720)}.brand small{color:#637086}.nav-label{color:#8791a0}.nav a{font-size:13px;color:#566478;padding:14px 15px}.nav a .icon{display:none}.nav a:hover{color:#174ca0;background:#f5f8fc}.nav a.active{color:#124eae;background:#edf4ff;border-color:transparent;box-shadow:inset 3px 0 #2269df}.nav a.active:after{display:none}.sidebar-signature>span,.eyebrow>span,.panel-emblem,.stat-watermark{display:none}.sidebar-signature small{color:#8590a1}.names strong{color:#1c2a40}.names small{color:#69768c}.main{background:#f8f9fb}.topbar{background:#fff;border-color:#e8ecf2}.breadcrumb,.breadcrumb span,.breadcrumb b,.topbar-right,.private-badge{color:#69768a}.page-heading h1{font-weight:600;color:#15213a}.page-heading>div>p:last-child{color:#6c788b;line-height:1.7}.eyebrow{color:#3965a4}.section-kicker{color:#7a8698}.content{padding-top:38px}.stat,.panel,.quota{background:#fff;border-color:#e2e7ef;box-shadow:0 3px 16px #1b355605}.stat-money{background:#eaf2ff;border-color:#d8e7ff;color:#173968}.stat-title,.stat-money .stat-title{color:#5a6c88}.stat-title .icon,.panel-head>.icon,.quota-icon,.journal-mark .icon{display:none}.stat-value,.stat-money .stat-value{color:#142b51}.stat-foot,.stat-money .stat-foot{color:#647997}.activity-panel:before{display:none}.panel{box-shadow:0 5px 25px #12335e04}.panel-head h2,.section-head h2{color:#18283f}.chart-main-number{color:#1b3152}.chart .gridline{stroke:#dce5f1}.chart text{fill:#7b8ca5}.chart .line{stroke:#2865ce;filter:none}.chart-legend,.empty-overlay{color:#647893}.rank-row,.panel-link,.activity-table td,.journal-body,.footer{border-color:#e9edf3}.rank-name strong{color:#22324b}.rank-name small,.rank-number{color:#6c7d94}.rank-score{color:#254979}.panel-link,.text-link{color:#2e63ad}.text-link:hover,.panel-link:hover{color:#1044a0}.medal{filter:drop-shadow(0 2px 3px #19355426)}.badge{color:#42689b;background:#eef4fd;border-color:#d9e4f4}.badge.good{color:#257456;background:#eff8f3;border-color:#d4e9dd}.badge.warn{color:#957034;background:#fcf7eb;border-color:#ebdfc4}.badge.bad{color:#a5454f;background:#fff1f2;border-color:#f0d8db}.quota-top{color:#31476a}.quota-value{color:#183b70}.quota-value small,.quota-foot{color:#6c7f9c}.progress{background:#e8eef7}.progress span{background:linear-gradient(90deg,#2868d3,#77adff);box-shadow:none}.segmented{border-color:#dfe6f0}.segmented button{color:#71829b}.segmented button.active{color:#1b58b7;background:#e9f1fe}.activity-table th{color:#6d7f9a;border-color:#dfe7f2}.activity-table td{color:#475c7a}.activity-table td strong{color:#1a355e}.activity-table td a{color:#265cb1}.activity-table td a:hover{color:#0c3677}.activity-table tbody tr:hover{background:#f8faff}.money{color:#245491!important}.footer{color:#8090a6}.empty{color:#71849f}.callout{background:#f0f6ff;border-color:#d5e4f9;color:#45658c}.error{color:#a33e52;background:#fff4f6;border-color:#f0d5dc}
button,.button{background:#fff;color:#375171;border-color:#d9e1ed;box-shadow:0 2px 3px #173c6604}button:hover,.button:hover{background:#f4f8ff;border-color:#9ebbea;box-shadow:0 3px 13px #1f59ab0c}button.primary,.button.primary{color:#fff;background:#2266d7;border-color:#2266d7;box-shadow:0 5px 15px #2365cc20}button.primary:hover{background:#1759c6}button.ghost{color:#4a6487;border-color:#dbe4ef}button.danger,button.danger.ghost{color:#ac354d;background:#fff5f6;border-color:#ecc8d0}label{color:#506785}input,select,textarea{background:#fff;color:#203b62;border-color:#d9e2ef}input::placeholder{color:#9aa9bc}.tabbar{border-color:#dfe7f2}.tabbar button{color:#6c819e}.tabbar button.active{color:#174da1;border-color:#2664cc}.rp-card{background:#f4f7fb;border-color:#dce6f3}.info-item strong,.profile-head h2{color:#234269}.info-item small{color:#6b82a0}.profile-section{border-color:#e4ebf4}.calendar button{color:#4a6385;background:#f6f9fe;border-color:#dce6f3}.calendar button:hover{background:#ebf3ff}.calendar button strong{color:#294d80}.calendar button small{color:#6783a8}.secret-block{border-color:#dce5f2}.secret-block summary{color:#2c548c}.secret{background:#eff5ff;color:#285998;border-color:#cbdcf4}.journal-head strong{color:#243b5b}.journal-head time{color:#6881a3}.journal-entry h3{color:#4d70a0}.journal-values{color:#233f67}.journal-mark{background:#f0f5fe;color:#4275b9;border-color:#d6e3f5}.journal-entry:not(:last-child):before{background:#dce6f4}.correction{background:#f7f9fd;border-color:#e2e9f4}.correction p{color:#486b97}.correction>div:nth-child(2) p{color:#7e92ae}.journal-corrections summary{color:#97723e}dialog{background:#fff;color:#1e375b;border:1px solid #e1e7f0;box-shadow:0 30px 110px #14356030}dialog::backdrop{background:#15284450;backdrop-filter:blur(5px)}.modal-head h2{color:#1a365b}.modal-body>p{color:#6c819d}.toast{background:#fff;color:#24466f;border-color:#cfdff2;box-shadow:0 12px 45px #16467e22}.login-form,.install{background:#f8faff}.auth-card h1,.install-card h1{color:#18375e}.login-art{background:#122139;color:#fff}.login-art p{color:#c2d1e7}.install-card{background:#fff;border-color:#dce6f3}.login .segmented button.active{color:#204f96}.avatar{background:#e8effa;border-color:#ccd9ee}
.choice-native{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;opacity:0!important;pointer-events:none!important;clip-path:inset(50%)}.choice-button{justify-content:space-between;text-align:left;width:100%;font-weight:400;min-width:0;gap:16px;font-size:12px;padding:11px 13px;color:#29486f;border-color:#dce4ef;background:#fff;white-space:nowrap}.choice-button:after{content:'';width:6px;height:6px;border-right:1.5px solid #6d87ab;border-bottom:1.5px solid #6d87ab;transform:rotate(45deg);flex-shrink:0;margin-top:-4px;transition:transform .2s}.choice-button[aria-expanded=true]:after{transform:rotate(225deg);margin-top:4px}.choice-small{width:auto;min-width:145px;font-size:11px;min-height:36px;padding:9px 12px}.rank-controls .choice-button{min-width:0;width:100%;font-size:11px}.choice-menu{position:fixed;z-index:2000;max-height:300px;overflow:auto;background:#fff;border:1px solid #dce5f2;border-radius:12px;padding:6px;box-shadow:0 16px 50px #1a3e7124;animation:choice-in .16s ease-out}.choice-menu button{display:flex;width:100%;justify-content:flex-start;text-align:left;border:0;border-radius:7px;box-shadow:none;color:#465f81;background:transparent;font-size:12px;padding:10px 13px;min-height:37px;font-weight:400}.choice-menu button:hover,.choice-menu button:focus{background:#f0f5fd;outline:none;color:#1c58b0}.choice-menu button[aria-selected=true]{background:#eaf2ff;color:#1959bd;font-weight:600}.choice-menu button[aria-selected=true]:after{content:'✓';margin-left:auto;color:#2c6ed7}.filter-bar label .choice-button{width:100%}.controls>.choice-button{flex:0 1 auto}.choice-menu::-webkit-scrollbar{width:5px}.choice-menu::-webkit-scrollbar-thumb{background:#c8d5e7;border-radius:5px}@keyframes choice-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
.activity-celebration{position:fixed;inset:0;z-index:999;pointer-events:none;overflow:hidden}.art-particle{position:absolute;top:-150px;display:block;animation:art-fall var(--duration) cubic-bezier(.25,.5,.7,.9) both;will-change:transform,opacity}.art-leaf{width:85px;height:85px;clip-path:polygon(49% 0,61% 31%,94% 15%,81% 48%,100% 68%,67% 80%,51% 100%,35% 79%,0 63%,22% 46%,11% 17%,39% 34%)}.art-leaf img{position:absolute;width:279%;max-width:none;left:-91%;top:-47%;height:auto}.art-banknote{width:100px;height:44px;clip-path:polygon(0 30%,66% 0,100% 68%,32% 100%)}.art-banknote img{position:absolute;width:448%;max-width:none;left:-25%;top:-442%;height:auto}.success-receipt{position:absolute;bottom:80px;left:50%;transform:translateX(-50%);padding:17px 26px;background:#fff;color:#1b559e;border:1px solid #c9dcf5;box-shadow:0 14px 55px #154f9c22;border-radius:12px;font-size:15px;font-weight:600;white-space:nowrap;animation:receipt 5s both}@keyframes art-fall{0%{opacity:0;transform:translate3d(0,-50px,0) rotate(-20deg)}10%{opacity:1}80%{opacity:1}100%{opacity:0;transform:translate3d(var(--drift),calc(100vh + 190px),0) rotate(var(--turn))}}@keyframes receipt{0%{opacity:0;translate:0 20px}10%,80%{opacity:1;translate:0 0}100%{opacity:0;translate:0 -10px}}@media(max-width:760px){.main{background:#f8f9fc}.sidebar{background:#fff}.choice-small{min-width:130px}.chart-toolbar .controls{gap:12px}.choice-menu{max-height:260px}.success-receipt{font-size:12px;max-width:90%;white-space:normal;text-align:center}.art-leaf{width:60px;height:60px}.art-banknote{width:80px;height:35px}}@media(prefers-reduced-motion:reduce){.art-particle{display:none}.success-receipt,.choice-menu{animation:none}.activity-celebration .success-receipt{opacity:1}}

.art-leaf{clip-path:polygon(49% 0,55% 13%,54% 17%,59% 24%,57% 29%,61% 36%,58% 43%,59% 49%,54% 66%,52% 77%,64% 48%,78% 29%,94% 15%,89% 27%,89% 33%,85% 40%,85% 45%,79% 50%,77% 56%,69% 65%,56% 79%,77% 70%,88% 67%,100% 63%,92% 72%,82% 76%,76% 80%,61% 84%,52% 84%,51% 92%,49% 92%,49% 84%,33% 84%,25% 80%,16% 78%,8% 72%,0 63%,18% 67%,32% 73%,44% 79%,30% 63%,24% 54%,22% 47%,17% 39%,17% 32%,11% 17%,23% 27%,35% 43%,41% 58%,47% 75%,40% 50%,40% 41%,38% 36%,41% 28%,40% 23%,44% 16%,44% 10%)}
.art-banknote{clip-path:polygon(0 40%,50% 0,89% 37%,39% 81%)}.art-banknote img{top:-430%}
/* Fond blanc, modules bleu LDS. */
.main{background:#fff}
.panel,.stat,.quota{--muted:#b0c3df;color:#f2f6ff;background:linear-gradient(125deg,#15355f,#10294d);border-color:#214777;box-shadow:0 7px 24px #15376112}
.stat-money{background:linear-gradient(120deg,#1e4c88,#153862);border-color:#2e5a90}
.panel :is(h2,h3,.panel-head h2,.profile-head h2,.info-item strong,.rank-name strong,.journal-head strong,.journal-values),.stat-value,.stat-money .stat-value,.quota-value{color:#f5f8ff}
.panel :is(small,.muted,.section-kicker,.chart-legend,.empty-overlay,.rank-name small,.rank-number,.info-item small,.journal-head time,.count-label,.empty),.stat-title,.stat-money .stat-title,.stat-foot,.stat-money .stat-foot,.quota-value small,.quota-foot{color:#afc5e5}
.panel :is(.chart-main-number,.rank-score,.quota-top,.journal-entry h3),.quota-top{color:#e1edff}
.panel :is(.panel-link,.text-link,.activity-table td a){color:#bad5ff}.panel :is(.panel-link,.text-link,.activity-table td a):hover{color:#fff}
.panel :is(.rank-row,.panel-link,.activity-table td,.journal-body,.profile-section,.secret-block){border-color:#ffffff17}
.panel .activity-table th{color:#a5bcdd;border-color:#ffffff25}.panel .activity-table td{color:#c6d7ef}.panel .activity-table td strong{color:#f1f6ff}.panel .money{color:#dbeaff!important}.panel .activity-table tbody tr:hover{background:#ffffff05}
.panel .chart text{fill:#a3bce0}.panel .chart .gridline{stroke:#a4c3ed30}.panel .chart .line{stroke:#84b6ff;filter:drop-shadow(0 0 4px #5096f74d)}
.panel .segmented{border-color:#ffffff1c}.panel .segmented button{color:#a8c0e2}.panel .segmented button.active{background:#ffffff16;color:#fff}
:is(.panel,.quota) .badge{color:#bfd8ff;background:#2961a53d;border-color:#8db8f033}:is(.panel,.quota) .badge.good{color:#b5e8d0;background:#286e5240;border-color:#82caaa33}:is(.panel,.quota) .badge.warn{color:#ecd7a5;background:#9a743529;border-color:#caa87240}:is(.panel,.quota) .badge.bad{color:#ffc4cb;background:#8b394639;border-color:#d58a963d}
.quota .progress{background:#ffffff1c}.quota .progress span{background:linear-gradient(90deg,#438dff,#a1c8ff)}
.panel label{color:#c2d3ec}.panel .calendar button{background:#1e4070;color:#c6d9f6;border-color:#5479aa55}.panel .calendar button strong{color:#edf4ff}.panel .calendar button small{color:#b1c8e8}.panel .calendar button:hover{background:#285183}.panel .rp-card{background:#0e2342;border-color:#5075a148}.panel .secret-block summary{color:#c7dcfc}.panel .correction{background:#0d2445;border-color:#ffffff16}.panel .correction p{color:#c6dafa}.panel .correction>div:nth-child(2) p{color:#9db3d1}.panel .journal-mark{background:#ffffff09;border-color:#ffffff20}.panel .journal-entry:not(:last-child):before{background:#ffffff21}.panel .journal-corrections summary{color:#dfc594}
@media(max-width:760px){.main{background:#fff}}
/* LDS — plantes en bordure, billets immobiles et barre latérale bleue. */
.sidebar{background:linear-gradient(175deg,#13365e,#10284a);border-right-color:#294d7d;color:#f3f7ff}.sidebar .brand,.sidebar .sidebar-bottom{border-color:#ffffff1b}.sidebar .brand strong{color:#fff}.sidebar .brand strong span{color:#b5d5ff}.sidebar .brand small,.sidebar .nav-label,.sidebar .sidebar-signature small{color:#9ebce2}.sidebar .names strong{color:#f1f6ff}.sidebar .names small,.sidebar .user-nav .icon-button{color:#b4cceb}.sidebar .nav a{color:#c1d3ed}.sidebar .nav a:hover{color:#fff;background:#ffffff09}.sidebar .nav a.active{color:#fff;background:#3876c832;box-shadow:inset 3px 0 #77b3ff;border-color:#74a8ee23}.sidebar .brand img{filter:drop-shadow(0 0 18px #1680ff33)}
#view :is(.panel,.stat,.quota){position:relative;isolation:isolate;overflow:hidden;padding-bottom:52px;transition:box-shadow .4s,border-color .4s;box-shadow:0 7px 22px #14396017,inset 0 1px 0 #8dbdff16}
#view :is(.panel,.stat,.quota):hover{border-color:#6397d7;box-shadow:0 7px 26px #196adc27,0 0 16px #57a2ff18,inset 0 1px 0 #a5d2ff35}
#view :is(.panel,.stat,.quota)::after{content:'';position:absolute;top:0;left:8%;width:70%;height:1px;background:linear-gradient(90deg,transparent,#a3d6ff9c,transparent);pointer-events:none;animation:module-reflection 9s ease-in-out infinite;z-index:0}
#view :is(.panel,.stat,.quota)>:not(.module-art){position:relative;z-index:1}
.module-art{position:absolute;pointer-events:none;user-select:none;z-index:0;contain:layout;}
.corner-plants{width:88px;height:48px;right:0;bottom:0;opacity:.75;filter:drop-shadow(0 0 5px #3087ee40)}
.plant-stem{position:absolute;display:block;bottom:-6px;right:0;width:53px;height:53px;transform-origin:50% 90%;animation:plant-breeze 7s ease-in-out infinite alternate}
.plant-stem .art-leaf{display:block;position:relative;width:100%;height:100%;transform:rotate(-24deg)}
.plant-stem-1{right:27px;bottom:-17px;width:46px;height:46px;animation-delay:-3s;animation-duration:8.5s}.plant-stem-1 .art-leaf{transform:rotate(-62deg)}
.plant-stem-2{right:-13px;bottom:12px;width:40px;height:40px;animation-delay:-5s;animation-duration:9s}.plant-stem-2 .art-leaf{transform:rotate(12deg)}
#view .stat-money{padding-bottom:61px;min-height:175px}.cash-stack{width:113px;height:39px;bottom:7px;right:12px;opacity:.93;clip-path:polygon(0 42%,38% 0,57% 15%,72% 8%,97% 43%,100% 78%,79% 94%,40% 96%,5% 75%);animation:none!important;transform:none!important}.cash-stack img{position:absolute;width:282%;max-width:none;height:auto;left:-11.2%;top:-378%;animation:none!important}.stat-money .stat-foot{max-width:calc(100% - 108px);line-height:1.5}
#view.quiet-refresh .corner-plants .plant-stem{animation:plant-breeze 7s ease-in-out infinite alternate!important}#view.quiet-refresh .corner-plants .plant-stem-1{animation-delay:-3s!important;animation-duration:8.5s!important}#view.quiet-refresh .corner-plants .plant-stem-2{animation-delay:-5s!important;animation-duration:9s!important}
@keyframes plant-breeze{from{transform:rotate(-3deg) translateX(-1px)}to{transform:rotate(4deg) translateX(1px)}}@keyframes module-reflection{0%,100%{opacity:.25;transform:translateX(-12%)}50%{opacity:.8;transform:translateX(24%)}}
@media(max-width:760px){.sidebar{background:linear-gradient(175deg,#13365e,#10284a)}#view :is(.panel,.stat,.quota){padding-bottom:47px}.corner-plants{transform:scale(.8);transform-origin:bottom right}#view .stat-money{min-height:166px;padding-bottom:58px}.cash-stack{width:87px;height:30px;right:8px;bottom:7px}.stat-money .stat-foot{max-width:100%;padding-right:0;font-size:9px}.stat-money .stat-value{margin-bottom:7px}}
@media(prefers-reduced-motion:reduce){#view .plant-stem,#view.quiet-refresh .corner-plants .plant-stem,#view :is(.panel,.stat,.quota)::after{animation:none!important}}
.cash-stack{height:29px;bottom:12px}.cash-stack img{top:-455%}@media(max-width:760px){.cash-stack{height:22.3px;bottom:10px}}
/* Composition sélective : les branches originales dépassent du module. */
#view :is(.panel,.stat,.quota){padding-bottom:28px}#view .stat-money{padding-bottom:63px}
#view .organic-module{overflow:visible;padding-bottom:88px;z-index:2}
.organic-plant{right:-24px;bottom:-12px;width:110px;height:auto;opacity:.94;transform-origin:84% 96%;filter:drop-shadow(0 4px 6px #0d3b7920);animation:organic-wind 6.8s ease-in-out infinite alternate;will-change:transform}
.organic-plant img{display:block;position:static;width:100%;height:auto;max-width:100%;clip-path:none}
.organic-small{right:auto;left:-17px;bottom:-9px;width:81px;transform-origin:15% 95%;animation:organic-wind-small 8.2s ease-in-out -3s infinite alternate}.organic-small img{transform:scaleX(-1)}
.cash-stack.original-cash{clip-path:none;width:112px;height:auto;right:9px;bottom:5px;overflow:visible;opacity:.95}.cash-stack.original-cash img{position:static;display:block;left:auto;top:auto;width:100%;height:auto;max-width:100%;clip-path:none}
#view.quiet-refresh .organic-plant{animation:organic-wind 6.8s ease-in-out infinite alternate!important}#view.quiet-refresh .organic-small{animation:organic-wind-small 8.2s ease-in-out -3s infinite alternate!important}
@keyframes organic-wind{0%{transform:rotate(-2.2deg) skewX(-.6deg)}50%{transform:rotate(.6deg) skewX(.4deg)}100%{transform:rotate(2.5deg) skewX(.8deg)}}@keyframes organic-wind-small{0%{transform:rotate(2deg) skewX(.7deg)}100%{transform:rotate(-2.8deg) skewX(-.6deg)}}
@media(max-width:760px){#view :is(.panel,.stat,.quota){padding-bottom:25px}#view .organic-module{padding-bottom:75px}.organic-plant{width:87px;right:-11px;bottom:-9px}.organic-small{width:70px;left:-10px;right:auto}.cash-stack.original-cash{width:86px;bottom:5px}#view .stat-money{padding-bottom:59px}}
@media(prefers-reduced-motion:reduce){.organic-plant,#view.quiet-refresh .organic-plant,#view.quiet-refresh .organic-small{animation:none!important;will-change:auto}}
.original-particle{width:80px;height:auto;clip-path:none}.original-particle img{display:block;width:100%;height:auto;position:static;max-width:100%}.original-particle.falling-cash{width:100px}@media(max-width:760px){.original-particle{width:58px}.original-particle.falling-cash{width:75px}}
/* Cinq plantes sur l’accueil, contenues dans les cartes. */
#view .organic-module{overflow:hidden;padding-bottom:120px}
.organic-plant{right:10px;bottom:9px;width:90px}.organic-small{left:10px;right:auto;bottom:9px;width:77px}
@media(max-width:760px){#view .organic-module{padding-bottom:106px}.organic-plant{right:9px;bottom:8px;width:78px}.organic-small{left:9px;right:auto;bottom:8px;width:68px}}
/* Animation uniquement derrière les surfaces opaques, dans le fond blanc. */
.main{position:relative;isolation:isolate}.ambient-cash{position:fixed;top:74px;bottom:0;left:228px;right:0;z-index:-1;overflow:hidden;pointer-events:none;user-select:none;contain:strict}.ambient-cash img{position:absolute;left:var(--cash-x);top:-75px;width:54px;height:auto;opacity:.14;animation:white-background-cash var(--cash-time) linear var(--cash-delay) infinite;will-change:transform}.page-heading,.footer{background:#fffffff2;border-radius:10px}.topbar{position:relative;z-index:3}.page-hidden .ambient-cash img{animation-play-state:paused}@keyframes white-background-cash{from{transform:translate3d(-10px,-70px,0) rotate(var(--cash-turn))}to{transform:translate3d(35px,calc(100vh + 100px),0) rotate(calc(var(--cash-turn) + 90deg))}}
.table-wrap{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.table-wrap:focus-visible{outline-offset:3px}.choice-menu{overscroll-behavior:contain}.panel,.quota,.stat{min-width:0}.stat-value{overflow-wrap:anywhere}.sidebar{overscroll-behavior:contain}.rp-card{height:auto}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
@media(max-width:1020px) and (min-width:761px){.content{padding-left:25px;padding-right:25px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid,.admin-grid{grid-template-columns:1fr}.profile-grid{grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr)}}
@media(max-width:760px){.ambient-cash{left:0;top:60px}.ambient-cash img{width:38px;opacity:.11}.ambient-cash img:nth-child(n+6){display:none}.topbar{position:sticky;top:0;height:60px}.content{padding:24px 15px 30px}.page-heading h1{font-size:30px}.page-heading>div>p:last-child{font-size:12px}.profile-grid,.admin-grid,.dashboard-grid{grid-template-columns:minmax(0,1fr)}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stats .stat{min-height:162px;padding-left:15px;padding-right:15px}.stat-value,.stat-money .stat-value{font-size:clamp(21px,6vw,29px);letter-spacing:-.5px}.stat-title,.stat-foot{font-size:11px}.stat-money .stat-foot{font-size:10px}.stat-money .original-cash{width:73px}.small-select,.choice-button,input,select,textarea{font-size:16px;min-height:44px}.choice-small,.rank-controls .choice-button{font-size:12px;min-height:44px}.choice-menu button{font-size:14px;min-height:44px}.segmented button,.tabbar button,.icon-button,.pagination button{min-height:44px}.icon-button{min-width:44px}.nav a{min-height:48px;font-size:14px}.sidebar{max-width:calc(100vw - 52px);height:100dvh;overflow-y:auto;padding-bottom:calc(20px + env(safe-area-inset-bottom))}.brand{padding-bottom:18px;margin-bottom:20px}.brand img{width:90px;height:90px}.sidebar-signature{padding-top:18px;margin-bottom:18px}.rank-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.choice-button{white-space:normal;line-height:1.35}.chart-toolbar .controls{align-items:stretch}.chart-toolbar .choice-button{width:100%}.chart-toolbar .segmented{width:100%;justify-content:space-between}.chart-toolbar .segmented button{flex:1;font-size:11px}.filter-bar label{min-width:calc(50% - 10px)}.filter-bar input{width:100%}.form-grid{grid-template-columns:minmax(0,1fr)}dialog{max-width:calc(100vw - 24px);width:520px;max-height:calc(100dvh - 24px);overflow:auto;overscroll-behavior:contain}.modal-body{padding:22px 18px}.modal-head h2{font-size:22px}.form-actions{position:sticky;bottom:-22px;background:#fff;padding:13px 0;margin-top:16px}.form-actions button{min-height:44px}.tabbar{gap:18px;scrollbar-width:thin}.admin-invite button{min-height:44px}.panel .activity-table{font-size:12px}.footer{line-height:1.5}.section-head{line-height:1.4}.organic-plant{will-change:auto}.journal-head time{font-size:11px}.secret{word-break:break-all}.heading-actions button{white-space:normal}.login-form{padding:30px 22px}.auth-card input{font-size:16px}}
@media(max-width:360px){.content{padding-left:11px;padding-right:11px}.stats{gap:8px}.stats .stat{padding-left:11px;padding-right:11px}.stat-value,.stat-money .stat-value{font-size:21px}.filter-bar label{min-width:100%}.rank-controls{grid-template-columns:1fr}.heading-actions{flex-direction:column;align-items:stretch}.rank-row{gap:8px}.rank-name strong{font-size:11px}.rank-score{font-size:11px}}
@media(prefers-reduced-motion:reduce){.ambient-cash{display:none}}
@media(max-width:760px){.sidebar:not(.open){box-shadow:none}.sidebar.open{box-shadow:12px 0 40px #10254830}.modal-head{align-items:flex-start}.modal-head h2{min-width:0;overflow-wrap:anywhere}}
.page-hidden .organic-plant,.page-hidden #view.quiet-refresh .organic-plant,.page-hidden #view :is(.panel,.stat,.quota)::after{animation-play-state:paused!important}

/* Profil et navigation sans bandeau supérieur */
.ambient-cash{top:0}.mobile-menu-button{display:none}.identity-card>button{margin-top:16px;width:100%;white-space:normal}
@media(max-width:760px){.mobile-menu-button{display:inline-flex;position:relative;margin:16px 15px 0;background:#15345b;color:#fff;border-color:#31547d}.ambient-cash{top:0}}
