[hidden]{display:none!important}
/* Thème Claude Code : fonds gris chauds, texte crème, accent terracotta. */
:root{
  --bg:#1a1917; --bg2:#211f1d; --panel:#262421; --panel2:#1e1c1a;
  --ink:#f0eee6; --dim:#9a9187; --line:#3a3733;
  --accent:#d97757; --accent2:#c96442; --accent-solid:#b04f2c; --warn:#d9a05b; --danger:#cf5a4e;
  --green:#7fa88a; --frog:#e8e6dc;
  --mono:"SFMono-Regular",ui-monospace,"JetBrains Mono",Consolas,"Liberation Mono",monospace;
}
*{box-sizing:border-box}
html,body{height:100%;margin:0;overflow:hidden;background:var(--bg);color:var(--ink);
  font-family:var(--mono);font-size:14px;-webkit-font-smoothing:antialiased;user-select:none}

/* ---- boot ---- */
.boot{position:fixed;inset:0;background:#0a0908;color:var(--accent);display:flex;
  flex-direction:column;align-items:center;justify-content:center;gap:18px;z-index:9000}
.boot-logo{color:var(--frog);font-size:15px;line-height:1.2;text-shadow:0 0 14px rgba(111,175,139,.5)}
.boot-brand-logo{display:block;width:min(460px,78vw);height:auto;filter:drop-shadow(0 8px 28px #d9775740)}
.boot-log{width:min(560px,88vw);height:170px;overflow:hidden;color:var(--dim);font-size:12.5px;line-height:1.5}
.boot-log b{color:var(--accent)}

/* ---- desktop ---- */
.desktop{position:fixed;inset:0}
.wallpaper{position:absolute;inset:0;z-index:0;
  background:linear-gradient(90deg,rgba(20,19,18,.78),rgba(29,28,25,.38) 55%,rgba(22,21,20,.58)),
    url('winux-wallpaper.png') center center / cover no-repeat,#191817}
.wallpaper::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(14,14,13,.24),transparent 20%,transparent 75%,rgba(13,12,11,.45))}
.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}
.desktop-brand{position:absolute;left:122px;top:28px;z-index:1;display:flex;align-items:center;gap:12px;
  color:#f9f9f8;text-shadow:0 2px 16px #121110;letter-spacing:.02em}
.desktop-brand b{font:700 22px/1.1 system-ui,Arial,sans-serif;display:block}
.desktop-brand small{font:700 10px/1.4 var(--mono);letter-spacing:.18em;color:#e1dfda}
.desktop-brand{flex-direction:column;align-items:flex-start;gap:0}
.desktop-brand-logo{display:block;width:170px;max-width:38vw;height:auto;filter:drop-shadow(0 3px 10px #0009)}
.brand-mark{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:8px;
  background:linear-gradient(135deg,#82bc9b,#498864);color:#1a1a17;font:900 19px/1 system-ui,Arial,sans-serif;box-shadow:0 5px 18px #17161477}
.brand-mark .winux-mark{width:78%;height:78%;filter:drop-shadow(0 1px 2px #07120b)}

/* ---- icônes ---- */
.icons{position:absolute;top:96px;left:16px;display:flex;flex-direction:column;gap:6px;z-index:1}
.icon{display:flex;flex-direction:column;align-items:center;gap:4px;width:84px;padding:10px 6px;
  background:rgba(23,22,21,.18);border:1px solid transparent;border-radius:12px;color:#fafaf9;
  cursor:pointer;font:600 11.5px/1.3 system-ui,Arial,sans-serif;text-shadow:0 2px 9px #121110}
.icon:hover,.icon:focus-visible{background:rgba(38,37,34,.65);border-color:#a7d0b966;outline:0}
.app-glyph{display:inline-block;width:24px;height:24px;flex:none;filter:drop-shadow(0 2px 5px rgba(0,0,0,.25))}
.icon .app-glyph{width:40px;height:40px}
.desktop-files{position:absolute;left:112px;right:370px;top:96px;bottom:70px;z-index:1;pointer-events:none}.desktop-file{position:absolute;display:flex;flex-direction:column;align-items:center;gap:4px;width:84px;padding:8px 4px;border:1px solid transparent;border-radius:11px;background:transparent;color:#fafaf9;cursor:pointer;font:600 11px/1.25 system-ui,Arial,sans-serif;text-shadow:0 2px 9px #121110;pointer-events:auto}.desktop-file:hover,.desktop-file:focus-visible{background:rgba(38,37,34,.65);border-color:#a7d0b966;outline:0}.desktop-file-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:linear-gradient(145deg,#d58568,#703925);color:#f0efec;font-size:28px;box-shadow:0 4px 12px #00000055}.desktop-file>span:last-child{max-width:84px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ---- fenêtres ---- */
.win{position:absolute;min-width:320px;min-height:180px;background:#1f1e1beF;
  border:1px solid #783d28;border-radius:13px;box-shadow:0 20px 60px rgba(0,0,0,.55);
  display:flex;flex-direction:column;overflow:hidden;z-index:10}
.win.active{border-color:#753c27;box-shadow:0 24px 70px rgba(0,0,0,.7),0 0 0 1px rgba(218,112,74,.25)}
.win.max{top:0!important;left:0!important;width:100%!important;
  height:calc(100% - 44px)!important;border-radius:0}
.titlebar{display:flex;align-items:center;gap:8px;padding:8px 9px 8px 12px;min-height:40px;
  background:linear-gradient(180deg,#2f2d29,#23221f);border-bottom:1px solid #575248;cursor:move}
.wt-icon{display:flex;align-items:center}
.wt-icon .app-glyph{width:20px;height:20px}
.wt-title{flex:1;font-size:12.5px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wt-btns{display:flex;align-items:center;gap:4px}
.wt-btns button{width:27px;height:24px;border:1px solid #793e28;border-radius:7px;
  background:#393732;color:#eae9e5;cursor:pointer;font:inherit;font-size:12px}
.wt-btns .wb-close:hover{background:var(--danger);color:#ffffff}
.wt-btns button:hover{background:#623220;color:#ffffff}
.win-body{flex:1;overflow:auto;position:relative}
.resize-handle{position:absolute;right:0;bottom:0;width:16px;height:16px;cursor:nwse-resize;
  background:linear-gradient(135deg,transparent 50%,var(--line) 50%)}

/* ---- taskbar ---- */
.taskbar{position:absolute;left:0;right:0;bottom:0;height:52px;z-index:50;
  display:flex;align-items:center;gap:8px;padding:0 10px;
  background:linear-gradient(180deg,#2e2c28ed,#191816f5);border-top:1px solid #756e61;backdrop-filter:blur(18px)}
.start{background:#292724;border:1px solid var(--line);color:var(--accent);font:inherit;
  font-weight:700;padding:6px 11px;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:7px}
.start .brand-mark{width:22px;height:22px;font-size:14px;border-radius:5px}
.start:hover{background:#35332f}
.tasklist{flex:1;display:flex;gap:6px;overflow:hidden}
.task{display:flex;align-items:center;gap:6px;max-width:180px;padding:6px 10px;border-radius:7px;
  background:#1e1d1a;border:1px solid var(--line);color:var(--dim);cursor:pointer;font-size:12px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.task.active{color:var(--ink);border-color:#753c27;background:#2d2b27}
.task .app-glyph{width:17px;height:17px}
.task span{overflow:hidden;text-overflow:ellipsis}
.tray{display:flex;align-items:center;gap:14px;font-size:12px;color:var(--dim)}
.tray .stat{display:flex;align-items:center;gap:5px}
.tray .stat b{color:var(--ink)}
.tray .stat small{font-size:9px;letter-spacing:1px;color:var(--dim)}
.gauge{display:inline-block;width:70px;height:8px;border-radius:5px;background:#272522;overflow:hidden;border:1px solid var(--line)}
.gauge i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--green),var(--warn) 65%,var(--danger));transition:width .4s}
.clock{color:var(--ink);font-variant-numeric:tabular-nums}

/* ---- menu démarrer ---- */
.start-menu{position:absolute;left:10px;bottom:50px;z-index:60;width:250px;padding:8px;
  background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:0 20px 50px rgba(0,0,0,.6)}
.start-menu .sm-head{padding:8px 10px;color:var(--frog);font-weight:700;border-bottom:1px solid var(--line);margin-bottom:6px}
.start-menu button{display:block;width:100%;text-align:left;padding:9px 12px;border:0;border-radius:8px;
  background:transparent;color:var(--ink);cursor:pointer;font:inherit;font-size:13px}
.start-menu button:hover{background:#35332f}
.start-menu hr{border:0;border-top:1px solid var(--line);margin:6px 2px}
#resetGame{color:var(--warn)}

/* ---- assistant de mission ---- */
.mission-guide{position:absolute;right:18px;top:22px;bottom:68px;width:340px;z-index:70;
  background:#1f1e1beF;border:1px solid #767063;border-radius:16px;color:#edece9;
  box-shadow:0 18px 45px #0f0e0d88;backdrop-filter:blur(20px);display:flex;flex-direction:column;overflow:hidden}
.guide-head{display:flex;justify-content:space-between;align-items:center;padding:13px 16px;background:#302e2aaa;
  border-bottom:1px solid #655f54;color:#d8d6d0;font-size:11px;font-weight:800;letter-spacing:.13em}
.guide-head span{display:flex;align-items:center;gap:8px}
.guide-head .app-glyph{width:25px;height:25px}
.guide-head button{width:27px;height:27px;background:#723a26;border:0;border-radius:7px;color:white;cursor:pointer;font:inherit}
.guide-content{padding:16px;overflow:auto;flex:1}
.guide-plan{border-top:1px solid #655f54;margin-top:22px;padding-top:18px}
.guide-mission-picker{display:flex;flex-direction:column;gap:6px;margin:0 0 16px;padding:10px;border:1px solid #645b4f;border-radius:9px;background:#242521}
.guide-mission-picker label{font:700 10px system-ui;letter-spacing:.12em;color:#b8d6c2}
.guide-mission-picker select{width:100%;padding:8px;background:#354c3b;color:#fff;border:1px solid #9bdab1;border-radius:6px;cursor:pointer;font:12px/1.3 system-ui}
.guide-primer{font:12px/1.45 system-ui;color:#c8d6c9;padding:9px;border-left:3px solid #83caa0;background:#27352c;border-radius:0 6px 6px 0}
.guide-next{padding:11px;margin-bottom:15px;border:1px solid #86b594;border-radius:9px;background:#2b4534}
.guide-next b,.guide-next small{display:block;font:700 12px/1.4 system-ui;color:#f6fff8}.guide-next small{font-weight:400;color:#c7dfcd;margin-top:4px}
.guide-plan h3{font:700 17px system-ui,Arial,sans-serif;margin:8px 0 14px;color:#fff}
.guide-plan-item{display:flex;gap:9px;margin:9px 0;padding:10px;border:1px solid #625f55;border-radius:9px;background:#302f2b}
.guide-plan-item>span{color:#a8d7ba;font:700 16px system-ui;min-width:18px}
.guide-plan-item b,.guide-plan-item small{display:block;font:600 12px/1.4 system-ui;color:#f3f1ec}
.guide-plan-item small{font-weight:400;color:#c1bcb1;margin:3px 0 7px}
.guide-plan-item button{border:1px solid #8abe9d;border-radius:6px;background:#385441;color:#fff;padding:5px 8px;cursor:pointer;font:700 11px system-ui}
.guide-plan-item.done{opacity:.65}.guide-plan details{margin-top:12px}.guide-plan summary{cursor:pointer;font:700 12px system-ui;color:#b5d6bf}.guide-plan-done{font:12px/1.5 system-ui;color:#b9d6c4}
.mission-guide.collapsed{top:auto;bottom:68px;height:54px}
.mission-guide.collapsed .guide-content{display:none}
.guide-kicker{color:#b1d5c1;font-size:10px;font-weight:800;letter-spacing:.08em}
.guide-content h2{font:700 21px/1.17 system-ui,Arial,sans-serif;margin:9px 0;color:#ffffff}
.guide-brief{font:13px/1.5 system-ui,Arial,sans-serif;color:#d4957e;margin:0 0 16px}
.guide-progress{height:6px;border-radius:6px;background:#383632;overflow:hidden;margin:13px 0 18px}
.guide-progress i{display:block;height:100%;background:linear-gradient(90deg,#76b591,#dad8d2);border-radius:6px}
.guide-steps{display:grid;gap:10px}
.guide-step{display:flex;align-items:flex-start;gap:10px;font:12.5px/1.45 system-ui,Arial,sans-serif;color:#aca79c}
.guide-step span{display:grid;place-items:center;flex:none;width:21px;height:21px;border:1px solid #7a7365;border-radius:50%;font:700 11px var(--mono)}
.guide-step.current{color:#f8f8f7}.guide-step.current span{background:#81bb9a;color:#21201d;border-color:#81bb9a}
.guide-step.done{color:#a6ceb7}.guide-step.done span{color:#a3ceb6;border-color:#a3ceb6}.guide-step.done div{text-decoration:line-through;text-decoration-thickness:1px;text-decoration-color:#a5cdb6;opacity:.72}
.guide-hint{margin-top:22px;padding:14px;border:1px solid #716b5e;border-radius:10px;background:#35332f99}
.guide-hint b{font-size:10px;letter-spacing:.1em;color:#a9d0ba}
.guide-hint p{font:12.5px/1.45 system-ui,Arial,sans-serif;color:#e4e2de;margin:9px 0}
.guide-command,.guide-link{width:100%;padding:10px;border:1px solid #7aa88e;border-radius:8px;background:#304a3b;color:#f5f5f3;
  text-align:left;overflow-wrap:anywhere;font:11.5px/1.35 var(--mono);display:block}
.guide-link{text-align:center;background:#733b26;border-color:#8bbda1}
.guide-link{cursor:pointer}.guide-link:hover{filter:brightness(1.25)}
.guide-copy{display:inline-block;margin:3px 0;padding:4px 7px;border:1px solid #7aa88e;border-radius:6px;background:#34322e;color:#e7e5e1;font:11px var(--mono)}
.guide-shortcuts{display:flex;gap:6px;margin-top:14px}
.guide-shortcuts button{display:flex;align-items:center;justify-content:center;gap:3px;flex:1;padding:7px 3px;background:#32302c;border:1px solid #7e402a;
  border-radius:8px;color:#e6e5e1;cursor:pointer;font:11px system-ui,Arial,sans-serif}
.guide-shortcuts .app-glyph{width:18px;height:18px}
.guide-shortcuts button:hover{background:#6d3824}
.guide-footer,.guide-empty{color:#b3aea4;font:11px/1.4 system-ui,Arial,sans-serif;margin-top:13px}

/* ---- terminal ---- */
.term{display:flex;flex-direction:column;height:100%;background:#0a0908}
.term-out{flex:1;overflow:auto;padding:10px 12px;white-space:pre-wrap;word-break:break-word;
  font-size:13px;line-height:1.45;color:#dddbd5}
.term-line{display:flex}
.term-inp-wrap{display:flex;align-items:center;padding:4px 12px 10px;gap:6px}
.term-prompt{color:var(--accent);white-space:pre}
.term-input{flex:1;background:transparent;border:0;outline:0;color:#efeeeb;font:inherit;font-size:13px}
.term-completion{position:static;min-width:0;margin-left:5px;color:#847d6e;pointer-events:none;font:inherit;font-size:12px;opacity:.8;white-space:nowrap}
.term-inp-wrap{position:relative}
.term-out .c-g{color:var(--accent)} .term-out .c-b{color:var(--accent2)}
.term-out .c-y{color:var(--warn)} .term-out .c-r{color:var(--danger)}
.term-out .c-d{color:var(--dim)} .term-out .c-w{color:#ffffff;font-weight:700}
.term-out .notif{color:var(--warn)}
.term-toolbar{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:8px 11px;border-bottom:1px solid #393631;background:#191816;color:#bab4a8;font:11px var(--mono)}
.term-toolbar b{color:#d9a05b;font-weight:600}
.term-toolbar .term-live{margin-right:auto;display:flex;align-items:center;gap:7px}
.term-toolbar .term-live:before{content:"";width:7px;height:7px;border-radius:50%;background:#79b18d;box-shadow:0 0 9px #79b18d}
.term-toolbar button{border:1px solid #4e4740;border-radius:5px;padding:3px 7px;background:#26231f;color:#ddd6cb;font:11px var(--mono);cursor:pointer}
.term-toolbar button:hover{border-color:var(--accent);color:#fff}
.term-meta{color:#847d70;font-size:11px;margin:4px 0 10px}
.term-meta.bad{color:#e08b75}
.term-echo{color:var(--dim)}

/* ---- Foxy ---- */
.foxy{display:flex;flex-direction:column;height:100%;background:#171615}
.foxy-bar{display:flex;gap:6px;padding:8px;background:#1c1b19;border-bottom:1px solid var(--line)}
.foxy-bar button{background:#2d2b27;border:1px solid var(--line);color:var(--ink);width:32px;border-radius:7px;cursor:pointer;font:inherit}
.foxy-url{flex:1;background:#111110;border:1px solid var(--line);border-radius:7px;color:var(--ink);padding:6px 10px;font:inherit;font-size:12.5px}
.foxy-view{flex:1;overflow:auto;background:#ffffff;color:#111111}
.foxy-view iframe{width:100%;height:100%;border:0;background:#ffffff}
.foxy-status{padding:4px 10px;font-size:11px;color:var(--dim);background:#1c1b19;border-top:1px solid var(--line)}
.foxy-home{padding:24px;color:#32302c;background:linear-gradient(160deg,#f2f2f0,#fbfbfa);min-height:100%;font:14px/1.5 system-ui,Arial,sans-serif}
.foxy-home-hero{display:flex;align-items:center;gap:18px;padding:20px 22px;margin-bottom:23px;border-radius:14px;
  color:#f6f6f5;background:linear-gradient(120deg,#393733,#315842)}
.foxy-home-hero>.app-glyph{width:58px;height:58px}
.foxy-home-hero span{font-size:10px;letter-spacing:.15em;color:#c0d9ca;font-weight:800}
.foxy-home h2{margin:3px 0;font-size:25px;color:white}
.foxy-home-hero p{margin:0;color:#dfddd7}
.foxy-home h3{font-size:15px;color:#5b2c1b;margin:16px 0 10px}
.foxy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.foxy-grid button{display:flex;flex-direction:column;align-items:flex-start;gap:7px;text-align:left;background:white;color:#34322f;
  padding:15px;border:1px solid #e1e0db;border-radius:12px;box-shadow:0 6px 18px #2e2c2812;cursor:pointer;font:inherit}
.foxy-grid button:hover{border-color:#558e6e;transform:translateY(-2px)}
.foxy-grid .app-glyph{width:32px;height:32px}
.foxy-grid small{color:#847d6e;font-size:11px}
.foxy-home-tip{color:#8a8273;font-size:12px;margin-top:25px}

/* ---- Woopify ---- */
.woop{display:flex;flex-direction:column;height:100%;background:linear-gradient(160deg,#161514,#0d0c0b)}
.woop-top{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid #272623}
.woop-logo{font-size:34px}
.woop-top h2{margin:0;color:var(--frog);font-size:18px}
.woop-top small{color:#9c948a}
.woop-list{flex:1;overflow:auto;padding:6px}
.woop-track{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:8px;cursor:pointer;color:#d7d5ce}
.woop-track:hover{background:rgba(111,175,139,.08)}
.woop-track.playing{background:rgba(111,175,139,.16);color:#f6f5f3}
.woop-track .num{width:20px;color:#9c948a;font-size:12px}
.woop-track .meta{flex:1}
.woop-track .meta small{display:block;color:#9c948a;font-size:11px}
.woop-track .dur{color:#9c948a;font-size:12px}
.woop-bar{display:flex;align-items:center;gap:12px;padding:12px 16px;border-top:1px solid #272623;background:#100f0e}
.woop-bar button{background:var(--frog);border:0;color:#0d0c0b;width:40px;height:40px;border-radius:50%;font-size:16px;cursor:pointer;font-weight:700}
.woop-prog{flex:1;height:6px;border-radius:4px;background:#242320;overflow:hidden}
.woop-prog i{display:block;height:100%;width:0;background:var(--frog)}
.woop-now{min-width:130px;font-size:12px;color:#d7d5ce}
.woop-vol{width:80px}

/* ---- Mail ---- */
.mail{display:flex;height:100%;background:var(--panel2)}
.mail-list{width:42%;min-width:180px;overflow:auto;border-right:1px solid var(--line)}
.mail-item{padding:10px 12px;border-bottom:1px solid var(--line);cursor:pointer}
.mail-item:hover{background:#292724}
.mail-item.sel{background:#35332f}
.mail-item.unread b.dot{color:var(--accent)}
.mail-item .mi-from{font-size:11px;color:var(--dim)}
.mail-item .mi-sub{font-size:12.5px;color:var(--ink);margin-top:2px}
.mail-read{flex:1;padding:16px;overflow:auto;white-space:pre-wrap;font-size:13px;line-height:1.5}
.mail-read h3{margin:0 0 4px;color:var(--accent)}
.mail-read .mr-meta{color:var(--dim);font-size:11px;border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:12px}

/* ---- panneaux génériques ---- */
.panel{padding:14px;overflow:auto;height:100%;font-size:13px;line-height:1.5}
.panel h3{color:var(--accent);margin:0 0 10px}
.panel .mission{border:1px solid var(--line);border-radius:8px;padding:10px 12px;margin-bottom:10px;background:var(--panel2)}
.panel .mission.done{opacity:.7}
.panel .obj{display:flex;gap:8px;padding:2px 0}
.panel .obj .box{color:var(--dim)} .panel .obj.done .box{color:var(--accent)}
.panel .obj.done{text-decoration:line-through;text-decoration-thickness:1px;text-decoration-color:#e28f70;color:#a0cbb3;opacity:.74}
.panel .badge{font-size:10px;padding:2px 7px;border-radius:5px;background:#2f2d29;color:var(--warn)}
.panel .badge.done{color:var(--accent)}
.netnode{display:flex;gap:10px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:8px;margin-bottom:6px;background:var(--panel2);cursor:pointer}
.netnode:hover{border-color:#753c27}
.netnode .dot{width:9px;height:9px;border-radius:50%;background:var(--accent)}
.netnode .ip{color:var(--accent2);min-width:120px}
.netnode .nm{color:var(--ink)} .netnode .os{color:var(--dim);font-size:11px;margin-left:auto}
.network-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.network-panel{background:#211f1d}
.network-head small,.network-subnet{color:var(--dim);font:700 10px var(--mono);letter-spacing:.11em}
.network-head h3{margin:3px 0}
.network-head>b{color:var(--accent);font-size:11px}
.network-panel>.hint{margin:9px 0 18px;color:var(--dim);font-size:11px}
.network-subnet{margin:14px 0 8px}
.network-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:9px}
.network-card{display:flex;flex-direction:column;gap:6px;min-width:0;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--panel2);color:var(--ink);text-align:left;cursor:pointer}
.network-card:hover,.network-card:focus-visible{border-color:var(--accent);outline:0}
.network-card-top{display:flex;align-items:center;justify-content:space-between;gap:6px}
.network-card-top b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.network-card-top i{color:var(--green);font:700 9px var(--mono);font-style:normal}
.network-card code{color:var(--accent2);font-size:12px}
.network-card small{color:var(--dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.network-card-ports{border-top:1px solid var(--line);padding-top:6px;color:var(--warn);font-size:10px}
.hint{color:var(--dim);font-size:12px;margin-top:8px}
a.termlink{color:var(--accent2);cursor:pointer;text-decoration:underline}

::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-thumb{background:#312f2c;border-radius:6px}
::-webkit-scrollbar-track{background:transparent}

@media (max-width:640px){
  .desktop-brand{left:15px;top:12px}
  .icons{flex-direction:row;flex-wrap:wrap;width:100%;top:64px;left:8px;right:8px}
  .icon{width:72px}
  .icon .app-glyph{width:30px;height:30px}
  .mission-guide{width:min(340px,calc(100vw - 20px));top:auto;bottom:55px;right:10px;max-height:45vh}
  .mission-guide.collapsed{bottom:55px}
  .foxy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tray .stat:not(.trace):not(#trayUser){display:none}
  #trayUser{display:none}
}

/* ===== Winux 2026 v5 : surfaces système interactives ===== */
.tray-btn{position:relative;width:28px;height:28px;border:0;border-radius:7px;background:transparent;color:#d69983;cursor:pointer}.tray-btn:hover{background:#33312d;color:#ffffff}.tray-btn.bell{font-size:8px}.tray-btn.bell:before{content:'◠';font-size:19px;position:absolute;inset:2px 0 auto}.tray-btn.bell i{position:absolute;right:-3px;top:-4px;min-width:17px;height:17px;border-radius:10px;padding:1px 4px;background:#e27367;color:white;font:700 10px/15px system-ui;font-style:normal}
.start-menu{width:410px;padding:0;background:rgba(26,25,23,.97);border:1px solid #763d28;box-shadow:0 24px 70px #000000aa;backdrop-filter:blur(18px)}
.start-menu .sm-head{display:flex;gap:12px;align-items:center;padding:18px;border-bottom:1px solid #5b2f1f}.start-menu .sm-head .brand-mark{width:38px;height:38px}.start-menu .sm-head b,.start-menu .sm-head small{display:block}.start-menu .sm-head small{color:var(--dim);margin-top:3px}.sm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;padding:15px}.sm-grid button{display:flex;flex-direction:column;align-items:center;gap:6px;min-height:86px;border:1px solid transparent;border-radius:9px;background:#262522;color:#eae9e5;cursor:pointer}.sm-grid button:hover{background:#36342f;border-color:#8b472f}.sm-grid .app-glyph{width:34px;height:34px}.sm-foot{padding:12px 15px;border-top:1px solid #5b2f1f}.sm-foot button{width:100%;text-align:left;background:transparent;color:#eae9e5;border:0;padding:9px;cursor:pointer}
.tray-panel{position:fixed;z-index:10050;right:12px;bottom:53px;width:330px;max-height:520px;overflow:auto;background:rgba(24,23,21,.98);border:1px solid #7b3f29;border-radius:12px;box-shadow:0 20px 55px #000000bb;color:#eae9e5}.tray-panel-head{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;border-bottom:1px solid #633321}.tray-panel-head button{border:0;background:none;color:#9ccab0;cursor:pointer}.wifi-current{display:flex;align-items:center;gap:12px;margin:12px;padding:14px;background:#2a2926;border:1px solid #426b54;border-radius:10px}.wifi-current>span{font-size:26px}.wifi-current div{flex:1}.wifi-current b,.wifi-current small{display:block}.wifi-current small,.wifi-row small{color:#b0aba0;font-size:11px}.wifi-panel h4{padding:0 14px;margin:12px 0 8px;color:#999285;font-weight:500}.wifi-row,.wifi-action{display:flex;align-items:center;gap:10px;width:100%;padding:10px 15px;border:0;background:transparent;color:#eae9e5;text-align:left;cursor:pointer}.wifi-row:hover,.wifi-action:hover{background:#2c2a27}.wifi-row b{flex:1}.wifi-row i{color:#a8a297}.wifi-action{border-top:1px solid #633321;color:#abd2bc}
.notification-list>button{display:flex;gap:10px;width:100%;padding:13px;border:0;border-bottom:1px solid #393733;background:transparent;color:#eae9e5;text-align:left;cursor:pointer}.notification-list>button:hover{background:#2c2a27}.notification-list .app-glyph{width:30px;height:30px}.notification-list>button>span:last-child{display:grid;grid-template-columns:1fr auto;flex:1}.notification-list b,.notification-list small{display:block}.notification-list small{grid-column:1/3;margin-top:3px;color:#b0aba1}.notification-list em{color:#979082;font-size:10px;font-style:normal}.notification-list>p{padding:20px;text-align:center;color:#9d978a}
.context-menu{position:fixed;z-index:12000;min-width:220px;padding:6px;background:rgba(28,27,24,.98);border:1px solid #615c51;border-radius:8px;box-shadow:0 16px 40px #000000bb}.context-menu button{display:flex;gap:11px;width:100%;padding:9px 11px;border:0;border-radius:5px;background:transparent;color:#ecebe8;text-align:left;cursor:pointer}.context-menu button:hover{background:#393733}.context-menu button span{width:18px;color:#9ccab0}.context-menu hr{border:0;border-top:1px solid #613120;margin:5px}
.guide-substeps{margin:10px 0 0;padding-left:24px}.guide-substeps li{padding:4px 0 6px;color:#d9d7d0}.guide-command,.guide-link,.guide-copy{width:100%;display:flex!important;justify-content:space-between;align-items:center;gap:8px;text-align:left}.guide-command code{white-space:normal;overflow-wrap:anywhere}.guide-command span{font-size:9px;color:#b9d9c7;text-align:right}.guide-copy{display:inline-flex!important;width:auto;margin:3px 0;padding:5px 8px!important;font-size:10px}
.guide-history{margin-top:9px;border:1px solid #643321;border-radius:8px;background:#1c1b18}.guide-history summary{padding:9px 11px;color:#a0cbb3;cursor:pointer;font-size:11px}.guide-history .guide-substeps{margin-top:0}.guide-completed li{text-decoration:line-through;text-decoration-thickness:1px;text-decoration-color:#a0cbb3;opacity:.58}

/* Foxy : onglets, recherche et résultats */
.foxy-tabs{height:36px;display:flex;align-items:end;gap:4px;padding:5px 8px 0;background:#181716;border-bottom:1px solid #653422}.foxy-tabs button{height:30px;border:0;border-radius:7px 7px 0 0;background:#262522;color:#d69983;padding:5px 12px;display:flex;align-items:center;gap:8px;cursor:pointer}.foxy-tabs button.active{min-width:220px;background:#33312e;color:white}.foxy-tabs .app-glyph{width:18px;height:18px}.foxy-tabs i{margin-left:auto;font-style:normal;color:#989183}.foxy-search-brand{text-align:center;padding:35px 10px 25px}.foxy-search-brand>.app-glyph{width:66px;height:66px}.foxy-search-brand h2{font-size:34px;margin:5px 0 0}.foxy-search-brand p{color:#a09a8d}.foxy-search{max-width:620px;margin:18px auto 0;display:flex;background:#1a1a17;border:1px solid #7a3e29;border-radius:24px;overflow:hidden}.foxy-search input{flex:1;padding:13px 18px;border:0;background:transparent;color:#f0efed;outline:0}.foxy-search button{border:0;background:#7eb998;color:#151412;padding:0 20px;font-weight:700;cursor:pointer}.foxy-results{display:grid;gap:8px}.foxy-results .fx{display:grid;grid-template-columns:44px 1fr;text-align:left}.foxy-results .fx span{display:block}.foxy-results .fx small,.foxy-results .fx em{display:block}.foxy-results .fx em{font-style:normal;color:#b4afa6;margin-top:4px}

/* Handbook */
.handbook{display:grid;grid-template-columns:220px 1fr;height:100%;background:#171615;color:#e9e8e5}.handbook aside{padding:16px;background:#21201d;border-right:1px solid #613120;overflow:auto}.hb-brand{display:flex;align-items:center;gap:9px;margin-bottom:16px}.hb-brand .app-glyph{width:38px;height:38px}.hb-brand b,.hb-brand small{display:block}.hb-brand small{color:#968f82;font-size:10px}.hb-search{width:100%;padding:9px 11px;background:#121110;border:1px solid #753c27;border-radius:7px;color:white;margin-bottom:12px}.handbook aside nav,.handbook.article aside{display:flex;flex-direction:column;gap:5px}.handbook aside button{padding:10px;border:0;border-radius:6px;background:transparent;color:#c4c0b9;text-align:left;cursor:pointer}.handbook aside button:hover,.handbook aside button.active{background:#35332f;color:#a6cfb8}.handbook main{padding:30px;overflow:auto}.hb-hero{padding:28px;border:1px solid #683523;border-radius:16px;background:linear-gradient(135deg,#312f2c,#2c2a27)}.hb-hero span,.hb-kicker{font:700 10px/1.2 monospace;letter-spacing:1.6px;color:#9ac9ae}.hb-hero h1,.handbook.article h1{margin:7px 0;font-size:34px;color:white}.hb-hero p{margin:0;color:#c1bdb5}.hb-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:14px}.hb-cards button{display:grid;grid-template-columns:33px 1fr;text-align:left;padding:15px;border:1px solid #603120;border-radius:10px;background:#21201d;color:#e9e8e5;cursor:pointer}.hb-cards button:hover{border-color:#82bb9b;background:#2b2926}.hb-cards i{grid-row:1/3;color:#82bb9b;font:700 11px monospace}.hb-cards b,.hb-cards small{display:block}.hb-cards small{color:#aba69b;margin-top:5px}.hb-copy{font-size:16px;line-height:1.75;color:#cdcac4;padding:18px 0}.hb-commands{display:grid;gap:8px}.hb-commands button{display:flex;justify-content:space-between;gap:12px;padding:12px;border:1px solid #713a26;border-radius:8px;background:#131211;color:#a3ceb6;text-align:left;cursor:pointer}.hb-commands button:hover{background:#2e2c28}.hb-commands span{color:#9a9487;font-size:11px}.hb-note{margin-top:20px;padding:14px;border:1px solid #806031;border-radius:9px;background:#24221f;color:#dcaf6d}

/* Téléphone Winux */
.phone-window{min-width:320px!important;min-height:570px!important;background:#070706;border:0;border-radius:28px;box-shadow:0 24px 70px #000000bb}.phone-window .titlebar,.phone-window .resize-handle{display:none}.phone-window .win-body{padding:0;background:#0c0b0a}.phone-shell{height:100%;border:7px solid #0c0b0a;border-radius:22px;overflow:hidden;background:#f6f5f3;color:#282724;display:grid;grid-template-rows:28px 1fr 45px}.phone-status{display:flex;justify-content:space-between;align-items:center;padding:0 8px 0 10px;background:#070707;color:#ffffff;font-size:11px;cursor:grab;user-select:none}.phone-status:active{cursor:grabbing}.phone-status-right{display:flex;align-items:center;gap:7px}.phone-power{width:22px;height:22px;padding:0;border:0;border-radius:50%;background:#2e2c29;color:#cfccc5;font-size:13px;line-height:22px;cursor:pointer}.phone-power:hover{background:#d96154;color:#ffffff}.phone-screen{overflow:auto;background:#f2f2f0}.phone-nav{display:flex;justify-content:space-around;background:#070707}.phone-nav button{border:0;background:transparent;color:white;font-size:20px;cursor:pointer}.phone-wall{min-height:100%;padding:18px 13px;background:linear-gradient(#2e2c2999,#27262399),url('winux-wallpaper.png') center/cover}.phone-date{color:white;margin:6px 5px 24px}.phone-date b,.phone-date small{display:block}.phone-date b{text-transform:capitalize}.phone-date small{opacity:.75}.phone-apps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px 8px}.phone-apps button{position:relative;border:0;background:transparent;color:white;font-size:30px;cursor:pointer}.phone-apps button>span{display:block;font-size:10px;margin-top:5px}.phone-apps button>i{position:absolute;top:-5px;right:8px;background:#e06b5e;border-radius:10px;min-width:16px;color:white;font:700 9px system-ui}.phone-page{min-height:100%;background:#f5f4f2;color:#222222}.phone-page h1{margin:0;padding:16px 13px;border-bottom:1px solid #dedcd7;font-size:22px}.phone-messages button{display:grid;grid-template-columns:39px 1fr 10px;gap:9px;width:100%;padding:11px;border:0;border-bottom:1px solid #dedcd7;background:white;color:#33312e;text-align:left;cursor:pointer}.phone-messages button>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#d7d5ce;color:white}.phone-messages b{font-size:11px}.phone-messages p{margin:2px 0;color:#827b6d;font-size:10px}.phone-messages em{color:#599c76}.phone-from{padding:0 13px;color:#8a8273}.phone-message-body{margin:12px;padding:14px;background:white;border-radius:9px;line-height:1.5}.dial{text-align:center}.dial input{width:85%;padding:15px;border:0;border-bottom:1px solid #d8d6d0;background:transparent;text-align:center;font-size:20px}.dial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:20px}.dial-grid button{height:48px;border:1px solid #dedcd7;border-radius:30px;background:white;box-shadow:0 2px 4px #00000011;cursor:pointer}.call-btn{width:58px;height:48px;border:0;border-radius:28px;background:#80ba99;color:white;font-size:22px;cursor:pointer}.call-state{font-size:11px;color:#777166}.identity{text-align:center;padding-bottom:20px}.identity .avatar{display:grid;place-items:center;width:70px;height:70px;margin:24px auto 5px;border-radius:50%;background:#653321;color:white;font-size:28px}.identity h1{font-size:20px}.identity dl{margin:12px;background:white;border-radius:10px;text-align:left}.identity dl>div{}.identity dt,.identity dd{display:inline-block;width:48%;margin:0;padding:10px;border-bottom:1px solid #e7e5e1}.identity dd{text-align:right}.phone-mission{margin:10px;padding:12px;background:white;border-radius:10px}.phone-mission>span{font-size:9px;color:#407657;font-weight:700}.phone-mission h2{margin:4px 0;font-size:16px}.phone-mission p,.phone-mission div{font-size:11px;color:#6f695d}
.phone-apps button .phone-app-icon{display:grid!important;place-items:center;width:47px;height:47px;margin:auto;padding:8px;border-radius:14px;background:linear-gradient(145deg,#d1876d,#8c482f);box-shadow:0 4px 10px #00000044}.phone-apps button .phone-app-icon use{filter:brightness(1.2)}
.phone-muted{color:#827b6d;font-size:11px}.phone-wifi-row{display:flex;align-items:center;gap:8px;width:100%;padding:9px 0;border:0;border-top:1px solid #e7e6e2;background:transparent;color:#33312d;text-align:left}.phone-wifi-row b{flex:1}.phone-wifi-row small{color:#90897c}.hotspot-card button{background:#c97557;color:#ffffff;border:0;border-radius:8px;padding:8px 11px;cursor:pointer}

@media(max-width:700px){.start-menu{width:calc(100vw - 16px)}.tray-panel{right:8px;width:calc(100vw - 16px)}.handbook{grid-template-columns:1fr}.handbook aside{display:none}.hb-cards{grid-template-columns:1fr}}

/* Ajustements lisibilité et téléphone autonome */
.phone-apps button .phone-app-icon{display:grid!important;place-items:center;width:47px;height:47px;margin:auto;border-radius:14px;background:linear-gradient(145deg,#d1876d,#8c482f);box-shadow:0 4px 10px #00000044;font-size:24px!important}
.phone-card{margin:12px;padding:14px;background:#ffffff;border-radius:10px;box-shadow:0 3px 10px #28262312}.phone-card p{font-size:12px;color:#6d675b}.phone-card button{background:#c97557;color:#ffffff;border:0;border-radius:8px;padding:8px 11px}.network-card{display:flex;justify-content:space-between}.network-card span{color:#3d7053;font-size:11px}
.phone-power{height:22px!important;width:auto!important;padding:0 6px!important;border-radius:6px!important;font-size:10px!important}
.file-manager{height:100%;padding:14px;background:#191816;color:#e9e8e5}.fm-toolbar{display:flex;align-items:center;gap:8px;padding-bottom:12px;border-bottom:1px solid #603120}.fm-toolbar span{flex:1}.fm-toolbar button{padding:7px 10px;border:1px solid #773d28;border-radius:7px;background:#292724;color:#e2e1dc;cursor:pointer;font:12px system-ui}.fm-toolbar button:hover{background:#5f3120}.fm-toolbar button:disabled{opacity:.45;cursor:default}.fm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(105px,1fr));gap:12px;padding-top:16px}.fm-item{display:flex;flex-direction:column;align-items:center;gap:6px;min-height:105px;padding:10px;border:1px solid transparent;border-radius:10px;background:transparent;color:#e9e8e5;cursor:pointer;text-align:center}.fm-item:hover{background:#33312d;border-color:#6e685c}.fm-item .desktop-file-icon{width:44px;height:44px}.fm-item b{font-size:12px;max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fm-item small,.fm-empty{color:#9f988b;font-size:10px}.fm-empty{grid-column:1/-1;padding:24px;text-align:center}.file-preview .fm-toolbar b{flex:1}.fm-document{max-width:520px;margin:45px auto;padding:28px;text-align:center;border:1px solid #6c3724;border-radius:14px;background:#21201d}.fm-document .desktop-file-icon{margin:auto}.fm-document h2{color:#ffffff}.fm-document p{color:#b7b2a8;font-size:13px}

/* ================= Thème Claude Code — finitions ================= */
/* Le papier peint d'origine est bleu : on le réchauffe pour rester dans la
   palette terracotta/crème plutôt que d'embarquer une seconde image. */
.wallpaper{background:linear-gradient(90deg,#1a1917f0,#211f1dcc 55%,#1a1917f0),
  url('winux-wallpaper.png') center center / cover no-repeat,var(--bg)}
.wallpaper::before{content:"";position:absolute;inset:0;
  background:url('winux-wallpaper.png') center center / cover no-repeat;
  filter:sepia(.62) hue-rotate(-14deg) saturate(.85) brightness(.42);opacity:.55}
.wallpaper::after{background:linear-gradient(180deg,#1a191766,transparent 22%,transparent 72%,#14130fa6)}

.brand-mark{background:linear-gradient(135deg,var(--accent),var(--accent-solid));color:#fff;
  box-shadow:0 5px 18px #d977573d}
.desktop-brand{color:var(--ink)}
.desktop-brand small{color:var(--accent)}
.icon:hover,.icon:focus-visible{background:#2624219e;border-color:#d9775766}
.icon,.desktop-file{color:#f4f2ea}

/* fenêtres */
.win{border-color:var(--line);box-shadow:0 22px 60px #00000073}
.win.active{border-color:#d9775766}
.titlebar{background:var(--panel2)}
.wb-close:hover{background:var(--danger);color:#fff}
.wb-min:hover,.wb-max:hover{background:#3a3733;color:var(--ink)}

/* barre des tâches et menu démarrer */
.taskbar{background:#1a1917f2;border-top:1px solid var(--line)}
.task.active{border-color:#d9775759;background:#2b2724}
.start{background:linear-gradient(135deg,var(--accent2),var(--accent-solid));color:#fff}
.start-menu{background:var(--panel);border-color:var(--line)}

/* terminal : crème sur gris chaud, accent terracotta pour l'invite */
.term,.term-out{background:#141311;color:var(--ink)}
.term-prompt{color:var(--accent)}
.c-g{color:var(--green)}.c-b{color:#c9a888}.c-y{color:var(--warn)}
.c-r{color:var(--danger)}.c-w{color:#fbfaf6}.c-d{color:var(--dim)}

/* états « validé » : vert sauge, le seul rappel non terracotta */
.obj.done,.badge.done,.mission.done .badge,.guide-step.done span{color:var(--green)}
.guide-progress i,.gauge i{background:linear-gradient(90deg,var(--accent),var(--warn))}

/* commandes cliquables du plan de mission (auparavant un simple <code> inerte) */
.guide-command{display:inline-block;max-width:100%;padding:5px 9px;border:1px solid var(--line);
  border-radius:7px;background:#211f1d;color:var(--accent);font:inherit;font-size:12px;
  text-align:left;cursor:pointer;transition:border-color .15s,background .15s}
.guide-command:hover{border-color:var(--accent);background:#2b2724}

:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* téléphone : écran clair chaud plutôt que gris bleuté */
.phone-shell{background:#f5f3ec;color:#26231f}
.phone-status,.phone-nav{background:#141311}
.phone-power{background:#332f2b!important;color:#e8e4da!important}
.phone-power:hover{background:var(--accent-solid)!important;color:#fff!important}
.phone-apps button .phone-app-icon{background:linear-gradient(145deg,var(--accent),var(--accent2))}
.phone-card button,.hotspot-card button{background:var(--accent-solid);color:#fff}
.phone-wall{background:linear-gradient(#1a1917cc,#211f1dcc),url('winux-wallpaper.png') center/cover}
.call-btn{background:var(--green)}
/* Pastille « non lus » : fond assez sombre pour rester lisible en blanc. */
.phone-apps button>i,#notifyBadge,.bell i{background:#a83f2e;color:#fff}

/* Page d'accueil de Foxy : elle était claire alors que ses textes (titre « Foxy
   Search », intitulés du héros) étaient blancs — donc illisibles. On la passe sur
   la surface sombre du thème, cohérente avec le reste du bureau. */
.foxy-home{color:var(--ink);background:linear-gradient(160deg,#1e1c1a,#262421)}
.foxy-home h2,.foxy-search-brand h2{color:var(--ink)}
.foxy-home h3{color:var(--accent)}
.foxy-home-hero{color:var(--ink);background:linear-gradient(120deg,#2d2925,#211f1d);border:1px solid var(--line)}
.foxy-home-hero span{color:var(--accent)}
.foxy-home-hero p,.foxy-search-brand p,.foxy-grid small,.foxy-home-tip,.foxy-results .fx em{color:var(--dim)}
.foxy-grid button,.foxy-results .fx{background:#211f1d;color:var(--ink);border-color:var(--line);box-shadow:none}
.foxy-grid button:hover,.foxy-results .fx:hover{border-color:var(--accent)}
.foxy-search{background:#1a1917;border-color:var(--line)}
.foxy-search button{background:var(--accent-solid);color:#fff8f3}
.foxy-view,.foxy-view iframe{background:var(--bg)}

/* Contrôles natifs (curseurs de volume, cases à cocher) alignés sur l'accent. */
html{accent-color:var(--accent)}
.woop-bar button{background:var(--accent);color:#fff}
.woop-prog i{background:linear-gradient(90deg,var(--accent),var(--warn))}
.woop-track:hover{background:#d977571f}
.woop-track.playing{background:#d9775733;color:#faf9f5}
.woop-top h2{color:var(--accent)}

/* Écran de démarrage : les lignes du journal étaient toutes collées faute de
   conservation des sauts de ligne ; halo du logo repassé sur l'accent. */
.boot-log{white-space:pre-wrap}
.boot-logo{color:var(--accent);text-shadow:0 0 18px #d9775759}
.boot{background:var(--bg);color:var(--accent)}

/* Ouverture de session Winux : affichée avant le noyau et le bureau. */
.login-screen{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;overflow:auto;padding:28px;
  background:#090908;color:#eeeae4;font-family:Inter,"Segoe UI",sans-serif}
.login-screen[hidden]{display:none}.login-atmosphere{position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(circle at 50% 25%,#62311e52 0,transparent 34%),linear-gradient(135deg,#050504,#181512 55%,#090807)}
.login-atmosphere:after{content:"";position:absolute;inset:0;opacity:.15;background:repeating-linear-gradient(0deg,transparent 0 3px,#fff 4px);mix-blend-mode:overlay}
.login-card{position:relative;width:min(440px,100%);padding:34px 38px 28px;border:1px solid #71402f;border-radius:22px;
  background:#191816ed;box-shadow:0 32px 90px #000,0 0 70px #d7673820;backdrop-filter:blur(16px)}
.login-logo{display:block;width:210px;max-width:72%;height:auto;margin:0 auto 20px;filter:drop-shadow(0 8px 22px #000)}
.login-machine{display:flex;gap:8px;align-items:center;padding:9px 11px;border:1px solid #4a423a;border-radius:8px;background:#0d0d0c;
  color:#928c82;font:700 9px var(--mono);letter-spacing:.1em}.login-machine i{width:7px;height:7px;border-radius:50%;background:#8fc9a7;box-shadow:0 0 10px #8fc9a7}
.login-machine b{margin-left:auto;color:#8fc9a7;font-size:8px}.login-card h1{margin:25px 0 7px;color:#fff;font-size:29px}.login-card>p{margin:0 0 20px;color:#aaa297;font-size:13px;line-height:1.55}
.login-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-bottom:18px;padding:4px;border-radius:10px;background:#0e0e0d}
.login-tabs button{border:0;border-radius:7px;padding:9px;background:transparent;color:#918b82;font-weight:700;cursor:pointer}.login-tabs button.active{background:#332820;color:#f0c0aa}
#winuxAuthForm{display:grid;gap:14px}#winuxAuthForm label{display:grid;gap:6px;color:#c9c3ba;font-size:11px;font-weight:700;letter-spacing:.04em}
#winuxAuthForm input{width:100%;box-sizing:border-box;border:1px solid #50463f;border-radius:9px;padding:12px 13px;background:#0e0e0d;color:#faf8f4;outline:0;font:14px var(--mono)}
#winuxAuthForm input:focus{border-color:#d97757;box-shadow:0 0 0 3px #d9775728}.login-password{position:relative}.login-password input{padding-right:44px!important}.login-password button{position:absolute;right:4px;top:4px;bottom:4px;width:36px;border:0;background:transparent;color:#a79f95;cursor:pointer}
.login-message{min-height:18px!important;margin:-2px 0 0!important;color:#e48c74!important;font:12px/1.45 var(--mono)!important}.login-message.ok{color:#9acbac!important}
.login-submit{height:46px;border:0;border-radius:10px;background:linear-gradient(135deg,#d97757,#a74729);color:white;font-weight:800;cursor:pointer;box-shadow:0 9px 25px #b64f2d30}
.login-submit:disabled{opacity:.65;cursor:wait}.login-submit.loading i{display:inline-block;width:13px;height:13px;margin-left:9px;border:2px solid #ffffff55;border-top-color:#fff;border-radius:50%;animation:login-spin .7s linear infinite}
.login-sequence{min-height:128px;padding:13px;border:1px solid #493e35;border-radius:10px;background:#090908;color:#9dc8ad;white-space:pre-wrap;font:11px/1.65 var(--mono)}
.login-card footer{margin-top:20px;padding-top:15px;border-top:1px solid #3b342e;color:#736e67;text-align:center;font-size:10px}
@keyframes login-spin{to{transform:rotate(360deg)}}
@media(max-width:520px){.login-screen{padding:14px}.login-card{padding:25px 22px 22px;border-radius:16px}.login-card h1{font-size:24px}}

/* Barre système Winux v18 — inspirée des bureaux Linux actuels. */
.taskbar{height:56px;gap:10px;padding:0 12px;background:linear-gradient(180deg,#202420f2,#111411f8);border-top:1px solid #ffffff18;box-shadow:0 -10px 35px #0005;backdrop-filter:blur(22px) saturate(1.25)}
.start{height:40px;padding:4px 12px 4px 5px;gap:9px;border:1px solid #ffffff17;border-radius:10px;background:#ffffff09;color:#f5f7f5;font-family:system-ui,Arial,sans-serif;font-size:12px}.start:hover{background:#ffffff13;border-color:#75dd9760}.start .brand-mark{width:31px;height:31px;border-radius:8px;background:linear-gradient(145deg,#68ed90,#247642);color:#07160c;box-shadow:inset 0 1px #ffffff66,0 4px 12px #0006}
.tasklist{align-items:center;gap:5px}.task{position:relative;height:39px;max-width:175px;padding:5px 10px;border-color:transparent;border-radius:9px;background:transparent;color:#aab0ab;font-family:system-ui,Arial,sans-serif}.task:hover{background:#ffffff0c;color:#fff}.task.active{border-color:#ffffff12;background:#ffffff0f;color:#fff}.task.active:after{content:"";position:absolute;left:13px;right:13px;bottom:1px;height:2px;border-radius:2px;background:#51df7e;box-shadow:0 0 8px #51df7e}.task .app-glyph{width:22px;height:22px}.task span{font-size:11px}
.tray{height:42px;gap:5px;padding:3px 5px;border:1px solid #ffffff0d;border-radius:11px;background:#080b09a8;font-family:system-ui,Arial,sans-serif}.tray-btn{display:grid;place-items:center;width:34px;height:34px;padding:5px;border:0;border-radius:8px;background:transparent;color:#d9dfda}.tray-btn:hover{background:#ffffff12;color:#fff}.tray-btn .app-glyph{width:23px;height:23px;filter:none}.tray-btn.bell{font-size:0}.tray-btn.bell:before{content:none}.tray-btn.bell i{right:-2px;top:-4px;min-width:16px;height:16px;padding:0 4px;background:#df5e52;font:700 9px/16px system-ui;box-shadow:0 2px 5px #0007}.phone-launch{position:relative}.phone-launch .app-glyph{width:25px;height:25px}.tray-live{position:absolute;right:5px;bottom:4px;width:7px;height:7px;border:1px solid #101310;border-radius:50%;background:#47e27b;box-shadow:0 0 6px #47e27b}.tray-divider{width:1px;height:23px;margin:0 3px;background:#ffffff18}
.tray .stat{height:32px;padding:3px 7px;border-radius:7px;gap:5px}.tray .stat:hover{background:#ffffff0a}.tray .level-stat{flex-direction:column;justify-content:center;gap:0;min-width:35px}.tray .level-stat small{font-size:7px;line-height:8px;letter-spacing:.12em}.tray .level-stat b{font-size:12px;line-height:13px}.winux-credit{min-width:72px}.winux-credit .app-glyph{width:23px;height:23px}.winux-credit b{font-size:12px}.winux-credit small{color:#e3b742!important;font-size:9px!important;font-weight:800}.tray .trace{padding-inline:7px}.tray .trace>small{font-size:7px}.gauge{width:52px;height:6px;border:0;background:#313631}.clock{display:flex;flex-direction:column;min-width:49px;padding:2px 6px;color:#f2f4f2;text-align:right;font-family:system-ui,Arial,sans-serif;font-variant-numeric:tabular-nums}.clock b{font-size:12px;line-height:14px}.clock small{color:#89908b;font-size:8px;line-height:10px}
@media(max-width:850px){.start>span:last-child,.task span,.tray .level-stat,#trayUser{display:none}.task{width:39px;padding:7px;justify-content:center}.task.active:after{left:9px;right:9px}.tray{gap:2px}.winux-credit{min-width:auto}.tray .trace .gauge{display:none}}
:focus-visible{outline:2px solid #72e99a!important;outline-offset:2px}
@media(prefers-reduced-motion:reduce),html[data-reduce-motion="1"]{*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}
html[data-high-contrast="1"]{--ink:#fff;--dim:#d9e2da;--line:#87c99a;--bg:#090c0a;--panel:#101610}html[data-high-contrast="1"] .icon,html[data-high-contrast="1"] .taskbar{border-color:#87c99a}
html[data-taskbar-skin="glass"] .taskbar{background:linear-gradient(180deg,#10251cdd,#070d0bef);border-top-color:#66e49588}
html[data-taskbar-skin="orange"] .taskbar{background:linear-gradient(180deg,#382118f2,#160d09f8);border-top-color:#f08a5c88}
html[data-taskbar-skin="compact"] .taskbar{height:42px;padding:0 8px;gap:5px;background:linear-gradient(180deg,#101713ee,#080b09f8);border-top-color:#66e49566}
html[data-taskbar-skin="compact"] .taskbar .task{height:32px;padding:3px 8px}
html[data-taskbar-skin="compact"] .taskbar .start-button,html[data-taskbar-skin="compact"] .taskbar .tray-btn{height:32px}
.woop-tray{display:flex;align-items:center;gap:3px;min-width:0;max-width:182px;margin-right:5px;padding:3px;border:1px solid #34513a;border-radius:9px;background:#152119}.woop-tray[hidden]{display:none}.woop-tray button{border:0;background:transparent;color:#ecf5ee;cursor:pointer}.woop-tray #woopifyTrayOpen{display:flex;align-items:center;gap:5px;min-width:0;padding:1px}.woop-tray img{width:23px;height:23px;object-fit:contain}.woop-tray span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:10px;max-width:115px}.woop-tray #woopifyTrayToggle{width:25px;height:25px;border-radius:5px;font-size:13px}.woop-tray #woopifyTrayToggle:hover{background:#294b32}@media(max-width:1180px){.woop-tray span{display:none}.woop-tray{max-width:65px}}@media(max-width:800px){.woop-tray{display:none}}
