@import url("tool-shell.css");
.eyebrow{color:#ffd18a;border-color:#f59e0b55;background:#f59e0b14}
.brand-mark{background:linear-gradient(140deg,#f59e0b,#f97316)}

/* fond animé, inspiré du logo (dégradé ambre → orange + motif obturateur) */
.bg-anim{position:fixed;inset:0;overflow:hidden;z-index:-1;pointer-events:none}
.blob{position:absolute;border-radius:50%;filter:blur(70px);opacity:.28;animation:egoFloat 22s ease-in-out infinite}
.b1{width:420px;height:420px;background:#f59e0b;top:-140px;left:-110px}
.b2{width:360px;height:360px;background:#f97316;bottom:-150px;right:-90px;animation-duration:27s;animation-delay:-6s}
.b3{width:260px;height:260px;background:#ffd18a;top:35%;left:58%;animation-duration:19s;animation-delay:-3s}
@keyframes egoFloat{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(36px,-26px) scale(1.08)}}
.aperture{position:absolute;top:-90px;right:-90px;width:480px;height:480px;opacity:.07;animation:egoSpin 90s linear infinite}
@keyframes egoSpin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion: reduce){.blob,.aperture{animation:none}}

/* header */
.header-actions{margin-left:auto;display:flex;align-items:center;gap:6px}
.headerbtn{background:transparent;border:1px solid #f59e0b55;color:#ffd18a;border-radius:10px;padding:6px 11px;font-size:12.5px;cursor:pointer;transition:.15s}
.headerbtn:hover{background:#f59e0b1a}

/* onglets */
.tabbar{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 16px;scrollbar-width:thin}
.tabbtn{flex:none;padding:8px 14px;border-radius:999px;border:1px solid #94aacd2e;background:#0f1524a6;color:#cfe0ff;font-size:12.5px;cursor:pointer;white-space:nowrap;transition:.15s}
.tabbtn:hover{border-color:#f59e0b88}
.tabbtn.active{background:linear-gradient(140deg,#f59e0b,#f97316);color:#1c1206;border-color:transparent;font-weight:750}
.tabpanel{animation:egoFade .25s ease}
@keyframes egoFade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.tool-desc{color:#a9b7ca;font-size:13px;margin:-4px 0 14px}
.tool-options{margin:10px 0}
.sep{border:none;border-top:1px solid #94aacd2e;margin:18px 0}

/* champs communs */
.dropzone{display:grid;place-items:center;text-align:center;min-height:140px;padding:22px;border:1.5px dashed #f59e0b88;border-radius:17px;background:#f59e0b0b;transition:.2s}
.dropzone.drag{background:#f59e0b20;border-color:#ffd18a}
.dropzone strong{display:block}
.dropzone p{margin:6px 0 13px;color:#a9b7ca;font-size:13px}
.dropzone input{max-width:100%;font-size:12px}
.range-row{display:grid;grid-template-columns:1fr 55px;gap:12px;align-items:center}
.range-row output{text-align:right}
.file-list{padding:0;list-style:none;margin:12px 0}
.file-list li,.result-card{padding:10px 12px;border:1px solid #94aacd2e;border-radius:10px;margin-top:7px;color:#dce7f7;font-size:12px;overflow-wrap:anywhere}
.results{display:grid;gap:10px;margin-top:12px}
.result-card h3{font-size:14px;margin:0 0 5px}
.result-card p{color:#a9b7ca;font-size:12px}
.result-card a{color:#a9d0ff;font-weight:750;font-size:13px}
.check{display:flex;align-items:center;gap:8px;font-size:13px;color:#cfe0ff;margin-top:8px}
.textarea{width:100%;min-height:110px;resize:vertical;background:#0b0f1a;border:1px solid #94aacd2e;border-radius:10px;color:#dce7f7;font-size:12px;padding:10px;font-family:ui-monospace,monospace}
.btn.ghost{background:transparent;border:1px solid #94aacd4a;color:#dce7f7;border-radius:10px;padding:8px 14px;font-size:13px;cursor:pointer}
.btn.ghost:hover{border-color:#f59e0b88;color:#ffd18a}

/* aperçus canvas */
canvas.preview{max-width:100%;border-radius:12px;border:1px solid #94aacd2e;background:#0b0f1a;display:block;margin:12px 0}
#crop-canvas,#picker-canvas{cursor:crosshair;touch-action:none}

/* palette / pipette */
.swatches{display:flex;flex-wrap:wrap;gap:10px}
.swatch{width:80px;text-align:center;cursor:pointer;font-size:11px;color:#dce7f7;background:none;border:none;padding:0;font-family:inherit}
.swatch i{display:block;width:100%;height:48px;border-radius:10px;border:1px solid #ffffff22;margin-bottom:5px}

/* favicon */
.fav-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:10px}
.fav-grid .result-card{text-align:center}
.fav-grid img{width:60px;height:60px;object-fit:contain;background:#0b0f1a;border-radius:8px;margin-bottom:6px}

/* tutoriel guidé */
.tour-hole{position:fixed;border-radius:12px;box-shadow:0 0 0 9999px rgba(6,9,16,.74);transition:top .25s ease,left .25s ease,width .25s ease,height .25s ease;pointer-events:none;z-index:1000}
.tour-bubble{position:fixed;max-width:290px;background:#141b2c;border:1px solid #f59e0b66;border-radius:14px;padding:14px 16px;color:#e7edf7;font-size:13px;line-height:1.5;z-index:1001;box-shadow:0 14px 34px #000a;transition:top .25s ease,left .25s ease}
.tour-bubble:before{content:"";position:absolute;width:14px;height:14px;background:#141b2c;border:1px solid #f59e0b66;border-right:none;border-bottom:none;transform:rotate(45deg)}
.tour-bubble.arrow-top:before{top:-8px;left:26px}
.tour-bubble.arrow-bottom:before{bottom:-8px;left:26px;transform:rotate(225deg)}
.tour-progress{font-size:11px;color:#f2b767;margin:0 0 4px;font-weight:700;letter-spacing:.03em}
.tour-actions{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:12px}
.tour-actions button{background:linear-gradient(140deg,#f59e0b,#f97316);border:none;color:#1c1206;font-weight:750;border-radius:8px;padding:6px 13px;font-size:12px;cursor:pointer}
.tour-actions button.ghost{background:transparent;color:#a9b7ca;font-weight:600;padding:6px 4px}
