@import url('/assets/fonts.css');
:root{--bg:#09090d;--surface:#111116;--line:#25252e;--text:#f3f2f7;--muted:#96949f;--purple:#a891ff;--accent:#8c6bfa;--green:#91d8b0;color-scheme:dark;font-family:Inter,'Segoe UI',Arial,sans-serif;background:var(--bg);color:var(--text)}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--purple);outline-offset:5px}button{color:inherit}img{display:block;max-width:100%}button{background:none;border:0}p{line-height:1.75;color:var(--muted)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:600;letter-spacing:-.045em}h1{font-size:clamp(42px,5.2vw,76px);line-height:1.08}h2{font-size:clamp(30px,3vw,43px);line-height:1.2}h3{font-size:25px;line-height:1.3}h1>span,h2>span{color:var(--purple)}[hidden]{display:none!important}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.eyebrow{font-family:'JetBrains Mono',Consolas,monospace;font-size:10px;font-weight:500;letter-spacing:1.6px;color:#b5b0c5;display:block;line-height:1.7}.dot{display:inline-block;flex:none;width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 9px #91d8b02a}.site-header{height:96px;position:sticky;top:0;z-index:20;background:#09090de8;border-bottom:1px solid #ffffff08;transition:background .3s,box-shadow .3s}.site-header.scrolled{background:#09090dce;backdrop-filter:blur(18px);box-shadow:0 5px 30px #0003}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:inline-flex;align-items:center;gap:11px;font-size:20px;font-weight:800;letter-spacing:2.2px;line-height:1.2}.brand small{display:block;font-family:Consolas,monospace;font-size:8px;letter-spacing:2.5px;font-weight:400;color:#aaa4b6;margin-top:5px}.brand-symbol{font-size:33px;letter-spacing:-8px;line-height:1;color:var(--purple);width:36px;transform:skew(-8deg);font-weight:900}.brand-symbol>span{color:white;font-size:40px}.site-header nav{display:flex;gap:34px;height:100%;align-items:center}.site-header nav a{font-size:12px;color:#a3a0ad;position:relative;height:100%;display:flex;align-items:center;transition:color .2s}.site-header nav a:hover,.site-header nav a.active{color:#fff}.site-header nav a.active:after{content:'';width:17px;height:2px;background:var(--purple);position:absolute;bottom:24px;left:0}.header-note{font-family:Consolas,monospace;font-size:10px;color:#9996a4;display:flex;align-items:center;gap:9px}.menu-toggle{display:none}.skip{position:fixed;left:15px;top:-100px;background:var(--accent);padding:15px;z-index:100}.skip:focus{top:15px}
.hero{min-height:648px;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:20px;position:relative;padding-top:64px;padding-bottom:62px}.hero-copy{z-index:2}.tiny-cross{font-size:20px;color:var(--purple);vertical-align:middle;margin-right:7px}.hero h1{font-size:clamp(68px,6.3vw,92px);line-height:1.02;margin:29px 0 28px;letter-spacing:-.065em}.hero h1>span{background:linear-gradient(105deg,#b9a6fc,#a083f7 60%,#7a69c9);background-clip:text;color:transparent}.hero-lead{font-size:18px;line-height:1.65;margin-bottom:10px;color:#cfccd7;letter-spacing:-.3px}.hero-sub{font-size:11px;margin-bottom:30px;color:#8f8b9b}.hero-actions{display:flex;gap:26px;align-items:center}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:48px;border-radius:6px;padding:14px 21px;background:linear-gradient(110deg,#9270fb,#7c5be1);color:#fff;font-size:12px;font-weight:600;box-shadow:0 4px 24px #8c6bfa20;border:1px solid #bc9aff30;transition:background .2s,transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px);box-shadow:0 7px 28px #8c6bfa38;background:#9978ff}.button span{font-size:18px}.button.secondary{background:#ffffff05;border-color:var(--line);box-shadow:none}.text-link{display:inline-flex;align-items:center;gap:14px;font-size:11px;font-weight:500;color:#c3bfcd;transition:color .2s;padding:8px 0}.text-link:hover{color:var(--purple)}.hero-bottom{display:flex;align-items:center;gap:9px;font-family:Consolas,monospace;font-size:9px;color:#85818e;margin-top:37px}.hero-visual{height:510px;position:relative;display:flex;align-items:center;justify-content:center;isolation:isolate;background:radial-gradient(ellipse at 51% 53%,#5232a532,transparent 64%)}.visual-grid{position:absolute;inset:12px -10px;background-image:linear-gradient(#9385ca0c 1px,transparent 1px),linear-gradient(90deg,#9385ca0c 1px,transparent 1px);background-size:42px 42px;mask-image:radial-gradient(ellipse,black 30%,transparent 73%);z-index:-1}.visual-coordinate{position:absolute;top:35px;left:36px;color:#797184;font:8px Consolas,monospace;letter-spacing:1.4px}.nexus-object{width:320px;height:340px;position:relative;transform:rotate(-26deg) skew(7deg);filter:drop-shadow(0 30px 45px #3b207560);animation:float 8s ease-in-out infinite}.object-back,.object-front,.object-cross{position:absolute;clip-path:polygon(0 0,34% 0,68% 57%,68% 0,100% 0,100% 100%,66% 100%,32% 43%,32% 100%,0 100%)}.object-back{inset:20px -25px -20px 25px;background:linear-gradient(115deg,#493261,#21152f 40%,#7a4fba 76%,#271b40)}.object-front{inset:0;background:linear-gradient(125deg,#b9a0ec 0%,#544164 22%,#282132 40%,#392a48 54%,#af83e0 65%,#654279 85%,#342439);box-shadow:inset 0 0 80px #caa7ff40}.object-cross{inset:3px;background:linear-gradient(145deg,#e7c7ff38,transparent 27%,#d7aaff0d 48%,#d8b7ff45 66%,transparent);opacity:.8}.object-light{position:absolute;inset:-70px;background:radial-gradient(ellipse at 70% 90%,#a347fa30,transparent 55%);z-index:-1}.visual-axis{position:absolute;color:#5b526d;font-size:17px;font-weight:300}.axis-a{bottom:103px;left:38px}.axis-b{top:79px;right:14px}.visual-caption{position:absolute;left:38px;right:8px;bottom:34px;display:flex;justify-content:space-between;font:8px Consolas,monospace;letter-spacing:1px;color:#77707f}.discipline-bar{border-block:1px solid #ffffff0a;background:#11101544}.discipline-bar>.wrap{min-height:67px;display:flex;align-items:center;justify-content:space-between;gap:20px;font:10px Consolas,monospace;letter-spacing:1.25px;color:#95909f}.discipline-bar i{font-size:19px;font-style:normal;color:#78688e}
.section{padding-block:75px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:32px}.section-heading h2{margin-top:13px;margin-bottom:9px}.section-heading p{font-size:12px;margin:0}.section-heading>.text-link{margin-bottom:5px}.featured-grid{display:grid;grid-template-columns:1.55fr 1fr;gap:25px}.project-card{border:1px solid #ffffff10;background:linear-gradient(135deg,#14131a,#101015);border-radius:11px;overflow:hidden;transition:transform .3s,border-color .3s;min-width:0}.project-card:hover{transform:translateY(-4px);border-color:#9b83da50}.card-art{display:block;height:305px;position:relative;overflow:hidden;background:#19131f}.card-art>img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.project-card:hover .card-art>img{transform:scale(1.025)}.art-arrow{position:absolute;right:18px;top:18px;border:1px solid #ffffff25;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;color:#dbcee8;font-size:18px;background:#ffffff05}.project-art{height:100%;width:100%;position:relative;overflow:hidden;background:radial-gradient(ellipse at 60% 65%,#70438677,transparent 70%),linear-gradient(125deg,#251d34,#352440 50%,#1c1724)}.art-grid{position:absolute;inset:0;background-image:linear-gradient(#ac82d010 1px,transparent 1px),linear-gradient(90deg,#ac82d010 1px,transparent 1px);background-size:35px 35px;mask-image:linear-gradient(90deg,transparent,#000)}.art-label{position:absolute;left:24px;top:23px;color:#c8b3dc;font:8px Consolas,monospace;letter-spacing:1.5px}.phone{position:absolute;left:50%;top:45px;width:165px;height:329px;border-radius:29px;background:linear-gradient(125deg,#746779,#27222c 18%,#534757 80%,#ab94ac);padding:4px;box-shadow:14px 14px 32px #0005,-2px -2px 1px #a18ea3;transform:rotate(-13deg);z-index:2}.phone-screen{background:linear-gradient(150deg,#17131e,#242031);height:100%;border-radius:25px;padding:12px 12px}.phone-camera{position:absolute;top:10px;left:62px;width:44px;height:12px;background:#08090d;border-radius:10px;z-index:3}.phone-time{display:flex;justify-content:space-between;font-size:7px;font-weight:600;margin-bottom:24px;padding:0 2px}.phone-time>span{font-size:6px}.phone-caption{font:7px Consolas,monospace;letter-spacing:1.2px;color:#9a8baa}.calc-output{text-align:right;font-size:38px;line-height:1.3;margin:17px 0 17px;font-weight:300}.calc-output>span{display:block;font:6px Consolas,monospace;color:#82768c;letter-spacing:.2px;margin-top:7px}.calc-keys{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.calc-keys>span{border-radius:50%;height:29px;display:grid;place-items:center;background:#ffffff08;font-size:11px;color:#c6bfcc}.calc-keys>span:nth-child(4n){background:#9276b8;color:white}.calc-keys>span:nth-child(-n+3){background:#ffffff15;color:#cfc5dc}.phone-bar{height:3px;width:47px;border-radius:9px;background:#d8cbe3;margin:11px auto}.art-orbit{position:absolute;border:1px solid #bb8ee01a;border-radius:50%;height:380px;width:380px;transform:rotate(-25deg) scaleY(.55);top:60px;left:calc(50% - 190px)}.orbit-two{width:550px;height:550px;left:calc(50% - 275px);top:-25px}.art-foot{position:absolute;bottom:18px;left:24px;font:7px Consolas,monospace;letter-spacing:1px;color:#b8a1c4;z-index:3}.card-content{padding:25px 27px 19px}.card-meta{display:flex;justify-content:space-between;align-items:center;gap:10px;font:9px Consolas,monospace;color:#9890a6;margin-bottom:13px}.status{display:inline-flex;align-items:center;gap:6px;font:7px Consolas,monospace;letter-spacing:.7px;color:#d1b5fe;background:#9a6bde12;border:1px solid #b98cec22;border-radius:4px;padding:6px 8px;white-space:nowrap}.status i{width:4px;height:4px;background:currentColor;border-radius:50%}.status-termine{color:#99dfb2;background:#99dfb20a;border-color:#99dfb220}.status-concept{color:#b1c2ec}.status-prototype{color:#b6a6fa}.status-alpha,.status-beta{color:#8fc8e8}.status-en-pause{color:#d4b887}.status-abandonne{color:#b89c9e}.card-content h3{font-size:27px;margin-bottom:9px}.card-content p{font-size:12px;line-height:1.7;margin-bottom:17px;max-width:490px}.tech-list{display:flex;flex-wrap:wrap;gap:6px}.tech-list span{font:8px Consolas,monospace;color:#aca6b8;padding:5px 8px;border:1px solid #ffffff0c;border-radius:3px;background:#ffffff03}.card-bottom{display:flex;justify-content:space-between;gap:14px;border-top:1px solid #ffffff0a;margin-top:23px;padding-top:16px;font-size:9px;color:#76707f}.card-bottom>a{color:#c6b8e0;font-weight:500}.lab-note{padding:47px 39px 30px;border:1px dashed #9d87b735;border-radius:11px;background:radial-gradient(ellipse at 90% 0,#6f43831b,transparent 70%);display:flex;flex-direction:column;align-items:flex-start;min-width:0}.note-icon{font-size:62px;line-height:1;color:#a48cb8;margin-bottom:46px}.lab-note .eyebrow{font-size:8px}.lab-note h3{font-size:36px;line-height:1.15;margin:18px 0 20px}.lab-note p{font-size:12px;line-height:1.85;max-width:280px}.note-bottom{font:8px Consolas,monospace;letter-spacing:1px;color:#887e95;margin-top:auto;padding-top:40px;display:flex;align-items:center;gap:8px}.note-bottom .dot{background:#a389b7}.journal-preview{border-top:1px solid #ffffff0a;padding-top:63px}.timeline-item{position:relative;display:grid;grid-template-columns:190px 1fr;gap:30px;border-left:1px solid #ffffff12;padding:26px 0 30px 30px;margin-left:5px}.timeline-dot{position:absolute;top:34px;left:-4px;width:7px;height:7px;background:#9679c2;border-radius:50%;box-shadow:0 0 0 5px var(--bg)}.timeline-date{font:10px Consolas,monospace;color:#8b8499;line-height:1.8}.timeline-content{border-bottom:1px solid #ffffff0b;padding-bottom:27px}.timeline-content h3{font-size:21px;margin:9px 0 10px}.timeline-content h3 a{display:flex;justify-content:space-between;gap:20px}.timeline-content h3 span{color:#9682b5}.timeline-content p{font-size:12px;max-width:680px}.empty-state{border:1px solid #ffffff0c;border-radius:8px;padding:35px;background:#ffffff02}.empty-state h3{font-size:23px;margin:13px 0 10px}.empty-state h2{font-size:29px}.empty-state p{font-size:13px}.empty-state small{color:var(--muted);font-size:11px;line-height:1.8}.about-strip{border-block:1px solid #ffffff0d;padding-block:57px 60px;display:grid;grid-template-columns:1.1fr 1fr;gap:0 80px}.about-strip>.eyebrow{grid-column:1/-1;margin-bottom:18px}.about-strip h2{font-size:42px;margin-bottom:0}.about-strip p{font-size:12px;max-width:390px;margin-top:5px}.footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:30px;padding-top:60px;padding-bottom:26px}.footer .brand{font-size:15px}.footer .brand-symbol{font-size:29px}.footer .brand small{font-size:7px}.footer p{font-size:10px;margin-top:16px}.footer-links{display:flex;gap:28px;align-items:flex-start;padding-top:14px;font-size:10px;color:#a29aa9}.footer-bottom{border-top:1px solid #ffffff0a;width:100%;padding-top:22px;display:flex;justify-content:space-between;gap:15px;font:8px Consolas,monospace;color:#6d6577}.footer-bottom a{color:#88808f}.page-intro{padding-top:85px;padding-bottom:45px}.page-intro h1{margin-top:24px;max-width:1050px}.page-intro p{font-size:15px;max-width:720px}.compact{padding-top:10px;padding-bottom:85px}.filters{border-block:1px solid #ffffff0c;padding:20px 0}.category-filters{display:flex;gap:6px;flex-wrap:wrap}.category-filters button{font-size:12px;padding:12px 17px;min-height:44px;border:1px solid transparent;border-radius:5px;color:#a9a2b5}.category-filters button.selected{background:#a48ae81c;border-color:#aa88e43a;color:#cbb3f4}.category-filters button span{font:9px Consolas,monospace;margin-left:8px;background:#aa88e414;padding:2px 5px;border-radius:3px}.filter-tools{display:flex;gap:12px;margin-top:20px}.filter-tools label:first-child{flex:1}.filter-tools input,.filter-tools select{height:44px}.results-count{font:10px Consolas,monospace;margin:23px 0;color:#83798f}.projects-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.project-intro{padding-top:44px}.back-link{font-size:11px;color:#9e92af;display:inline-block;margin-bottom:45px}.project-title{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:35px}.project-title h1{margin:15px 0}.project-title p{font-size:16px;max-width:650px}.project-title>.status{font-size:9px;padding:10px 14px}.project-hero-art{height:480px;border-radius:12px;overflow:hidden;border:1px solid #ffffff15}.project-hero-art>img{width:100%;height:100%;object-fit:contain;background:#15121c}.project-hero-art .phone{top:45px;width:220px;height:439px;padding:5px;border-radius:39px}.project-hero-art .phone-screen{border-radius:35px;padding:18px}.project-hero-art .phone-camera{left:83px;top:13px;width:59px;height:16px}.project-hero-art .phone-time{font-size:10px;margin-bottom:33px}.project-hero-art .phone-caption{font-size:9px}.project-hero-art .calc-output{font-size:50px;margin:20px 0 25px}.project-hero-art .calc-output span{font-size:8px}.project-hero-art .calc-keys{gap:7px}.project-hero-art .calc-keys>span{height:39px;font-size:14px}.project-hero-art .phone-bar{margin-top:16px}.project-hero-art .art-label{top:30px;left:35px;font-size:10px}.project-hero-art .art-foot{font-size:9px;left:35px;bottom:25px}.project-hero-art .art-orbit{width:700px;height:700px;left:calc(50% - 350px);top:-50px}.project-hero-art .orbit-two{width:1000px;height:1000px;left:calc(50% - 500px);top:-190px}.project-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:85px;padding-block:65px}.project-main section{margin-bottom:48px}.project-main h2{font-size:30px;margin:13px 0 19px}.project-main p,.features-list{font-size:14px;line-height:1.9;color:#b2a9bf}.features-list{padding-left:19px}.features-list li{margin-bottom:8px}.project-sidebar{align-self:start;position:sticky;top:122px;border:1px solid #ffffff10;padding:27px;border-radius:8px;background:#121016}.project-sidebar h3{font-size:15px;letter-spacing:-.02em;margin:25px 0 12px}.project-sidebar p{font-size:11px}.project-sidebar .status{font-size:8px}.progress-label{display:flex;justify-content:space-between;font-size:11px;margin:20px 0 10px;color:var(--muted)}progress{width:100%;height:5px;accent-color:var(--accent)}progress::-webkit-progress-bar{background:#28212e;border-radius:10px}progress::-webkit-progress-value{background:var(--accent);border-radius:10px}.project-main .timeline-item{display:block;padding-left:25px}.project-main .timeline-content{margin-top:12px}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.gallery-item{padding:0;display:block;border-radius:7px;overflow:hidden;position:relative;border:1px solid #ffffff10;width:100%;background:#15121b}.gallery-item img{width:100%;height:220px;object-fit:cover;transition:transform .4s}.gallery-item:hover img{transform:scale(1.03)}.gallery-item>span{position:absolute;bottom:12px;right:12px;background:#08070ad9;padding:7px 10px;border-radius:4px;font-size:10px}.video{width:100%;aspect-ratio:16/9;border:1px solid var(--line);border-radius:8px}.post-detail{max-width:920px;padding-block:50px 90px}.post-detail>.back-link{display:block}.post-detail h1{font-size:clamp(35px,4.2vw,60px);margin:20px 0 25px}.project-reference{display:inline-block;font:11px Consolas,monospace;color:var(--purple);padding:9px 12px;background:#a389e910;border-radius:4px}.post-body{margin-block:42px;color:#c1b8ce;line-height:1.95;font-size:15px;overflow-wrap:anywhere}.post-detail .tech-list{margin-top:30px}.post-detail .video{margin-top:25px}.about-page{display:grid;grid-template-columns:1fr 1.3fr;gap:60px;padding-block:5px 100px}.about-mark{font-size:240px;line-height:1.2;text-align:center;color:#9d81c6;background:radial-gradient(ellipse,#68329c20,transparent 66%)}.about-page p{font-size:17px;line-height:1.9;color:#b7adbf}.about-disciplines{display:flex;flex-wrap:wrap;gap:10px;margin:30px 0}.about-disciplines span{padding:9px 12px;border:1px solid var(--line);border-radius:4px;font:10px Consolas,monospace;color:#a296af}.error-page{padding-block:70px 110px;text-align:center}.error-code{font-size:clamp(100px,17vw,220px);font-weight:700;color:#40324e;letter-spacing:-.08em;margin-top:30px;line-height:1}.error-code span{font-size:.5em;display:inline-block;margin-left:15px;color:#ac85d1}.error-page h1{font-size:40px;margin-top:35px}.error-page p{font-size:14px}
input,select,textarea{width:100%;background:#15121b;border:1px solid #352d3f;border-radius:5px;padding:12px 13px;color:#ded7e8;font-size:13px;min-width:0}textarea{resize:vertical;line-height:1.8}input::placeholder,textarea::placeholder{color:#756c80}label{display:block;font-size:12px;line-height:1.6;color:#b3a6c1}label input,label textarea,label select{display:block;margin-top:8px}input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);flex:none}form label{margin-bottom:20px}fieldset{border:1px solid var(--line);border-radius:7px;margin:25px 0;padding:20px;min-width:0}legend{font-size:12px;color:#c0b4cd;padding:0 8px}code{font-family:Consolas,monospace;overflow-wrap:anywhere}.muted{color:var(--muted);font-size:12px}.alert{padding:16px 19px;background:#a68ee817;border:1px solid #a68ee83a;color:#c5b8df;font-size:13px;line-height:1.7;border-radius:6px}.alert.error{background:#bb667915;border-color:#bb667940;color:#ecc0ca}.alert.success{background:#78cda511;border-color:#78cda535;color:#afd9c7}.login-section{min-height:650px;display:grid;place-items:center;padding-block:65px;background:radial-gradient(ellipse,#6f3f9818,transparent 65%)}.login-card{width:min(480px,100%);padding:40px;border:1px solid #ffffff15;border-radius:12px;background:#121017}.login-card h1{font-size:33px;margin:19px 0 12px}.login-card>p{font-size:13px}.login-card form{margin-top:30px}.login-card .button{width:100%}.admin-shell{display:grid;grid-template-columns:180px minmax(0,1fr);gap:50px;padding-block:55px 90px;min-height:650px}.admin-nav{display:flex;flex-direction:column;gap:7px;align-self:start;position:sticky;top:125px}.admin-nav>.eyebrow{margin-bottom:17px}.admin-nav>a{font-size:12px;padding:12px;border-radius:5px;color:#a096ae}.admin-nav>a.active{color:#ccb6ef;background:#a084d318}.admin-nav form{margin-top:30px}.admin-content h1{font-size:40px;margin:18px 0 30px}.admin-content h2{font-size:24px;margin-top:35px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.stats-grid>div{border:1px solid var(--line);border-radius:7px;background:var(--surface);padding:23px}.stats-grid span{font-size:11px;color:#9f92b0}.stats-grid strong{display:block;font-size:40px;letter-spacing:-.05em;margin-top:12px}.admin-actions{display:flex;gap:15px;margin-top:30px}.admin-list>a,.admin-list>div{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding:20px 0;font-size:13px}.admin-list>a span,.admin-list>div span{font-size:11px;color:var(--muted);overflow-wrap:anywhere;text-align:right}.download-count{margin-top:10px}.video-player{display:block;width:100%;max-height:75vh;background:#000;border-radius:8px;margin-bottom:20px}.library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:20px}.library-card{display:flex;flex-direction:column;gap:10px;border:1px solid var(--line);border-radius:7px;background:var(--surface);padding:22px;min-width:0}.library-card:hover{border-color:var(--accent)}.library-card span{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#ccb6ef}.library-card strong{font-size:18px;overflow-wrap:anywhere}.library-card small{font-size:11px;color:var(--muted)}.library-season{background:#1a1622}.library-inline{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin-top:10px}.library-inline label{margin:0;min-width:90px;flex:1}.library-inline>div{flex:2;min-width:180px}.library-inline small{display:block;font-size:10px;color:var(--muted);margin-top:6px}.row-actions details summary{cursor:pointer;padding:8px 0}.library-settings{margin-top:45px;border-top:1px solid var(--line);padding-top:20px}.library-settings summary{cursor:pointer;font-size:13px;color:#b3a6c1;margin-bottom:20px}.library-videos .empty-state{margin:0}@media(max-width:760px){.library-grid{grid-template-columns:1fr}.library-inline{flex-direction:column;align-items:stretch}}.card-downloads{display:block;font-size:11px;color:#ccb6ef;margin-top:16px}.download-count a{color:#ccb6ef}.install-guide{padding-top:10px}.install-guide section{margin-bottom:45px}.install-guide h2{font-size:28px;margin:12px 0 16px}.install-guide p{color:#c1b8ce;line-height:1.9;font-size:15px;margin-bottom:14px}.install-guide ol{margin-bottom:14px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.editor-form{max-width:850px}.editor-toolbar{display:flex;flex-wrap:wrap;gap:3px;background:#1c1723;border:1px solid #352d3f;border-bottom:0;border-radius:5px 5px 0 0;padding:6px}.editor-toolbar button{font-size:11px;border-radius:4px;padding:9px 11px;background:#ffffff05}.editor-toolbar button:hover{background:#ffffff10}.editor-toolbar span{font:9px Consolas,monospace;align-self:center;margin-left:auto;color:#84778e;padding:5px}#content-editor{border-radius:0 0 5px 5px;font:13px/1.9 Consolas,monospace;margin-bottom:25px}.editor-preview{border:1px solid var(--line);padding:25px;white-space:pre-wrap;line-height:1.9;font-size:14px;margin-bottom:25px;background:#15121b;overflow-wrap:anywhere}.media-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.media-picker label{margin:0;position:relative;display:block;border:1px solid var(--line);padding:8px;border-radius:5px;cursor:pointer}.media-picker label:has(input:checked){border-color:var(--purple);background:#a389e915}.media-picker input{margin-bottom:8px}.media-picker img{width:100%;height:95px;object-fit:cover;border-radius:3px}.media-picker span{font-size:9px;display:block;overflow-wrap:anywhere;line-height:1.5;margin-top:6px}.publish-options{display:flex;flex-wrap:wrap;gap:18px 23px;margin-block:25px;align-items:center}.checkbox{display:flex;align-items:center;gap:9px;margin:0!important}.checkbox input{margin:0}.publish-options>label:last-child:not(.checkbox){width:160px}.content-table{border:1px solid var(--line);border-radius:8px;overflow:hidden}.content-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px;background:#121017;border-bottom:1px solid var(--line)}.content-row:last-child{border:0}.content-row strong{font-size:14px}.content-row small{display:block;font-size:10px;color:var(--muted);margin-top:8px}.row-actions{display:flex;flex-wrap:wrap;gap:14px;font-size:10px;align-items:center}.row-actions button{padding:8px 0}.danger{color:#d194a2;font-size:10px}.upload-form{padding:25px;border:1px solid var(--line);border-radius:8px;background:#121017;margin-bottom:35px}.upload-form>p{margin-bottom:0}.media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.media-card{border:1px solid var(--line);border-radius:7px;padding:13px;background:#121017;min-width:0}.media-card .gallery-item img{height:150px}.media-card h3{font-size:12px;letter-spacing:0;margin:14px 0 8px;overflow-wrap:anywhere}.media-card p{font-size:10px}.media-card label{font-size:10px}.media-card input{font-size:11px}.media-card form{margin-top:10px}.media-card form label{margin-bottom:5px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}#lightbox{width:min(1100px,96vw);height:min(850px,94dvh);max-height:94dvh;background:#100d15;border:1px solid #665174;border-radius:10px;padding:55px 65px;color:#e3d5ef;overflow:hidden}#lightbox::backdrop{background:#060408e8;backdrop-filter:blur(8px)}#lightbox img{height:calc(100% - 35px);width:100%;object-fit:contain}#lightbox button{position:absolute;border:1px solid #ffffff25;border-radius:50%;height:39px;width:39px;display:grid;place-items:center;font-size:21px;background:#17111fe0}#lightbox .lightbox-close{top:12px;right:12px}#lightbox .lightbox-prev{top:50%;left:12px}#lightbox .lightbox-next{top:50%;right:12px}.lightbox-caption{text-align:center;font-size:11px;margin-top:15px}.reveal{opacity:0;transform:translateY(15px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}@keyframes float{0%,100%{transform:translateY(0) rotate(-26deg) skew(7deg)}50%{transform:translateY(-12px) rotate(-24deg) skew(7deg)}}
.hero-visual{overflow:hidden}.hero-copy{min-width:0}.lightbox-open{overflow:hidden}
.featured-grid.multiple{grid-template-columns:repeat(2,minmax(0,1fr))}
.card-art>img{object-fit:contain}.project-axiom .gallery-item img{height:380px;object-fit:contain;background:#080e1c}
@media(min-width:1101px){.featured-grid.multiple:has(>.project-card:nth-child(3)){grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1600px){.hero{min-height:720px}.hero-visual{height:580px}.nexus-object{width:370px;height:395px}.hero h1{font-size:105px}.hero-lead{font-size:21px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header-note{display:none}.hero h1{font-size:75px}.hero-visual{height:470px}.nexus-object{width:250px;height:290px}.hero-lead{font-size:16px}.hero-actions{gap:20px}.hero-actions .text-link{font-size:10px}.hero-sub{max-width:300px}.lab-note{padding:35px 27px}.lab-note h3{font-size:30px}.card-bottom{flex-direction:column;gap:10px}.discipline-bar>.wrap{font-size:8px;letter-spacing:.7px}.project-layout{gap:35px;grid-template-columns:minmax(0,1fr) 260px}.admin-shell{grid-template-columns:160px minmax(0,1fr);gap:25px}.stats-grid{grid-template-columns:repeat(2,1fr)}.content-row{align-items:flex-start;flex-direction:column}.media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.media-picker{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.site-header{height:76px}.brand{font-size:17px}.brand-symbol{font-size:29px}.brand small{font-size:7px}.menu-toggle{display:block;font-size:22px;padding:12px;min-width:44px;min-height:44px}.site-header nav{display:none;position:absolute;top:76px;left:0;right:0;height:auto;background:#111017f5;backdrop-filter:blur(18px);padding:16px 20px 25px;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0}.site-header nav.open{display:flex}.site-header nav a{min-height:48px;padding:12px;font-size:14px}.site-header nav a.active:after{left:0;bottom:17px;width:2px;height:14px}.hero{grid-template-columns:1fr;padding-top:48px;padding-bottom:25px;gap:0;min-height:0}.hero h1{font-size:clamp(64px,13vw,89px);margin:25px 0}.hero .eyebrow{font-size:8px;letter-spacing:1px}.hero-lead{font-size:17px}.hero-sub{max-width:none;font-size:11px}.hero-actions{gap:20px;flex-wrap:wrap}.hero-bottom{font-size:8px;margin-top:30px}.hero-visual{height:360px;margin-top:15px}.nexus-object{width:230px;height:250px}.visual-coordinate{top:23px;left:15px;font-size:7px}.visual-caption{left:15px;right:10px;bottom:15px;font-size:6px}.axis-a{left:15px;bottom:70px}.axis-b{right:16px;top:65px}.discipline-bar>.wrap{min-height:70px;display:grid;grid-template-columns:1fr 1fr;gap:16px 12px;padding-block:18px;font-size:8px}.discipline-bar i{display:none}.section{padding-block:48px}.section-heading{align-items:flex-start;gap:15px;flex-wrap:wrap;margin-bottom:26px}.section-heading .eyebrow{font-size:8px}.section-heading h2{font-size:32px}.section-heading p{font-size:11px}.section-heading>.text-link{margin-top:0}.featured-grid,.projects-grid{grid-template-columns:1fr;gap:20px}.card-art{height:285px}.card-content{padding:22px}.card-bottom{flex-direction:row;font-size:8px}.card-meta{font-size:8px}.status{font-size:6px}.lab-note{padding:29px}.note-icon{font-size:44px;margin-bottom:23px}.lab-note h3{font-size:32px}.lab-note p{max-width:none}.note-bottom{padding-top:22px}.timeline-item{grid-template-columns:1fr;gap:13px;padding:20px 0 15px 22px}.timeline-dot{top:26px}.timeline-content h3{font-size:20px}.empty-state{padding:26px}.empty-state h3{font-size:21px}.about-strip{grid-template-columns:1fr;padding-block:40px;gap:20px}.about-strip>.eyebrow{margin-bottom:0}.about-strip h2{font-size:36px}.footer{padding-top:40px;gap:25px}.footer-links{gap:23px;flex-wrap:wrap;padding-top:0}.footer-bottom{flex-wrap:wrap;line-height:1.7;font-size:8px}.footer-bottom>span:nth-child(2){display:none}.page-intro{padding-top:50px;padding-bottom:25px}.page-intro h1{font-size:46px;margin-top:20px}.page-intro p{font-size:13px}.compact{padding-top:5px}.category-filters{gap:3px}.category-filters button{padding:10px 12px;font-size:10px}.filter-tools{flex-direction:column;gap:0}.filter-tools label{margin-bottom:12px}.project-intro{padding-top:30px}.back-link{margin-bottom:30px}.project-title{flex-direction:column;align-items:flex-start;gap:0}.project-title h1{font-size:48px;overflow-wrap:anywhere}.project-title p{font-size:14px}.project-hero-art{height:360px}.project-hero-art .phone{top:35px;transform:rotate(-13deg) scale(.82);transform-origin:top center;left:calc(50% - 110px)}.project-hero-art .art-label{font-size:7px;top:20px;left:20px}.project-hero-art .art-foot{font-size:6px;left:20px;bottom:18px}.project-layout{grid-template-columns:1fr;gap:30px;padding-block:38px}.project-sidebar{position:static;grid-row:1}.project-main h2{font-size:27px}.project-main p{font-size:13px}.gallery{gap:10px}.gallery-item img{height:165px}.post-detail{padding-block:35px 65px}.post-detail h1{font-size:36px;overflow-wrap:anywhere}.post-body{font-size:14px}.about-page{grid-template-columns:1fr;gap:25px;padding-bottom:55px}.about-mark{font-size:140px;grid-row:2}.about-page p{font-size:15px}.error-page h1{font-size:30px}.login-section{min-height:550px;padding-block:40px}.login-card{padding:27px}.login-card h1{font-size:30px}.admin-shell{grid-template-columns:1fr;gap:30px;padding-top:25px}.admin-nav{position:static;display:flex;flex-direction:row;flex-wrap:wrap;gap:5px}.admin-nav>.eyebrow{width:100%;margin-bottom:6px}.admin-nav>a{font-size:10px;padding:10px}.admin-nav form{margin:0}.admin-nav form button{font-size:10px;padding:10px}.admin-content h1{font-size:32px}.stats-grid{gap:12px}.stats-grid>div{padding:20px}.admin-actions{flex-wrap:wrap}.admin-list>a,.admin-list>div{flex-direction:column;gap:8px}.admin-list>div span{text-align:left}.form-grid{grid-template-columns:1fr;gap:0}.editor-toolbar span{display:none}.media-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.media-grid{grid-template-columns:1fr}.media-card .gallery-item img{height:220px}.publish-options{align-items:flex-start;flex-direction:column}.row-actions{gap:20px}.row-actions a,.row-actions button{min-height:44px;display:flex;align-items:center}.editor-toolbar button{min-height:44px}.footer-links a{padding-block:8px}.checkbox{min-height:44px}#lightbox{padding:58px 45px 40px;height:85dvh}#lightbox button{width:34px;height:34px}#lightbox .lightbox-prev{left:5px}#lightbox .lightbox-next{right:5px}}
@media(max-width:760px){.featured-grid.multiple{grid-template-columns:1fr}}
/* Les métadonnées restent lisibles, y compris sur les petits écrans. */
.eyebrow{font-size:11px}.site-header nav a{font-size:14px}.hero-sub{font-size:13px}.hero-bottom{font-size:10px}.section-heading p{font-size:14px}.card-content p,.lab-note p{font-size:14px}.card-meta{font-size:11px}.status{font-size:9px}.tech-list span{font-size:10px}.card-bottom{font-size:10px;flex-wrap:wrap}.lab-note .eyebrow{font-size:10px}.note-bottom{font-size:10px}.footer p,.footer-links{font-size:12px}.footer-bottom{font-size:10px}.timeline-content p{font-size:14px}.timeline-date{font-size:12px}.results-count{font-size:12px}
@media(max-width:760px){.hero .eyebrow{font-size:9px}.hero-sub{font-size:12px}.hero-bottom{font-size:9px;line-height:1.7}.section-heading .eyebrow{font-size:10px}.section-heading p{font-size:13px}.status{font-size:8px;letter-spacing:.3px}.card-meta{font-size:10px}.card-bottom{font-size:9px}.footer-bottom{font-size:9px}.card-content p,.lab-note p{font-size:13px}.hero-visual{margin-top:25px}.discipline-bar>.wrap{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
