@font-face{font-family:"Instrument Serif";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-400-normal-DnYpCC2O.woff2) format("woff2"),url(/assets/instrument-serif-latin-400-normal-BVbkICAY.woff) format("woff")}@font-face{font-family:"Instrument Serif";font-style:italic;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-400-italic-DKMiL14s.woff2) format("woff2"),url(/assets/instrument-serif-latin-400-italic-u__WvvIK.woff) format("woff")}@font-face{font-family:Inter Tight;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-tight-latin-400-normal-iW8qmuJY.woff2) format("woff2"),url(/assets/inter-tight-latin-400-normal-BLrFJfvD.woff) format("woff")}@font-face{font-family:Inter Tight;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-tight-latin-500-normal-BFXNXuvF.woff2) format("woff2"),url(/assets/inter-tight-latin-500-normal-pobXraBK.woff) format("woff")}@font-face{font-family:Inter Tight;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-tight-latin-600-normal-BgSTtRxb.woff2) format("woff2"),url(/assets/inter-tight-latin-600-normal-D7bG6gX1.woff) format("woff")}:root{--paper: #f4efe6;--paper-2: #ebe4d6;--card: #fbf8f2;--ink: #1c1a17;--ink-soft: #6a645a;--line: #d9d0bf;--safelight: #d1432b;--safelight-dark: #a8321e;--silver: #8e8a82;--ok: #3d6b4a;--danger: #a8321e;--darkroom: #18181a;--darkroom-2: #232326;--status-draft: #8e8a82;--status-active: #3d6b4a;--status-voting: #b7791f;--status-closed: #1c1a17;--radius: 6px;--shadow: 0 1px 2px rgba(28, 26, 23, .08), 0 8px 24px rgba(28, 26, 23, .06);--font-display: "Instrument Serif", Georgia, serif;--font-body: "Inter Tight", system-ui, sans-serif;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:15px;line-height:1.5}h1,h2,h3{font-family:var(--font-display);font-weight:400;letter-spacing:-.005em;line-height:1.1;margin:0 0 .4em}h1{font-size:2.6rem}h2{font-size:1.6rem}h3{font-size:1.25rem}h1 em{color:var(--safelight)}a{color:var(--ink);text-underline-offset:3px}img{max-width:100%;display:block}.muted{color:var(--ink-soft)}.small{font-size:.85rem}.lead{font-size:1.1rem;color:var(--ink-soft);max-width:46rem}.error{color:var(--danger);font-weight:500}.ok{color:var(--ok);font-weight:500}.loading{padding:4rem 1rem;text-align:center;color:var(--ink-soft);font-family:var(--font-display);font-style:italic;font-size:1.4rem}.notice{background:#fbefd9;border-left:3px solid var(--status-voting);padding:.7rem 1rem;border-radius:var(--radius)}input,select,textarea{font:inherit;color:inherit;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:.5rem .65rem;width:100%}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--safelight);outline-offset:1px}label{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem;font-weight:500;color:var(--ink-soft)}label.check{flex-direction:row;align-items:center;gap:.5rem;color:var(--ink)}label.check input,td input[type=checkbox]{width:auto}fieldset{border:0;padding:0;margin:0;min-width:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font:inherit;font-weight:500;padding:.55rem 1rem;border-radius:var(--radius);border:1px solid var(--ink);background:transparent;color:var(--ink);cursor:pointer;text-decoration:none;white-space:nowrap}.btn:hover{background:var(--paper-2)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--ink);color:var(--paper)}.btn-primary:hover{background:var(--safelight-dark);border-color:var(--safelight-dark)}.btn-danger{border-color:var(--danger);color:var(--danger)}.btn-small{padding:.3rem .75rem;font-size:.9rem}.btn-google{background:#fff;border-color:var(--line);width:100%;padding:.7rem}.btn-link{font:inherit;background:none;border:0;padding:0;color:var(--ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.btn-link.danger{color:var(--danger)}.icon-btn{background:none;border:0;font-size:1.6rem;line-height:1;cursor:pointer;color:var(--ink-soft)}.stack{display:flex;flex-direction:column;gap:.9rem}.row{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.row input{flex:1;min-width:14rem}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:.9rem}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem;box-shadow:var(--shadow)}.badge{display:inline-block;font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:.2rem .55rem;border-radius:999px;color:#fff;background:var(--silver)}.badge-active,.badge-approved{background:var(--status-active)}.badge-voting{background:var(--status-voting)}.badge-closed{background:var(--status-closed)}.badge-rejected{background:var(--danger)}.chips{list-style:none;padding:0;margin:.6rem 0 0;display:flex;gap:.35rem;flex-wrap:wrap}.chips li{font-size:.8rem;border:1px solid var(--line);border-radius:999px;padding:.1rem .6rem}.shell{min-height:100vh;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:2rem;padding:.8rem 2rem;border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:.55rem;font-family:var(--font-display);font-size:1.55rem;text-decoration:none;color:var(--ink)}.brand svg{width:28px;height:28px;color:var(--ink)}.brand-large{font-size:2.6rem}.topbar nav{display:flex;gap:1.4rem;flex:1}.topbar nav a,.user a{text-decoration:none;color:var(--ink-soft);font-weight:500;padding:.2rem 0;border-bottom:2px solid transparent}.topbar nav a.active,.topbar nav a:hover,.user a.active{color:var(--ink);border-bottom-color:var(--safelight)}.user{display:flex;gap:1rem;align-items:center}.user a.btn{color:var(--ink);padding:.3rem .85rem;border:1px solid var(--ink)}.user a.btn:hover{background:var(--ink);color:var(--paper)}main{flex:1}.page{max-width:1180px;margin:0 auto;padding:2.5rem 2rem 4rem}.page.narrow{max-width:720px}.page-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}.page-header select{width:auto}.footer{display:flex;gap:1.5rem;flex-wrap:wrap;padding:1.5rem 2rem;border-top:1px solid var(--line);font-size:.85rem;color:var(--ink-soft)}.footer a{color:var(--ink-soft)}.empty{text-align:center;padding:4rem 1rem}.section{margin-top:2.5rem}.section-title{border-bottom:1px solid var(--ink);padding-bottom:.35rem}.hero{padding:1rem 0 .5rem}.hero h1{font-size:clamp(2.6rem,6vw,4.4rem);max-width:14ch}.contest-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:1.2rem}.contest-card{display:block;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.2rem 1.3rem 1.3rem;text-decoration:none;color:inherit;transition:transform .15s ease,box-shadow .15s ease}.contest-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.contest-card h3{margin-top:.7rem;font-size:1.5rem}.contest-card p{margin:.2rem 0}.contest-card-top{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.contest-card-meta{font-size:.88rem}.countdown{font-size:.85rem;font-weight:600;color:var(--safelight-dark)}.progress{height:4px;background:var(--paper-2);border-radius:2px;margin:.8rem 0 .4rem;overflow:hidden}.progress span{display:block;height:100%;background:var(--safelight)}.contest-header{display:flex;justify-content:space-between;align-items:flex-end;gap:1.5rem;flex-wrap:wrap;margin-bottom:1.8rem}.contest-header h1{margin-top:.6rem}.contest-header .lead{margin:0}.contest-actions{display:flex;gap:.6rem;flex-wrap:wrap}.contest-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:1.5rem;align-items:start}.participate{display:flex;flex-direction:column;gap:1.2rem;position:sticky;top:5rem}.facts{display:grid;gap:.6rem;margin:0 0 1.4rem;padding-bottom:1.2rem;border-bottom:1px solid var(--line)}.facts div{display:grid;grid-template-columns:10rem 1fr;gap:1rem}.facts dt{color:var(--ink-soft)}.facts dd{margin:0}.prose{white-space:pre-wrap;max-width:68ch}.prose-page h2{margin-top:1.8rem}.dropzone{border:1.5px dashed var(--silver);border-radius:var(--radius);min-height:160px;display:grid;place-items:center;text-align:center;padding:1rem;cursor:pointer;position:relative;overflow:hidden;background:var(--paper)}.dropzone:hover{border-color:var(--ink)}.dropzone.has-file{padding:0;border-style:solid}.dropzone img{max-height:260px;object-fit:contain}.dropzone input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.my-entries{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1rem}.my-entry{display:grid;grid-template-columns:88px 1fr;gap:.8rem;align-items:start}.my-entry img{width:88px;height:88px;object-fit:cover;border-radius:3px}.exif{margin:.4rem 0;font-size:.82rem;display:grid;gap:.1rem}.exif div{display:flex;gap:.5rem}.exif dt{color:var(--ink-soft);min-width:4.5rem}.exif dd{margin:0;font-variant-numeric:tabular-nums}.tabs{display:flex;gap:.2rem;border-bottom:1px solid var(--line);margin-bottom:1.4rem}.tabs button{font:inherit;font-weight:500;background:none;border:0;border-bottom:2px solid transparent;padding:.6rem 1rem;cursor:pointer;color:var(--ink-soft)}.tabs button.active{color:var(--ink);border-bottom-color:var(--safelight)}.steps{list-style:none;padding:0;margin:0 0 .5rem;display:flex;gap:.4rem;align-items:center}.steps li{opacity:.35}.steps li.current{opacity:1}.steps li+li:before{content:"→";margin-right:.4rem;color:var(--silver)}.status-option{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:.55rem .5rem;border-bottom:1px solid var(--line)}.table th{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);font-weight:600}.table select{width:auto}.table tr.inactive{opacity:.5}.inline-select{width:auto;align-self:flex-start}.entries-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.2rem}.entry{margin:0;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.entry img{width:100%;aspect-ratio:4 / 3;object-fit:cover;background:var(--darkroom)}.entry figcaption{padding:.7rem .85rem .9rem;display:flex;flex-direction:column;gap:.15rem}.request{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.request p{margin:.2rem 0}.my-photos{display:flex;flex-direction:column;gap:1rem}.my-photo{display:grid;grid-template-columns:200px 1fr;gap:1.3rem}.my-photo img{width:200px;height:200px;object-fit:cover;border-radius:3px}.my-photo h3,.my-photo p{margin:0}.score{display:inline-block;min-width:2.2rem;text-align:center;font-weight:600;font-variant-numeric:tabular-nums;background:var(--ink);color:var(--paper);border-radius:3px;padding:0 .35rem}.feedback{list-style:none;padding:0;margin:.4rem 0 0;display:flex;flex-direction:column;gap:.4rem}.podium{list-style:none;padding:0;margin:1.2rem 0;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:1.2rem;align-items:end}.place{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.place-1{border-color:var(--ink)}.photo-button{display:block;width:100%;border:0;padding:0;background:var(--darkroom);cursor:zoom-in}.place img{width:100%;aspect-ratio:3 / 2;object-fit:cover}.place-info{display:flex;align-items:center;gap:.8rem;padding:.7rem .9rem}.place-info div{flex:1;display:flex;flex-direction:column}.place-info span:not(.place-number):not(.score){color:var(--ink-soft);font-size:.9rem}.place-number{font-family:var(--font-display);font-size:2.2rem;line-height:1}.place-1 .place-number{color:var(--safelight)}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:.8rem}.gallery-item{border:0;padding:0;background:none;cursor:zoom-in;text-align:left;font:inherit;font-size:.85rem;color:var(--ink-soft)}.gallery-item img{width:100%;aspect-ratio:1;object-fit:cover;margin-bottom:.3rem;border-radius:3px}.lightbox{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:1.3rem}.lightbox img{max-height:75vh;margin:0 auto;object-fit:contain}.voting{background:var(--darkroom);color:#e9e6df;min-height:calc(100vh - 60px);display:flex;flex-direction:column;--line: #3a3a3e}.voting a,.voting .btn-link{color:#e9e6df}.voting .muted{color:#9c988f}.voting-bar{display:flex;align-items:center;gap:1.5rem;padding:.7rem 1.5rem;border-bottom:1px solid var(--line);flex-wrap:wrap}.voting-bar select{width:auto;background:var(--darkroom-2);color:inherit;border-color:var(--line)}.voting-bar label.check{color:inherit}.voting-stage{flex:1;display:grid;grid-template-columns:minmax(0,1fr) 340px;min-height:0}.voting-photo{margin:0;display:grid;place-items:center;padding:1.5rem;background:#2a2a2d}.voting-photo img{max-height:calc(100vh - 230px);object-fit:contain;box-shadow:0 10px 40px #00000080}.voting-panel{padding:1.5rem;border-left:1px solid var(--line);display:flex;flex-direction:column;gap:1rem}.voting-panel h2{margin:0}.voting-panel textarea{background:var(--darkroom-2);color:inherit;border-color:var(--line)}.voting-panel label{color:#9c988f}.voting .btn{color:#e9e6df;border-color:#6b6862}.voting .btn:hover{background:var(--darkroom-2)}.voting .btn-primary{background:var(--safelight);border-color:var(--safelight);color:#fff}.voting .btn-primary:hover{background:var(--safelight-dark)}.score-picker{display:grid;grid-template-columns:repeat(5,1fr);gap:.4rem}.score-picker button{font:inherit;font-size:1.15rem;font-weight:600;padding:.65rem 0;border-radius:var(--radius);border:1px solid var(--line);background:var(--darkroom-2);color:inherit;cursor:pointer}.score-picker button:hover{border-color:#9c988f}.score-picker button.selected{background:var(--safelight);border-color:var(--safelight);color:#fff}.filmstrip{display:flex;gap:.4rem;overflow-x:auto;padding:.7rem 1.5rem;border-top:1px solid var(--line);background:#111113}.filmstrip button{position:relative;flex:0 0 auto;border:2px solid transparent;padding:0;background:none;cursor:pointer;opacity:.55}.filmstrip button.done{opacity:.85}.filmstrip button.current{border-color:var(--safelight);opacity:1}.filmstrip img{width:76px;height:56px;object-fit:cover}.filmstrip span{position:absolute;right:2px;bottom:2px;font-size:.7rem;font-weight:700;background:var(--safelight);color:#fff;padding:0 .3rem;border-radius:2px}.login{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr}.login-art{background:var(--darkroom);display:grid;place-items:center;padding:3rem;overflow:hidden}.contact-sheet{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;width:min(100%,520px);padding:18px;background:#0d0d0e;transform:rotate(-3deg)}.contact-sheet span{aspect-ratio:3 / 2;background:linear-gradient(135deg,#3a3631,#85796a 55%,#c9bba4);filter:grayscale(1);opacity:0;animation:develop 1.6s ease forwards}.contact-sheet span:nth-child(3n){background:linear-gradient(200deg,#222,#6e6a64 60%,#d8d2c6)}.contact-sheet span:nth-child(4n+1){background:radial-gradient(circle at 30% 40%,#cfc6b5,#534c43 60%,#1c1a17)}.contact-sheet span:nth-child(7){outline:3px solid var(--safelight);outline-offset:3px}@keyframes develop{0%{opacity:0;filter:grayscale(1) brightness(2.2)}to{opacity:1;filter:grayscale(1) brightness(1)}}.login-card{align-self:center;max-width:420px;width:100%;margin:0 auto;padding:2rem;display:flex;flex-direction:column;gap:1rem}.login-card .btn-link{align-self:flex-start}.divider{display:flex;align-items:center;gap:.8rem;color:var(--ink-soft);font-size:.85rem}.divider:before,.divider:after{content:"";flex:1;border-top:1px solid var(--line)}.login-links{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.qr svg{display:block;width:220px;max-width:100%;height:auto;border:1px solid var(--line)}.recovery-codes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem 1.5rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1rem;padding:1rem;background:var(--paper);border:1px dashed var(--silver);border-radius:var(--radius);list-style:none;margin:0}.secret{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;word-break:break-all}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f0e0c99;display:grid;place-items:center;z-index:50;padding:1rem}.modal{background:var(--card);border-radius:var(--radius);max-width:560px;width:100%;max-height:92vh;overflow:auto;padding:1.3rem 1.5rem 1.5rem}.modal-wide{max-width:1100px}.modal header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.modal header h2{margin:0}.toast{position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);padding:.7rem 1.2rem;border-radius:var(--radius);color:#fff;z-index:60;cursor:pointer;box-shadow:var(--shadow)}.toast-ok{background:var(--ok)}.toast-error{background:var(--danger)}.acta{max-width:800px;margin:0 auto;padding:2.5rem 2rem;background:#fff;min-height:100vh;font-size:14px}.acta h1{text-align:center;font-size:2.4rem;margin-bottom:0}.acta>h2{text-align:center;font-style:italic;margin-bottom:1.5rem}.acta h3{margin-top:1.6rem;border-bottom:1px solid var(--ink)}.acta table{width:100%;border-collapse:collapse}.acta th,.acta td{text-align:left;padding:.35rem .4rem;border-bottom:1px solid #ddd}.acta tr.winner td{font-weight:600}.acta-tools{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.acta-date{margin-top:2rem}.signatures{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-top:4rem}.signatures div{border-top:1px solid var(--ink);padding-top:.4rem;text-align:center;color:var(--ink-soft)}@media print{.no-print{display:none!important}body{background:#fff}.acta{padding:0}.acta tr{break-inside:avoid}}@media (max-width: 900px){.contest-layout,.voting-stage,.lightbox,.login{grid-template-columns:1fr}.participate{position:static}.voting-panel{border-left:0;border-top:1px solid var(--line)}.voting-photo img{max-height:60vh}.login-art{padding:2rem 1rem}.podium{grid-template-columns:1fr}}@media (max-width: 680px){h1{font-size:2rem}.topbar{flex-wrap:wrap;gap:.6rem 1rem;padding:.7rem 1rem}.topbar nav{order:3;flex-basis:100%;overflow-x:auto;gap:1rem}.user{margin-left:auto}.page{padding:1.5rem 1rem 3rem}.grid-3{grid-template-columns:1fr}.facts div{grid-template-columns:1fr;gap:0}.my-photo{grid-template-columns:1fr}.my-photo img{width:100%;height:auto;aspect-ratio:3 / 2}.table{display:block;overflow-x:auto}.score-picker{grid-template-columns:repeat(5,1fr)}}
