
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}
:root{
  --bg:#e8e3db;--desktop:#ddd8cf;--mb-bg:rgba(232,227,219,.92);--mb-br:rgba(0,0,0,.1);
  --txt:#1a1a1a;--txt2:#5a5a5a;--txt3:#999;
  --wbg:#faf9f6;--wbr:rgba(0,0,0,.11);
  --wshadow:0 24px 64px rgba(0,0,0,.2),0 4px 16px rgba(0,0,0,.1),0 1px 0 rgba(255,255,255,.55) inset;
  --tbg:#ede9e3;--tbr:rgba(0,0,0,.09);
  --dock-bg:rgba(210,206,198,.74);--dock-br:rgba(255,255,255,.55);
  --acc:#cf4e16;--acc2:#1e6637;--acc3:#1840a0;
  --ibg:rgba(255,255,255,.75);--ibr:rgba(0,0,0,.07);
  --scroll:#c8c4bc;
  --mb:28px;--db:80px;
}
[data-theme=dark]{
  --bg:#181614;--desktop:#111009;--mb-bg:rgba(22,20,18,.93);--mb-br:rgba(255,255,255,.07);
  --txt:#ece8e2;--txt2:#8a8680;--txt3:#555;
  --wbg:#1c1a18;--wbr:rgba(255,255,255,.07);
  --wshadow:0 24px 64px rgba(0,0,0,.55),0 4px 16px rgba(0,0,0,.35);
  --tbg:#232120;--tbr:rgba(255,255,255,.05);
  --dock-bg:rgba(28,26,24,.84);--dock-br:rgba(255,255,255,.07);
  --ibg:rgba(255,255,255,.04);--ibr:rgba(255,255,255,.07);
  --scroll:#3a3835;
}
html,body{width:100%;height:100%;overflow:hidden;font-family:'Inter',sans-serif;background:var(--bg);color:var(--txt)}

/* ── LOADING ── */
#ld{position:fixed;inset:0;z-index:9999;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;transition:opacity .5s}
#ld.out{opacity:0;pointer-events:none}
.ld-ico{width:72px;height:72px;border-radius:18px;background:linear-gradient(145deg,#f07040,#cf4e16);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 32px rgba(207,78,22,.4);animation:ldp 1.4s ease-in-out infinite}
@keyframes ldp{0%,100%{transform:scale(1)}50%{transform:scale(1.07)}}
.ld-bar-bg{width:160px;height:3px;background:var(--wbr);border-radius:2px;overflow:hidden}
.ld-bar{height:100%;background:var(--acc);border-radius:2px;animation:ldb 1.7s ease forwards}
@keyframes ldb{from{width:0}to{width:100%}}
.ld-txt{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--txt2);letter-spacing:.06em}

/* ── MENUBAR ── */
#mb{position:fixed;top:0;left:0;right:0;height:var(--mb);z-index:200;background:var(--mb-bg);border-bottom:1px solid var(--mb-br);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);display:flex;align-items:center;padding:0 10px;gap:0;user-select:none}
.mb-apl{width:22px;height:22px;display:flex;align-items:center;justify-content:center;margin-right:4px;cursor:pointer;border-radius:4px;flex-shrink:0;font-size:0}
.mb-apl:hover{background:rgba(0,0,0,.08)}
[data-theme=dark] .mb-apl:hover{background:rgba(255,255,255,.08)}
.mb-it{padding:0 7px;height:var(--mb);display:flex;align-items:center;font-size:12px;font-weight:500;color:var(--txt);cursor:pointer;border-radius:4px;white-space:nowrap;position:relative}
.mb-it:hover,.mb-it.on{background:rgba(0,0,0,.07)}
[data-theme=dark] .mb-it:hover,[data-theme=dark] .mb-it.on{background:rgba(255,255,255,.08)}
.mb-bold{font-weight:700;font-size:13px}
.mb-sp{flex:1}
.mb-r{display:flex;align-items:center;gap:6px}
.mb-clk{font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:500;color:var(--txt);white-space:nowrap}
.mb-thm{width:26px;height:20px;display:flex;align-items:center;justify-content:center;border:1px solid var(--wbr);border-radius:5px;background:var(--ibg);cursor:pointer;font-size:13px}
.mb-thm:hover{background:var(--wbr)}
@media(max-width:400px){.mb-it:not(.mb-bold){display:none}}

/* ── DROPDOWN ── */
.dd{position:absolute;top:28px;left:0;min-width:172px;background:var(--wbg);border:1px solid var(--wbr);border-radius:8px;box-shadow:0 12px 40px rgba(0,0,0,.18);padding:4px 0;display:none;z-index:300;backdrop-filter:blur(20px)}
.dd.open{display:block}
.ddi{padding:5px 14px;font-size:12px;color:var(--txt);cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:14px}
.ddi:hover{background:var(--acc);color:#fff}
.dds{height:1px;background:var(--wbr);margin:3px 0}
.ddsc{font-family:'JetBrains Mono',monospace;font-size:10px;opacity:.42}

/* ── DESKTOP ── */
#desk{position:fixed;top:var(--mb);left:0;right:0;bottom:var(--db);background:var(--desktop);overflow:hidden}
.walpaper{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;opacity:.12;transition:opacity .3s}

/* ── DESKTOP ICONS ── */
.dicons{position:absolute;top:16px;right:12px;display:flex;flex-direction:column;gap:2px;align-items:center}
@media(max-width:600px){.dicons{top:8px;right:6px}}
.dic{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px;border-radius:8px;cursor:pointer;width:70px;transition:background .15s}
.dic:hover{background:rgba(100,100,100,.13)}
.dic.sel{background:rgba(100,100,100,.2)}
.dic.sel .dlb{background:var(--acc);color:#fff;border-radius:3px;padding:1px 4px}
.dimg{width:46px;height:46px;border-radius:11px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 10px rgba(0,0,0,.14),0 1px 0 rgba(255,255,255,.4) inset;flex-shrink:0;font-size:0}
.dlb{font-size:10.5px;color:var(--txt);text-align:center;line-height:1.25;word-break:break-word;text-shadow:0 1px 3px rgba(0,0,0,.25);max-width:62px}
[data-theme=dark] .dlb{text-shadow:0 1px 4px rgba(0,0,0,.9)}
@media(max-width:600px){.dimg{width:40px;height:40px;border-radius:9px}.dlb{font-size:9.5px}.dic{width:58px}}

/* ── WINDOW ── */
.win{position:absolute;background:var(--wbg);border:1px solid var(--wbr);border-radius:12px;box-shadow:var(--wshadow);display:flex;flex-direction:column;z-index:10;overflow:hidden;animation:wPop .22s cubic-bezier(.34,1.56,.64,1);min-width:280px;min-height:160px}
@keyframes wPop{from{transform:scale(.82) translateY(10px);opacity:0}to{transform:scale(1);opacity:1}}
.win.focused{z-index:20;box-shadow:0 32px 80px rgba(0,0,0,.24),0 4px 16px rgba(0,0,0,.12),0 1px 0 rgba(255,255,255,.5) inset}
.win.mini{display:none}
@media(max-width:600px){
  .win{border-radius:16px 16px 0 0 !important;left:0 !important;right:0 !important;bottom:0 !important;top:auto !important;width:100% !important;height:84% !important;max-height:84%;resize:none !important;animation:slideUp .3s cubic-bezier(.34,1.36,.64,1)}
  @keyframes slideUp{from{transform:translateY(100%)}to{transform:translateY(0)}}
}
.titlebar{height:40px;min-height:40px;background:var(--tbg);border-bottom:1px solid var(--tbr);display:flex;align-items:center;padding:0 14px;gap:8px;cursor:move;user-select:none;-webkit-user-select:none;flex-shrink:0}
@media(max-width:600px){.titlebar{cursor:default;border-radius:16px 16px 0 0;padding-top:6px}}
.tls{display:flex;gap:7px;flex-shrink:0}
.tl{width:12px;height:12px;border-radius:50%;border:none;outline:none;cursor:pointer;transition:filter .1s,transform .1s}
.tl:hover{filter:brightness(.8);transform:scale(1.1)}
.tl-c{background:#ff5f57;box-shadow:0 0 0 .5px rgba(0,0,0,.12)}
.tl-m{background:#febc2e;box-shadow:0 0 0 .5px rgba(0,0,0,.12)}
.tl-z{background:#28c840;box-shadow:0 0 0 .5px rgba(0,0,0,.12)}
.ttl{flex:1;text-align:center;font-size:12px;font-weight:500;color:var(--txt2);pointer-events:none;display:flex;align-items:center;justify-content:center;gap:5px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.ttl-ico{width:16px;height:16px;font-size:0;flex-shrink:0}
.mob-handle{display:none;position:absolute;top:8px;left:50%;transform:translateX(-50%);width:36px;height:4px;background:var(--wbr);border-radius:2px}
@media(max-width:600px){.mob-handle{display:block}}
.wc{flex:1;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--scroll) transparent}
::-webkit-scrollbar{width:5px;height:5px}
::-webkit-scrollbar-thumb{background:var(--scroll);border-radius:3px}

/* ── WIN BODY ── */
.wb{padding:22px 24px;font-size:13px;line-height:1.7;color:var(--txt)}
@media(max-width:600px){.wb{padding:16px 18px;padding-bottom:24px}}
.wb h1{font-size:20px;font-weight:700;margin-bottom:5px;line-height:1.2}
.wb h2{font-size:14px;font-weight:600;margin:18px 0 7px}
.wb p{margin-bottom:10px;color:var(--txt2)}
.wb a{color:var(--acc);text-decoration:none}
.tag{display:inline-block;padding:2px 7px;background:var(--acc);color:#fff;border-radius:3px;font-size:10px;font-weight:600;letter-spacing:.04em;margin-right:3px;margin-bottom:3px}
.tag.g{background:var(--acc2)}.tag.b{background:var(--acc3)}.tag.m{background:var(--wbr);color:var(--txt2)}
.tags{display:flex;flex-wrap:wrap;gap:3px;margin:8px 0}
.divr{height:1px;background:var(--wbr);margin:14px 0}
.sg{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}
.sb{background:var(--desktop);border-radius:8px;padding:11px;border:1px solid var(--wbr)}
.sl{font-size:10px;color:var(--txt3);text-transform:uppercase;letter-spacing:.08em;margin-bottom:3px}
.sv{font-size:17px;font-weight:700}
.pc{background:var(--desktop);border:1px solid var(--wbr);border-radius:8px;padding:13px;margin-bottom:9px;cursor:pointer;transition:border-color .15s,transform .1s}
.pc:hover{border-color:var(--acc);transform:translateY(-1px)}
.pn{font-size:13px;font-weight:600;margin-bottom:3px}.pd{font-size:12px;color:var(--txt2);line-height:1.5}
.bp{padding:11px 0;border-bottom:1px solid var(--wbr);cursor:pointer}.bp:last-child{border-bottom:none}
.bt{font-size:13px;font-weight:500;margin-bottom:3px}.bp:hover .bt{color:var(--acc)}
.bm{font-size:11px;color:var(--txt3);font-family:'JetBrains Mono',monospace}
.cr{display:flex;align-items:center;gap:11px;padding:10px 0;border-bottom:1px solid var(--wbr);cursor:pointer}.cr:last-child{border-bottom:none}
.cr:hover .cl{color:var(--acc)}
.ci{width:30px;height:30px;flex-shrink:0;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:0}
.cl{font-size:13px;font-weight:500}.cv{font-size:11px;color:var(--txt2)}
.ei{padding:11px 0;border-bottom:1px solid var(--wbr)}.ei:last-child{border-bottom:none}
.er{font-size:13px;font-weight:600}.ec{font-size:12px;color:var(--acc);margin-bottom:2px}.ep{font-size:11px;color:var(--txt3);font-family:'JetBrains Mono',monospace}
.hr2{display:flex;align-items:center;justify-content:space-between;padding:6px 0;border-bottom:1px solid var(--wbr);font-size:12px}.hr2:last-child{border-bottom:none}
.kbd{display:inline-block;padding:2px 5px;background:var(--desktop);border:1px solid var(--wbr);border-radius:4px;font-family:'JetBrains Mono',monospace;font-size:10px;box-shadow:0 1px 0 var(--wbr)}
.prow{display:flex;align-items:flex-start;gap:14px;margin-bottom:18px}
.av{width:58px;height:58px;border-radius:50%;background:linear-gradient(135deg,#f07040,#cf4e16);display:flex;align-items:center;justify-content:center;font-size:18px;color:#fff;font-weight:700;flex-shrink:0}
.pn2{font-size:19px;font-weight:700;margin-bottom:1px}.ps{font-size:12px;color:var(--txt2);margin-bottom:7px}
.ss{margin-bottom:18px}.ssl{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--txt3);margin-bottom:7px;font-weight:600}
.sr{display:flex;align-items:center;justify-content:space-between;padding:7px 0;border-bottom:1px solid var(--wbr);font-size:12px}.sr:last-child{border-bottom:none}
.tgl{width:34px;height:19px;background:var(--wbr);border-radius:10px;cursor:pointer;position:relative;transition:background .2s;flex-shrink:0}
.tgl.on{background:var(--acc)}.tgl::after{content:'';position:absolute;top:2px;left:2px;width:15px;height:15px;background:#fff;border-radius:50%;transition:left .2s;box-shadow:0 1px 3px rgba(0,0,0,.2)}.tgl.on::after{left:17px}
.swatches{display:flex;gap:7px;flex-wrap:wrap;margin-top:5px}
.sw{width:22px;height:22px;border-radius:50%;cursor:pointer;border:2.5px solid transparent;transition:border-color .15s,transform .1s}.sw:hover{transform:scale(1.12)}.sw.act{border-color:var(--txt)}

/* ── TERMINAL ── */
.tbdy{background:#0c0c0c;color:#e8e3db;font-family:'JetBrains Mono',monospace;font-size:12px;line-height:1.65;padding:14px;height:100%;display:flex;flex-direction:column;min-height:260px}
@media(max-width:600px){.tbdy{font-size:11px;padding:10px}}
.tout{flex:1;overflow-y:auto;margin-bottom:6px;scrollbar-width:thin;scrollbar-color:#2a2a2a transparent}
.tln{margin-bottom:1px}.tp{color:#30d158}.tc{color:#e8e3db}.tr{color:#8e8a85}.te{color:#ff453a}.tpath{color:#ffd60a}
.tir{display:flex;align-items:center;gap:5px}.tir span{color:#30d158;white-space:nowrap}
.tinp{flex:1;background:transparent;border:none;outline:none;font-family:'JetBrains Mono',monospace;font-size:12px;color:#e8e3db;caret-color:#e8e3db}
@media(max-width:600px){.tinp{font-size:11px}}

/* ── DOCK ── */
#dock{position:fixed;bottom:0;left:0;right:0;height:var(--db);display:flex;align-items:center;justify-content:center;padding-bottom:env(safe-area-inset-bottom,8px);z-index:100}
.dockinner{display:flex;align-items:flex-end;gap:5px;padding:7px 14px 8px;background:var(--dock-bg);border:1px solid var(--dock-br);border-radius:18px;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 4px 32px rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.35)}
[data-theme=dark] .dockinner{box-shadow:0 4px 32px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.05)}
.di{display:flex;flex-direction:column;align-items:center;gap:2px;cursor:pointer;position:relative;transition:transform .15s cubic-bezier(.34,1.56,.64,1)}
.di:hover{transform:scale(1.22) translateY(-8px)}
.di:hover .dlbl{opacity:1;transform:translateX(-50%) translateY(0)}
.dico{width:46px;height:46px;border-radius:11px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 10px rgba(0,0,0,.14);transition:box-shadow .15s;flex-shrink:0;font-size:0}
.di:hover .dico{box-shadow:0 10px 28px rgba(0,0,0,.18)}
.dlbl{position:absolute;bottom:56px;left:50%;transform:translateX(-50%) translateY(5px);background:rgba(0,0,0,.82);color:#fff;font-size:10px;padding:3px 7px;border-radius:5px;white-space:nowrap;opacity:0;transition:opacity .15s,transform .15s;pointer-events:none;font-family:'Inter',sans-serif}
.ddot{width:4px;height:4px;border-radius:50%;background:var(--acc);position:absolute;bottom:-6px;left:50%;transform:translateX(-50%)}
.dsep{width:1px;height:30px;background:var(--wbr);margin:0 3px;align-self:center}
@media(max-width:480px){.dico{width:38px;height:38px;border-radius:9px}.dockinner{gap:3px;padding:6px 10px 7px;border-radius:14px}.di:hover{transform:scale(1.15) translateY(-5px)}}
@media(max-width:360px){.dico{width:32px;height:32px;border-radius:8px}.dockinner{gap:2px;padding:5px 8px 6px}}

/* ── CONTEXT MENU ── */
#ctx{position:fixed;background:var(--wbg);border:1px solid var(--wbr);border-radius:9px;box-shadow:0 10px 36px rgba(0,0,0,.18);padding:4px 0;z-index:400;display:none;min-width:162px;backdrop-filter:blur(20px)}
#ctx.open{display:block}
.cxi{padding:5px 13px;font-size:12px;color:var(--txt);cursor:pointer;display:flex;align-items:center;gap:8px}.cxi:hover{background:var(--acc);color:#fff}
.cxs{height:1px;background:var(--wbr);margin:3px 0}
.cxic{width:16px;height:16px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:0}

/* ── SEARCH ── */
#srch{position:fixed;inset:0;z-index:500;background:rgba(0,0,0,.38);display:none;align-items:flex-start;justify-content:center;padding-top:80px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
#srch.open{display:flex}
@media(max-width:600px){#srch{padding-top:40px;align-items:flex-end;padding:0}}
.sbox{width:min(540px,94vw);background:var(--wbg);border:1px solid var(--wbr);border-radius:14px;box-shadow:0 28px 70px rgba(0,0,0,.28);overflow:hidden}
@media(max-width:600px){.sbox{width:100%;border-radius:16px 16px 0 0}}
.sirow{display:flex;align-items:center;gap:10px;padding:13px 16px;border-bottom:1px solid var(--wbr)}
.sirow span{flex-shrink:0;font-size:0}
.si{flex:1;border:none;background:transparent;outline:none;font-size:15px;color:var(--txt);font-family:'Inter',sans-serif}
.sres{max-height:280px;overflow-y:auto;padding:4px 0}
.sr2{padding:8px 14px;cursor:pointer;display:flex;align-items:center;gap:9px;font-size:13px}
.sr2:hover,.sr2.hl{background:var(--acc);color:#fff}
.sri{width:22px;height:22px;flex-shrink:0;font-size:0;display:flex;align-items:center;justify-content:center}
.sempty{padding:22px;text-align:center;color:var(--txt3);font-size:13px}

/* ── MOBILE OVERLAY ── */
#movl{display:none;position:fixed;inset:0;z-index:15;background:rgba(0,0,0,.35);backdrop-filter:blur(2px)}
@media(max-width:600px){#movl.show{display:block}}

/* WordPress integration + fixes */
button{font:inherit;color:inherit}
.mb-apl,.mb-thm{border:0}
.srch-esc{font-size:11px;color:var(--txt3);cursor:pointer;white-space:nowrap;flex-shrink:0}
.av{overflow:hidden}.av img{width:100%;height:100%;object-fit:cover;display:block}
.has-custom-wallpaper{background-position:center;background-repeat:no-repeat;background-size:cover;width:100%;height:100%}
@media(min-width:601px){.win{resize:both}}
.wb img,.post-content img,.project-content img{max-width:100%;height:auto;border-radius:8px}
.pc,.bp{position:relative}.pc.is-clickable,.bp.is-clickable{cursor:pointer}
.pthumb{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:8px;margin-bottom:12px;border:1px solid var(--wbr)}
.pactions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.pbtn{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:7px;border:1px solid var(--wbr);background:var(--desktop);color:var(--txt)!important;text-decoration:none;font-size:11px;font-weight:600}.pbtn:hover{border-color:var(--acc);color:var(--acc)!important}
.contact-link{color:inherit!important;display:flex;align-items:center;gap:11px;text-decoration:none;width:100%}
.contact-form-wrap{margin-top:16px}.contact-form-wrap input,.contact-form-wrap textarea,.contact-form-wrap select{max-width:100%;width:100%;border:1px solid var(--wbr);background:var(--desktop);color:var(--txt);border-radius:7px;padding:8px}.contact-form-wrap input[type=submit]{width:auto;background:var(--acc);color:#fff;border:0;cursor:pointer;padding:9px 14px}
.portfolioos-noscript{padding:40px;max-width:760px;margin:0 auto}
body.admin-bar #mb{top:32px}body.admin-bar #desk{top:calc(var(--mb) + 32px)}
@media(max-width:782px){body.admin-bar #mb{top:46px}body.admin-bar #desk{top:calc(var(--mb) + 46px)}}
body.portfolioos-standard{height:auto;overflow:auto;background:#f4f1eb;color:#1a1a1a}.portfolioos-standard #mb,.portfolioos-standard #dock{display:none}
.portfolioos-standard-main{min-height:100vh;padding:48px 20px;font-family:Inter,sans-serif}.portfolioos-standard-shell{max-width:860px;margin:0 auto}.portfolioos-standard-head{margin-bottom:28px}.portfolioos-standard-head a,.portfolioos-standard-main a{color:#cf4e16;text-decoration:none}.portfolioos-article-card{padding:22px 0;border-bottom:1px solid rgba(0,0,0,.12)}.portfolioos-article-card h2,.portfolioos-single h1{margin:0 0 8px}.portfolioos-meta{font:11px 'JetBrains Mono',monospace;color:#777;margin-bottom:16px}.portfolioos-single-image{max-width:100%;height:auto;border-radius:14px;margin:16px 0 24px}.portfolioos-entry{font-size:16px;line-height:1.75}.portfolioos-entry p{margin:0 0 1.2em}.portfolioos-entry img{max-width:100%;height:auto}

html.portfolioos-standard-html{height:auto;overflow:auto;background:#f4f1eb}

.portfolioos-form-source{position:fixed!important;left:-99999px!important;top:-99999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
