:root{--bg:#fff;--paper:#fff;--tile:#f5f5f4;--ink:#111;--muted:#9a9a9a;--line:#e9e9e9;--accent:#111;--mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);font-family:var(--mono);letter-spacing:-.01em;margin:0;font-size:13px}button{font:inherit;color:inherit;cursor:pointer}input,select,textarea{font:inherit;color:inherit}img{max-width:100%;display:block}a{color:inherit}.wrap{max-width:1280px;margin:0 auto;padding:0 24px 140px}header.top{border-bottom:1px solid var(--line);background:var(--bg);z-index:10;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:22px 0;display:flex;position:sticky;top:0}.logo{letter-spacing:-.03em;font-size:18px;font-weight:500}.logo span{color:var(--muted);font-weight:400}nav.tabs{flex-wrap:wrap;gap:2px;display:flex}nav.tabs button{color:var(--muted);white-space:nowrap;background:0 0;border:0;padding:6px 8px}nav.tabs button:hover,nav.tabs button.on{color:var(--ink)}nav.tabs .count{color:var(--muted);margin-left:2px;font-size:11px}.hero{padding:34px 0 22px}.plate{background:var(--ink);color:#fff;letter-spacing:-.03em;padding:4px 10px;font-size:clamp(20px,3.2vw,30px);font-weight:500;line-height:1.25;display:inline-block}.plate+.plate{margin-top:4px}.hero .bracket{color:var(--muted);margin-top:12px}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.chips{flex-wrap:wrap;gap:2px;display:flex}.chip{color:var(--muted);background:0 0;border:0;padding:4px 6px}.chip:hover{color:var(--ink)}.chip.on{color:var(--ink);text-underline-offset:4px;text-decoration:underline}.btn{border:1px solid var(--ink);background:var(--ink);color:#fff;border-radius:0;padding:9px 14px;font-weight:500}.btn.ghost{color:var(--ink);background:0 0}.btn.accent{background:var(--ink);border-color:var(--ink)}.btn:disabled{opacity:.35;cursor:default}.grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:0;padding:.5px;display:grid}.grid.looks{background:0 0;border:0;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:28px 20px}.card{background:var(--paper);box-shadow:0 0 0 .5px var(--line);position:relative;overflow:hidden}.card .ph{aspect-ratio:3/4;cursor:pointer;background:#fff;justify-content:center;align-items:center;padding:14px;display:flex}.card .ph img{object-fit:contain;mix-blend-mode:multiply;width:100%;height:100%}.card .meta{justify-content:space-between;align-items:center;gap:6px;padding:0 10px 10px;font-size:11px;display:flex}.card .meta .nm{white-space:nowrap;text-overflow:ellipsis;text-decoration:none;overflow:hidden}.card .meta .cat{color:var(--muted);white-space:nowrap}.card.sel:after{content:"";border:1.5px solid var(--ink);pointer-events:none;position:absolute;inset:0}.card .tick{background:var(--ink);color:#fff;padding:1px 6px;font-size:11px;display:none;position:absolute;top:8px;left:8px}.card.sel .tick{display:block}.card .menu{opacity:0;gap:2px;transition:opacity .15s;display:flex;position:absolute;top:6px;right:6px}.card:hover .menu{opacity:1}@media (hover:none){.card .menu{opacity:1}}.ic{border:1px solid var(--line);background:#fff;padding:2px 6px;font-size:11px}.ic:hover{border-color:var(--ink)}.look{background:var(--paper)}.look .ph{aspect-ratio:3/4;background:var(--tile);position:relative}.look .ph img{object-fit:cover;width:100%;height:100%}.look .num{background:#fff;padding:2px 7px;font-size:13px;font-weight:500;position:absolute;top:10px;left:10px}.look .used{gap:4px;padding:8px 0 0;display:flex}.look .used img{object-fit:contain;border:1px solid var(--line);background:#fff;width:34px;height:44px;padding:2px}.look .acts{border-top:0;gap:0;padding:8px 0 0;display:flex}.look .acts button,.look .acts a{text-align:center;border:1px solid var(--line);color:var(--ink);background:#fff;flex:1;margin-left:-1px;padding:8px 0;font-size:12px;text-decoration:none}.look .acts>:first-child{margin-left:0}.look .acts button:hover,.look .acts a:hover{background:var(--ink);color:#fff;border-color:var(--ink);position:relative}.loading{background:linear-gradient(100deg,#f1f1f0 30%,#fafafa 50%,#f1f1f0 70%) 0 0/300% 100%;animation:1.4s linear infinite sh;position:relative;overflow:hidden}.loading:after{content:"[" attr(data-label) "]";text-align:center;color:var(--muted);font-size:11px;position:absolute;inset:auto 0 16px}@keyframes sh{0%{background-position:100% 0}to{background-position:0 0}}.empty{text-align:center;color:var(--muted);border:1px dashed var(--line);padding:80px 20px}.empty h3{color:var(--ink);margin:0 0 8px;font-size:15px;font-weight:500}.empty p{max-width:460px;margin:0 auto;line-height:1.6}.bar{background:var(--ink);color:#fff;z-index:20;align-items:center;gap:12px;max-width:calc(100% - 32px);padding:6px 6px 6px 16px;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 8px 30px #0000002e}.bar .thumbs{gap:3px;display:flex}.bar .thumbs img{object-fit:contain;background:#fff;width:26px;height:34px}.bar .btn{color:var(--ink);background:#fff;border-color:#fff}.bar .x{color:var(--muted);background:0 0;border:0;font-size:12px}.modal-bg{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;background:#ffffffd1;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{border:1px solid var(--ink);background:#fff;width:100%;max-width:500px;max-height:92vh;padding:22px;overflow:auto}.modal h2{margin:0 0 16px;font-size:15px;font-weight:500}.modal h2:before{content:"[";color:var(--muted)}.modal h2:after{content:"]";color:var(--muted)}.field{color:var(--muted);flex-direction:column;gap:6px;margin-bottom:14px;font-size:12px;display:flex}.field input,.field select,.field textarea{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:0;padding:9px 10px;font-size:13px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--ink);outline:none}.drop{text-align:center;color:var(--muted);cursor:pointer;background:#fff;border:1px dashed #cfcfcf;padding:24px;line-height:1.6;display:block}.drop:hover{border-color:var(--ink)}.drop img{max-height:220px;margin:0 auto}.row{justify-content:flex-end;gap:8px;margin-top:10px;display:flex}.check{color:var(--ink);align-items:center;gap:8px;margin-bottom:12px;font-size:12px;display:flex}.pick{grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:6px;margin-bottom:14px;display:grid}.pick button{border:1px solid var(--line);aspect-ratio:3/4;background:#fff;padding:0;overflow:hidden}.pick button.on{border:1.5px solid var(--ink)}.pick button img{object-fit:cover;width:100%;height:100%}.pick .model{color:var(--muted);background:var(--tile);justify-content:center;align-items:center;font-size:11px;display:flex}.toast{background:var(--ink);color:#fff;z-index:60;max-width:calc(100% - 32px);padding:10px 16px;font-size:12px;position:fixed;top:16px;left:50%;transform:translate(-50%)}.hint{color:var(--muted);font-size:12px;line-height:1.6}.hint a{color:var(--ink)}.viewer{border:1px solid var(--line);max-height:88vh}@media (max-width:560px){.wrap{padding:0 14px 120px}.grid{grid-template-columns:repeat(2,1fr)}.grid.looks{grid-template-columns:1fr}.card .meta .cat{display:none}}.section-label{color:var(--muted);margin:0 0 12px}.avatar-row{grid-template-columns:repeat(auto-fill,minmax(260px,300px));align-items:start;gap:20px;display:grid}.avatar-make{border:1px dashed #cfcfcf;flex-direction:column;gap:10px;padding:18px;display:flex}.avatar-make .hint,.avatar-make .field{margin:0}.pick button.av{position:relative}.pick button.av:after{content:"аватар";background:var(--ink);color:#fff;padding:1px 4px;font-size:9px;position:absolute;bottom:3px;left:3px}.params{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:28px;padding-bottom:20px;display:flex}.params label{align-items:center;gap:8px;display:flex}.params input{border:1px solid var(--line);text-align:center;width:64px;padding:7px 8px}.params input:focus{border-color:var(--ink);outline:none}.seg{gap:4px;margin-bottom:14px;display:flex}.seg button{color:var(--muted);background:0 0;border:0;padding:4px 6px}.seg button.on{color:var(--ink);text-underline-offset:4px;text-decoration:underline}.field .hint{font-size:11px}.inbox{border:1px dashed #cfcfcf;margin-bottom:28px;padding:16px}.inbox-row{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;display:grid}.inbox-card{flex-direction:column;gap:6px;display:flex}.inbox-ph{aspect-ratio:3/4;background:var(--tile);display:block;overflow:hidden}.inbox-ph img{object-fit:cover;width:100%;height:100%}.inbox-meta{flex-direction:column;gap:2px;font-size:11px;display:flex}.inbox-meta a{text-decoration:none}.inbox-meta span{color:var(--muted)}.inbox-acts{display:flex}.inbox-acts button{border:1px solid var(--line);background:#fff;flex:1;margin-left:-1px;padding:6px 0;font-size:11px}.inbox-acts button:first-child{margin-left:0}.inbox-acts button:last-child{flex:0 0 30px}.inbox-acts button:hover{background:var(--ink);color:#fff;border-color:var(--ink);position:relative}::placeholder{color:#c2c2c2;opacity:1}.avatar-make .or{text-align:center;color:var(--muted);font-size:11px}.look.active-av .ph{outline:1.5px solid var(--ink);outline-offset:-1.5px}.av-note{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;padding:8px 0 0;font-size:11px;overflow:hidden}.make-active{border:1px solid var(--ink);background:#fff;width:100%;margin-top:8px;padding:7px 0;font-size:12px}.make-active:hover{background:var(--ink);color:#fff}.quick{flex-wrap:wrap;gap:4px;margin:12px 0 10px;display:flex}.quick button{border:1px solid var(--line);background:#fff;padding:4px 8px;font-size:11px}.quick button:hover{border-color:var(--ink)}.params select{border:1px solid var(--line);background:#fff;padding:7px 8px}.params select:focus{border-color:var(--ink);outline:none}.chat-modal{grid-template-columns:300px 1fr;gap:22px;max-width:920px;height:min(88vh,760px);display:grid;position:relative;overflow:hidden}.chat-left{flex-direction:column;gap:8px;min-height:0;display:flex}.chat-left img{aspect-ratio:3/4;object-fit:cover;background:var(--tile);cursor:zoom-in;width:100%}.chat-right{flex-direction:column;min-height:0;padding-top:34px;display:flex}.chat-log{flex-direction:column;flex:1;gap:10px;padding-right:4px;display:flex;overflow-y:auto}.msg{max-width:85%;font-size:12px;line-height:1.5}.msg.me{background:var(--ink);color:#fff;align-self:flex-end;width:fit-content;margin-left:auto;padding:8px 11px}.msg.bot{color:var(--muted);align-self:flex-start;align-items:flex-end;gap:10px;display:flex}.msg.bot img,.msg.bot .thumb{aspect-ratio:3/4;object-fit:cover;background:var(--tile);cursor:zoom-in;flex:none;width:90px}.msg.bot .thumb{position:relative}.msg .link{color:var(--ink);background:0 0;border:0;padding:0;font-size:12px;text-decoration:underline}.chat-input{gap:6px;margin-bottom:6px;display:flex}.chat-input textarea{border:1px solid var(--line);resize:none;flex:1;padding:9px 10px}.chat-input textarea:focus{border-color:var(--ink);outline:none}.chat-input .btn{padding:0 16px;font-size:16px}.chat-close{color:var(--muted);background:0 0;border:0;font-size:14px;position:absolute;top:14px;right:16px}.chat-modal .quick{margin:8px 0}@media (max-width:720px){.chat-modal{grid-template-columns:1fr;height:92vh;overflow-y:auto}.chat-left img{align-self:center;width:auto;max-height:260px}}.msg .att{flex-wrap:wrap;gap:4px;margin-bottom:6px;display:flex}.msg .att img{object-fit:cover;cursor:zoom-in;width:54px;height:72px}.att-pending{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.att-pending span{position:relative}.att-pending img{object-fit:cover;border:1px solid var(--line);width:46px;height:60px}.att-pending span button{background:var(--ink);color:#fff;border:0;width:16px;height:16px;padding:0;font-size:9px;position:absolute;top:-6px;right:-6px}.chat-input .attach{cursor:pointer;align-items:center;padding:0 12px;font-size:15px;display:flex}.spin-btn{border:1px solid var(--line);background:#fff;padding:2px 7px;font-size:12px;font-weight:500;position:absolute;top:10px;right:10px}.spin-btn:hover{border-color:var(--ink)}.spin-modal{max-width:560px;position:relative}.spin-stage{background:var(--tile);aspect-ratio:3/4;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;justify-content:center;align-items:center;max-height:62vh;margin:0 auto;display:flex;position:relative}.spin-stage:active{cursor:grabbing}.spin-stage img{object-fit:contain;pointer-events:none;width:100%;height:100%}.spin-label{background:#fff;padding:2px 7px;font-size:12px;position:absolute;top:10px;left:10px}.spin-hint{text-align:center;color:var(--muted);font-size:11px;position:absolute;bottom:10px;left:0;right:0}.spin-dots{flex-wrap:wrap;justify-content:center;gap:4px;margin:10px 0;display:flex}.spin-dots button{border:1px solid var(--line);background:#fff;padding:3px 6px;font-size:11px}.spin-dots button.on{background:var(--ink);color:#fff;border-color:var(--ink)}.spin-dots button.empty{color:#c2c2c2;border-style:dashed}.spin-dots button.busy{background:linear-gradient(100deg,#f1f1f0 30%,#fafafa 50%,#f1f1f0 70%) 0 0/300% 100%;animation:1.4s linear infinite sh}.spin-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.card .try-bar{background:var(--ink);color:#fff;opacity:0;border:0;padding:6px 0;font-size:11px;transition:opacity .15s;position:absolute;bottom:38px;left:8px;right:8px}.card:hover .try-bar{opacity:1}@media (hover:none){.card .try-bar{opacity:1}}.builder{border:1px solid var(--line);margin-bottom:30px;padding:16px}.builder-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.builder-head .x{color:var(--muted);background:0 0;border:0;font-size:12px}.builder-body{grid-template-columns:1fr 300px;gap:20px;display:grid}.builder-grid{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:6px;max-height:420px;display:grid;overflow-y:auto}.bi{aspect-ratio:3/4;border:1px solid var(--line);background:#fff;padding:6px;position:relative}.bi img{object-fit:contain;mix-blend-mode:multiply;width:100%;height:100%}.bi.on{border:1.5px solid var(--ink)}.bi .tag{background:var(--tile);padding:0 3px;font-size:9px;position:absolute;bottom:3px;left:3px}.bi .ok{background:var(--ink);color:#fff;padding:0 4px;font-size:10px;position:absolute;top:3px;right:3px}.builder-chosen{flex-wrap:wrap;gap:4px;min-height:52px;display:flex}.builder-chosen button{border:1px solid var(--line);background:#fff;width:40px;height:52px;padding:2px;position:relative}.builder-chosen img{object-fit:contain;width:100%;height:100%}.builder-chosen span{background:var(--ink);color:#fff;width:13px;height:13px;font-size:8px;line-height:13px;position:absolute;top:-5px;right:-5px}@media (max-width:760px){.builder-body{grid-template-columns:1fr}}.pdock{z-index:70;flex-direction:column;gap:8px;width:min(380px,100% - 32px);display:flex;position:fixed;bottom:16px;left:16px}.pjob{border:1px solid var(--ink);background:#fff;padding:10px 12px;font-size:11px;box-shadow:0 6px 20px #0000001f}.pjob-top{justify-content:space-between;gap:10px;margin-bottom:7px;display:flex}.pjob-top span:last-child{color:var(--muted);white-space:nowrap}.pbar{background:var(--tile);height:4px;overflow:hidden}.pbar div{background:var(--ink);height:100%;transition:width .9s linear}.pjob-note{color:var(--muted);margin-top:6px}.params-btn{color:var(--muted);white-space:nowrap;background:0 0;border:0;padding:0;font-size:11px}.params-btn:hover{color:var(--ink);text-decoration:underline}.params input[placeholder="S / 42"]{width:70px}.pgrid{grid-template-columns:1fr 1fr;gap:0 12px;display:grid}.size-chips{flex-wrap:wrap;gap:4px;display:flex}.size-chips button{border:1px solid var(--line);background:#fff;padding:4px 9px;font-size:12px}.size-chips button.on{background:var(--ink);color:#fff;border-color:var(--ink)}.size-chips button.na{color:#bbb;text-decoration:line-through}.sizebox{border:1px dashed #cfcfcf;flex-direction:column;gap:8px;margin-bottom:14px;padding:12px;display:flex}.sizebox .hint{margin:0}.sizepick{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.sp-row{align-items:center;gap:8px;display:flex}.sp-row img{object-fit:contain;border:1px solid var(--line);width:34px;height:44px}.used-it{display:inline-block;position:relative}.used-it b{background:var(--ink);color:#fff;padding:0 3px;font-size:9px;font-weight:500;position:absolute;bottom:-4px;right:-4px}.look .size-cap{color:var(--ink);background:#ffffffe0;padding:5px 8px;font-size:10px;line-height:1.4;position:absolute;bottom:0;left:0;right:0}.viewer-wrap{position:relative}.viewer-wrap .size-cap{background:#ffffffe0;padding:6px 10px;font-size:11px;position:absolute;bottom:0;left:0;right:0}.passport{border-bottom:1px solid var(--line);margin-bottom:28px;padding-bottom:20px}.passport textarea{border:1px solid var(--line);resize:vertical;width:100%;padding:10px 12px;font-size:12px;line-height:1.6}.passport textarea:focus{border-color:var(--ink);outline:none}.card .qc{background:#ffffffe6;padding:3px 6px;font-size:10px;position:absolute;bottom:0;left:0;right:0}.card .qc.bad{color:#9a3a00}.cam{margin-bottom:4px}.cam-view{aspect-ratio:16/9;background:#111;position:relative;overflow:hidden}.cam-view video{object-fit:cover;width:100%;height:100%;display:block;transform:scaleX(-1)}.cam-frame{aspect-ratio:3/4;pointer-events:none;border:2px dashed #ffffffd9;height:100%;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 0 0 9999px #00000073}.cam-hint{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;background:#fff;max-width:92%;padding:8px 16px;font-size:22px;position:absolute;bottom:14px;left:50%;overflow:hidden;transform:translate(-50%)}.cam-count{color:#fff;text-shadow:0 2px 12px #0009;justify-content:center;align-items:center;font-size:96px;display:flex;position:absolute;inset:0}.cam-bar{flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0 6px;display:flex}.modal.modal-cam{max-width:960px}.cam-step{background:var(--ink);color:#fff;padding:4px 10px;font-size:14px;position:absolute;top:10px;left:10px}.cam-shots{flex-wrap:wrap;gap:8px;margin:10px 0 4px;display:flex}.cam-shot{width:78px;color:var(--muted);flex-direction:column;gap:3px;font-size:11px;display:flex}.cam-shot img{aspect-ratio:3/4;object-fit:cover;border:1px solid var(--line);width:78px}.cam-shot.empty:before{content:"";aspect-ratio:3/4;background:var(--tile);border:1px dashed #cfcfcf;width:78px;display:block}.cam-shot.add{cursor:pointer}.cam-shot.add:hover:before{border-color:var(--ink)}.cam-facing{opacity:.75}.scan-targets{flex-wrap:wrap;gap:6px;margin:10px 0 0;font-size:11px;display:flex}.scan-targets span{border:1px solid var(--line);color:var(--muted);padding:3px 8px}.scan-targets span.on{border-color:var(--ink);color:var(--ink)}.pick button{position:relative}.pick-tag{background:var(--ink);color:#fff;padding:1px 4px;font-size:9px;position:absolute;bottom:3px;left:3px}.face-row{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;margin:6px 0 2px;font-size:11px;display:flex}.face-row button{border:1px solid var(--line);font:inherit;color:var(--muted);cursor:pointer;background:#fff;padding:2px 8px}.face-row button.on{border-color:var(--ink);color:var(--ink)}.brand{letter-spacing:.04em;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:10px;display:block;overflow:hidden}.chip-select{border:1px solid var(--line);font:inherit;color:var(--ink);background:#fff;margin-left:6px;padding:4px 8px;font-size:12px}.card .meta .nmwrap{flex-direction:column;min-width:0;display:flex}.card .meta .nmwrap .nm{display:block}.heart{z-index:2;border:1px solid var(--line);cursor:pointer;width:26px;height:26px;color:var(--muted);opacity:0;background:#fff;font-size:15px;line-height:1;transition:opacity .15s;position:absolute;top:6px;left:6px}.card:hover .heart,.look:hover .heart,.heart.on{opacity:1}.heart.on{color:#c0392b;border-color:#c0392b}@media (hover:none){.heart{opacity:1}}.look .ph .heart{top:10px;left:auto;right:10px}.fav-chip.on{color:#c0392b;border-color:#c0392b}.account{color:var(--muted);flex-wrap:wrap;align-items:center;gap:12px;font-size:11px;display:flex}.account span:first-child{text-overflow:ellipsis;white-space:nowrap;max-width:180px;overflow:hidden}.account button{color:var(--muted);background:0 0;border:0;padding:0;font-size:11px;text-decoration:underline}.account .quota{color:var(--ink)}.auth-box{border:1px solid var(--ink);max-width:380px;margin-top:10px;padding:22px}.admin-new{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;display:flex}.admin-new input{border:1px solid var(--line);width:120px;margin-left:6px;padding:7px 8px}.atable{border-collapse:collapse;width:100%;font-size:12px}.atable th{text-align:left;color:var(--muted);border-bottom:1px solid var(--line);padding:6px 8px;font-weight:400}.atable td{border-bottom:1px solid var(--line);padding:8px}.atable button{border:1px solid var(--line);background:0 0;padding:3px 8px;font-size:11px}.qinput{border:1px solid var(--line);width:64px;padding:4px 6px}
