/* PC-CONNECTT.NET — feuille commune (mêmes codes visuels que l'accueil) */
:root{--nuit:#040B1A;--verre:rgba(12,28,60,.58);--trait:rgba(110,165,255,.22);--elec:#1E8BFF;--cyan:#35D6FF;--argent:#E6EDF8;--brume:#9DAEC9;--pris:#2A3347;--ok:#37d67a;--ko:#ff6b6b;
--titre:"Saira","Arial Narrow",system-ui,sans-serif;--texte:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;--cut:14px;color-scheme:dark}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{margin:0;background:var(--nuit);color:var(--argent);font:400 1.0625rem/1.6 var(--texte);-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(60rem 38rem at 85% -8%,rgba(30,139,255,.28),transparent 60%),radial-gradient(48rem 34rem at -10% 62%,rgba(53,214,255,.12),transparent 60%),var(--nuit)}
img{max-width:100%;height:auto}
a{color:var(--cyan)}
h1,h2,h3{font-family:var(--titre);font-style:italic;font-stretch:112%;font-weight:700;line-height:1.1;margin:0 0 .6rem}
h1{font-size:clamp(1.8rem,4vw,2.8rem);margin-bottom:1.2rem}
h1 em{display:block;font-size:.5em;font-weight:500;color:var(--cyan);margin-top:.35rem}
h2{font-size:1.4rem}h3{font-size:1.1rem;color:var(--cyan)}
p{margin:0 0 .8rem}
:focus-visible{outline:3px solid var(--cyan);outline-offset:3px;border-radius:4px}
.hid,[hidden]{display:none!important}
.sr{position:absolute;left:-999px}.sr:focus{left:1rem;top:1rem;z-index:99;background:var(--argent);color:var(--nuit);padding:.6rem 1rem}
main{width:min(1000px,100% - 2*clamp(1rem,4vw,2rem));margin:clamp(1.4rem,4vw,2.6rem) auto 3rem}

/* en-tête */
.top{position:sticky;top:0;z-index:50;background:rgba(4,11,26,.78);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--trait)}
.top .wrap{width:min(1180px,100% - 2*clamp(1rem,4vw,2rem));margin-inline:auto;display:flex;align-items:center;gap:1.2rem;min-height:4rem;flex-wrap:wrap}
.marque{display:flex;align-items:center;gap:.65rem;text-decoration:none;color:var(--argent);font:italic 800 1.15rem/1 var(--titre);font-stretch:118%;margin-right:auto}
.marque img{width:34px;height:34px;object-fit:contain}
.top nav{display:flex;gap:.25rem}
.top nav a{padding:.55rem .9rem;text-decoration:none;color:var(--brume);font-weight:500;border-bottom:2px solid transparent}
.top nav a:hover{color:var(--argent)}
.top nav a[aria-current=page]{color:var(--argent);border-color:var(--cyan)}
.top .btn{min-height:2.5rem;padding:.5rem 1.1rem;font-size:.95rem}
@media(max-width:860px){.top .btn{display:none}.top nav{width:100%;order:3;margin:0 0 .3rem;justify-content:space-between}.top nav a{white-space:nowrap;padding:.5rem .35rem;flex:1;text-align:center;font-size:.92rem}.top .wrap{padding-top:.4rem}}

/* boutons */
.btn{--c:12px;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:3rem;padding:.7rem 1.5rem;font:italic 700 1rem/1 var(--titre);font-stretch:108%;text-decoration:none;color:#031024;background:linear-gradient(180deg,#5fe0ff,var(--elec));border:0;cursor:pointer;clip-path:polygon(var(--c) 0,100% 0,100% calc(100% - var(--c)),calc(100% - var(--c)) 100%,0 100%,0 var(--c));transition:filter .2s,transform .2s}
.btn:hover{filter:brightness(1.12);transform:translateY(-1px)}
.btn:disabled{filter:grayscale(1) brightness(.6);cursor:not-allowed;transform:none}
.btn.alt{color:var(--argent);background:rgba(30,139,255,.12);border:1px solid rgba(120,185,255,.55);clip-path:none;min-height:2.5rem;padding:.5rem 1rem;font-size:.95rem}
.btn.danger{color:#ffd0d0;border-color:rgba(255,107,107,.6);background:rgba(255,107,107,.1)}

/* cartes et formulaires */
.card{background:var(--verre);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--trait);padding:clamp(1.1rem,3vw,1.8rem);clip-path:polygon(var(--cut) 0,100% 0,100% calc(100% - var(--cut)),calc(100% - var(--cut)) 100%,0 100%,0 var(--cut))}
.split,.two{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.two>div,.row>div{min-width:0}
@media(max-width:700px){.split,.two,.row{grid-template-columns:1fr}}
label{display:block;margin:.9rem 0 .3rem;color:var(--brume);font-weight:500;font-size:.98rem}
input,select,textarea{width:100%;font:inherit;color:var(--argent);background:rgba(4,11,26,.65);border:1px solid var(--trait);border-bottom:2px solid rgba(53,214,255,.5);padding:.65rem .8rem;border-radius:0}
input:focus,select:focus,textarea:focus{border-color:var(--cyan);outline:none;box-shadow:0 0 0 3px rgba(53,214,255,.2)}
input[type=checkbox]{width:auto;margin-right:.5rem;accent-color:var(--cyan)}
select option{color:#031024;background:#fff}
.steps{margin:0;padding-left:1.2rem;color:var(--brume)}.steps li{margin:.4rem 0}.steps b{color:var(--argent)}
.note{color:var(--brume);font-size:.92rem}
.tips{border-left:4px solid var(--cyan);background:rgba(53,214,255,.08);padding:1rem 1.2rem;margin-top:1rem}
.tips h3{margin-bottom:.4rem}.tips ol,.tips ul{margin:.4rem 0 0;padding-left:1.2rem}.tips li{margin:.35rem 0}
.tips.warn{border-color:#ffb347;background:rgba(255,179,71,.1)}
.total{margin-top:1.2rem;padding-top:1rem;border-top:1px solid var(--trait);font:italic 700 1.3rem var(--titre)}.total span{color:var(--cyan);font-size:1.6rem}

/* calendrier */
.cal-h{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.cal-h h2{margin:0;text-transform:capitalize}
.cal-h button{width:2.6rem;height:2.6rem;font-size:1.4rem;line-height:1;color:var(--argent);background:rgba(30,139,255,.12);border:1px solid var(--trait);cursor:pointer}
.cal-h button:disabled{opacity:.3;cursor:not-allowed}
.cal{display:grid;grid-template-columns:repeat(7,1fr);gap:.35rem}
.cal .dw{text-align:center;color:var(--brume);font-size:.85rem;padding-bottom:.2rem}
.cal .vide{min-height:2.6rem}
.cal button.d{min-height:2.7rem;font:italic 600 1.05rem var(--titre);color:var(--cyan);background:rgba(53,214,255,.07);border:1px solid rgba(53,214,255,.6);cursor:pointer}
.cal button.d:hover:not(:disabled){background:rgba(53,214,255,.2)}
.cal button.d:disabled{color:#69758d;background:var(--pris);border-color:var(--pris);cursor:not-allowed}
.cal button.d.full{text-decoration:line-through}
.cal button.d.today{box-shadow:inset 0 -3px var(--elec)}
.cal button.d.sel{background:linear-gradient(180deg,#5fe0ff,var(--elec));color:#031024;border-color:transparent}
.slots-h{margin:1.4rem 0 .7rem;font:italic 600 1.15rem var(--titre)}
.slots{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem}
@media(max-width:420px){.slots{grid-template-columns:repeat(2,1fr)}}
.slots button{padding:.7rem .3rem;font:italic 600 1.05rem var(--titre);color:var(--cyan);background:rgba(53,214,255,.07);border:1px solid rgba(53,214,255,.6);cursor:pointer}
.slots button:hover:not(:disabled){background:rgba(53,214,255,.2)}
.slots button.sel{background:linear-gradient(180deg,#5fe0ff,var(--elec));color:#031024}
.slots button:disabled{color:#69758d;background:var(--pris);border-color:var(--pris);text-decoration:line-through;cursor:not-allowed}
.slots button:disabled small{display:block;text-decoration:none;font:500 .72rem var(--texte)}

/* messages, documents, rendez-vous */
.msg{padding:1rem 1.2rem;border-left:5px solid var(--cyan);background:rgba(53,214,255,.09);margin-top:1rem}
.msg.ok,#done.ok{border-color:var(--ok);background:rgba(55,214,122,.1)}
.msg.ko,#done.ko{border-color:var(--ko);background:rgba(255,107,107,.1)}
#done{margin-top:1rem;padding:1rem 1.2rem;border-left:5px solid transparent}
#st{margin-left:.6rem;color:var(--brume)}
.doc table{width:100%;border-collapse:collapse;margin:.8rem 0}
.doc th,.doc td{border-bottom:1px solid var(--trait);padding:.5rem .4rem;text-align:left;vertical-align:top}
.doc td.r,.doc th.r{text-align:right;white-space:nowrap}
.doc tfoot td{font-weight:700;border-bottom:0;color:var(--cyan);font-size:1.15rem}
.acts{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem}
.rdv-i{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;align-items:center;border:1px solid var(--trait);padding:.8rem 1rem;margin-top:.6rem;background:rgba(4,11,26,.5)}
.rdv-i.off{opacity:.55}
.rdv-i b{font-family:var(--titre);font-style:italic}
#pp{margin-top:1rem;max-width:420px;background:#fff;padding:1rem;color:#111}
footer.pied{border-top:1px solid var(--trait);padding:1.4rem 0 2rem;color:#6f7f9b;font-size:.9rem;text-align:center}
@media print{body{background:#fff;color:#000}body::before,.top,footer.pied,.noprint,form,.card:not(.doc){display:none!important}.doc{display:block!important;clip-path:none;background:#fff;border:0}.doc *{color:#000!important}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
