.atelier-note{padding:24px 22px;color:var(--c-text-muted,#77818d);font-size:13px;line-height:1.7}.atelier-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;min-height:300px;padding:42px 48px;margin-bottom:38px;background:linear-gradient(120deg,#f7f4ed,#eaece8)}.eyebrow{font-size:11px;font-weight:600;letter-spacing:2px;color:#74796d}.atelier-hero h2{font-size:clamp(32px,4vw,54px);line-height:1.06;letter-spacing:-2px;margin:18px 0;color:#283b37}.atelier-hero p{color:#67716c;line-height:1.7}.hero-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}.hero-sculpture{position:relative;width:250px;height:240px;margin-right:35px;transform:rotate(-8deg)}.cube{position:absolute;width:88px;height:88px;border-radius:16px;box-shadow:14px 20px 0 #0002,inset -9px -9px 0 #0001;transform:rotate(-25deg) skew(10deg,10deg);z-index:2}.cube--one{background:#c66445;left:34px;top:38px}.cube--two{background:#ebbd57;left:127px;top:86px}.cube--three{background:#598278;left:49px;top:141px}.sculpture-base{position:absolute;inset:100px -15px -20px;background:repeating-linear-gradient(0deg,transparent 0 22px,#7182771c 23px 24px),repeating-linear-gradient(90deg,transparent 0 22px,#7182771c 23px 24px);transform:rotate(-25deg) skew(10deg,10deg);border-radius:20px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:22px 0}.section-heading h2{font-size:20px;margin:0}.section-heading>span,.muted{font-size:13px;color:#788078}.creation-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:24px}.creation-card{text-decoration:none!important;color:inherit;overflow:hidden;padding:0!important;transition:transform .2s,box-shadow .2s}.creation-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px #243c3710}.creation-card__image{height:205px;position:relative;background:#ecede8;overflow:hidden}.creation-card__image img{width:100%;height:100%;object-fit:cover}.creation-card__image .tag{position:absolute;left:16px;top:16px;background:#ffffffe8}.placeholder{display:grid;place-items:center;height:100%;min-height:180px;font-size:75px;color:#7d998c;background:radial-gradient(ellipse at 25% 25%,#f5eedc,transparent),#e5eae3}.creation-card__body{padding:22px}.creation-card h2{font-size:21px;margin:0 0 9px}.creation-card p{font-size:13px;color:#757c76;min-height:39px;line-height:1.5;margin:0 0 20px}.card-link{display:flex;justify-content:space-between;border-top:1px solid #e9eae5;padding-top:14px;font-size:12px;font-weight:600;color:#426b5b}.state{padding:44px!important;text-align:center}.state p{color:#788078;margin-bottom:24px}.project-intro{display:flex;gap:28px;align-items:center;padding:22px}.project-intro img{width:160px;height:120px;object-fit:cover;border-radius:8px}.preserve-lines{white-space:pre-line;line-height:1.6;overflow-wrap:anywhere}.form-layout{display:grid;grid-template-columns:minmax(0,680px) minmax(220px,1fr);gap:45px}.creation-form{padding:30px;display:flex;flex-direction:column;gap:12px}.creation-form label{font-size:14px;font-weight:600;margin-top:14px}.creation-form label small{font-weight:400;color:#888;margin-left:5px}.creation-form input:not([type=hidden]),.creation-form textarea{width:100%;box-sizing:border-box;border:1px solid #daddd5;padding:13px;border-radius:6px;background:#fff;font:inherit}.creation-form input:focus,.creation-form textarea:focus{outline:2px solid #659381;outline-offset:2px}.creation-form small,.upload-form small{color:#7c837a;font-size:12px}.form-actions{display:flex;justify-content:flex-end;align-items:center;gap:14px;margin-top:20px}.form-hint{padding-top:30px;max-width:320px}.form-hint h2{font-size:28px;line-height:1.2}.form-hint p{color:#7a8178;line-height:1.8;font-size:14px}.swatches{display:flex;gap:12px;margin-top:35px}.swatches i{width:32px;height:32px;border-radius:50%;background:#c66445}.swatches i:nth-child(2){background:#ebbd57}.swatches i:nth-child(3){background:#598278}.swatches i:nth-child(4){background:#344151}.current-image{max-width:180px;max-height:150px;object-fit:contain}.piece-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:30px}.reference-photo{overflow:hidden}.reference-photo img{width:100%;display:block;max-height:370px;object-fit:contain;background:#eeeee8}.reference-caption{padding:22px;font-size:14px}.upload-form{padding:24px;margin-bottom:24px;border:1px dashed #9aada2!important;background:#f7faf7}.upload-form label{font-weight:600}.upload-form p{font-size:13px;color:#778078}.upload-form input{max-width:100%;margin-top:8px}.upload-form .form-actions{justify-content:space-between;flex-wrap:wrap}.model-card{overflow:hidden;margin-bottom:24px}.model-card header{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:22px}.model-card h3{font-size:16px;margin:9px 0;overflow-wrap:anywhere}.model-card small{color:#7c847c;font-size:12px}.viewer{height:390px;position:relative;background:radial-gradient(ellipse at 50% 35%,#f5f6f2,#e0e5dd);overflow:hidden}.viewer canvas{display:block;width:100%;height:100%;touch-action:none}.preview-launch{position:absolute;inset:0;width:100%;border:0;background:transparent;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;font:inherit;cursor:pointer;color:#426b5b}.preview-launch>span{font-size:70px}.viewer-tools{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:12px 22px}.viewer-tools p{font-size:12px;color:#748070;margin:0}.filament-colors{display:flex;gap:12px;flex-wrap:wrap;padding:0 22px 18px}.filament-colors:empty{display:none}.filament-colors span{display:flex;align-items:center;gap:6px;font-size:12px;color:#76806e}.filament-colors i{display:inline-block;width:18px;height:18px;border-radius:50%;border:1px solid #0002}.slicer-preview{padding:0 22px 22px}.slicer-preview img{width:200px;max-width:100%;border-radius:8px;background:#eee}.slicer-preview p{font-size:12px;color:#737e70}.notice{padding:15px 20px;border-radius:7px;background:#e5f3e8;color:#285438;margin-bottom:20px}.notice--error{background:#fff0e9;color:#8b392e}.topbar__crumb a{color:inherit}.model-card [hidden]{display:none}@media(max-width:1000px){.hero-sculpture{margin-right:0;transform:scale(.8)}.atelier-hero{padding:30px}.piece-layout{grid-template-columns:200px minmax(0,1fr)}.form-layout{grid-template-columns:1fr}.form-hint{display:none}}@media(max-width:700px){.atelier-hero{min-height:0}.hero-sculpture{display:none}.atelier-hero h2{letter-spacing:-1px}.desktop-break{display:none}.piece-layout{grid-template-columns:1fr}.reference-photo{display:flex}.reference-photo>a,.reference-photo>.placeholder{width:35%;flex-shrink:0}.reference-photo img{height:150px;object-fit:cover}.reference-caption{padding:18px}.section-heading>span{display:none}.creation-form{padding:22px}.model-card header{padding:16px}.viewer{height:300px}.viewer-tools{padding:12px}.project-intro img{width:100px;height:100px}.atelier-note{display:none}.form-actions{flex-wrap:wrap}}

/* La bibliothèque et le lecteur restent utilisables depuis un lien Telegram sur mobile. */
@media (max-width: 700px) {
    .app { display: block; }
    .sidebar { position: static; width: 100%; height: auto; flex-direction: row; align-items: center; flex-wrap: wrap; }
    .sidebar__brand { flex: 1 1 150px; padding: 12px 16px; }
    .sidebar__brand-sub { display: none; }
    .sidebar__item { padding: 12px; border-left: 0; }
    .main { width: 100%; }
    .topbar { padding: 16px; flex-wrap: wrap; }
    .content { padding: 16px; }
    .piece-layout { grid-template-columns: minmax(0, 1fr); }
    .piece-layout > *, .reference-caption, .model-card header > div { min-width: 0; }
    .model-card header { flex-wrap: wrap; }
    .model-card header > div { flex: 1 1 170px; }
    .viewer-tools { flex-wrap: wrap; }
    .viewer-tools p { flex: 1 1 180px; }
}

.color-help { flex: 1 0 100%; margin: 0 0 4px; font-size: 12px; color: #63705f; }
.color-control { display: flex; align-items: center; gap: 8px; border: 1px solid #d5ded2; border-radius: 8px; padding: 8px; max-width: 100%; }
.color-control label { display: flex; align-items: center; gap: 7px; font-size: 12px; cursor: pointer; overflow-wrap: anywhere; }
.color-control input { width: 17px; height: 17px; accent-color: #426b5b; flex-shrink: 0; }
.color-control i { flex-shrink: 0; }
.color-control button { background: #edf2e9; border: 0; border-radius: 5px; padding: 8px; color: #36573f; cursor: pointer; }
.color-control:has(input:not(:checked)) { background: #f3f3f0; color: #7b8078; }
.color-control:has(input:not(:checked)) i { opacity: .3; }

.official-form{padding:16px 20px;border-top:1px solid #dce4d7}.official-form p{color:#52634f;font-size:13px;margin:0 0 12px}.official-form [role="status"]:empty{display:none}.official-form [role="status"]{margin:10px 0 0}.official-form button{white-space:normal}

.print-inspection,.toolpath-panel{border-top:1px solid #dce4d7;background:#f6f8f3}.print-inspection{margin:0 0 18px}.toolpath-panel{margin-bottom:24px}.print-inspection summary,.toolpath-panel summary{padding:16px 20px;cursor:pointer;font-weight:600;font-size:14px}.inspection-body{padding:0 20px 18px}.inspection-body p{font-size:13px;line-height:1.6;overflow-wrap:anywhere}.inspection-body .inspection-help{font-size:12px;color:#687465}.inspection-controls{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.inspection-controls label{flex:1 1 150px;font-size:12px}.inspection-body select{display:block;max-width:100%;width:100%;padding:9px;border:1px solid #cbd7c8;border-radius:6px;background:white;color:#283b37}.inspection-body button{white-space:normal}.height-control{display:block;font-size:13px;margin:16px 0}.height-control output{font-weight:600;float:right}.height-control input{display:block;width:100%;margin-top:12px;accent-color:#426b5b}.inspection-body input[type=checkbox]{accent-color:#426b5b;width:17px;height:17px;vertical-align:middle}.toolpath-file input{display:block;width:100%;max-width:100%;margin:10px 0}.support-result{padding:12px;background:#edf0e6;border-radius:6px;color:#334b39}.inspection-body [data-risk-status]{color:#963824}.inspection-body [data-risk-status]:empty{display:none}
.inspection-controls input[type=number]{display:block;width:100%;max-width:100%;box-sizing:border-box;padding:9px;border:1px solid #cbd7c8;border-radius:6px;background:white;color:#283b37}.inspection-legend{display:flex;gap:12px;flex-wrap:wrap}.support-offset{color:#237b53}.support-bridge{color:#9a6507}.support-risk{color:#b52c2c}

/* Deux poignées natives superposées, une seule piste ; clavier et tactile. */
.height-interval__heading{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.height-interval__heading output{float:none}
.height-interval__slider{position:relative;height:44px;margin:4px 12px;--lower:0%;--upper:100%}
.height-interval__rail,.height-interval__selection{position:absolute;top:19px;height:6px;border-radius:6px;left:0;right:0;background:#ccd6c7}
.height-interval__selection{left:var(--lower);right:calc(100% - var(--upper));background:#426b5b}
.height-interval__slider input[type=range]{position:absolute;inset:0;width:100%;height:44px;margin:0;padding:0;border:0;background:transparent;appearance:none;-webkit-appearance:none;pointer-events:none;outline:none}
.height-interval__slider input::-webkit-slider-runnable-track{height:6px;background:transparent}
.height-interval__slider input::-moz-range-track{height:6px;background:transparent}
.height-interval__slider input::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:24px;height:24px;margin-top:-9px;border:3px solid white;border-radius:50%;background:#244e45;box-shadow:0 0 0 1px #244e45;pointer-events:auto;cursor:ew-resize;touch-action:none}
.height-interval__slider input::-moz-range-thumb{width:18px;height:18px;border:3px solid white;border-radius:50%;background:#244e45;box-shadow:0 0 0 1px #244e45;pointer-events:auto;cursor:ew-resize;touch-action:none}
.height-interval__slider input[data-inspect=lowerHeight]::-webkit-slider-thumb{background:#9a6636;box-shadow:0 0 0 1px #9a6636}
.height-interval__slider input[data-inspect=lowerHeight]::-moz-range-thumb{background:#9a6636;box-shadow:0 0 0 1px #9a6636}
.height-interval__slider input:focus-visible::-webkit-slider-thumb{outline:3px solid #6a91c0;outline-offset:3px}
.height-interval__slider input:focus-visible::-moz-range-thumb{outline:3px solid #6a91c0;outline-offset:3px}
.height-interval__slider--at-top input[data-inspect=lowerHeight]{z-index:1}
.height-interval__ends{display:flex;justify-content:space-between;gap:10px;font-size:12px}
.height-interval__ends>span:first-child{color:#82532b}
.height-interval__ends>span:last-child{color:#244e45}

.model-card{scroll-margin-top:24px}.model-card:target{outline:2px solid #426b5b;outline-offset:3px}
.model-actions{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap;padding:0 22px 18px}
.model-actions .official-form{padding:0;border:0;min-width:0}.model-actions .btn{white-space:normal}
.model-actions-help{flex:1 0 100%;margin:0;font-size:12px;color:#63705f;line-height:1.5}
.btn--danger{color:#9b302b!important;border:1px solid #dfb6b2!important;background:#fff7f5!important}.btn--danger:hover{background:#f9e3df!important}
.delete-confirmation{max-width:680px;margin:auto}.delete-confirmation h2{overflow-wrap:anywhere}.delete-confirmation .form-actions{flex-wrap:wrap}
