.theme-casefile { --cf-cork:#704d30; --cf-cork-dark:#4b311f; --cf-paper:#eee7d6; --cf-ink:#211e19; --cf-red:#b52e2b; --cf-yellow:#e3c75b; --cf-blue:#42677b; min-height:100vh; background:var(--cf-cork-dark); color:var(--cf-ink); }
.theme-casefile .casefile-page { position:relative; min-height:100dvh; overflow:hidden; background-color:var(--cf-cork); background-image:radial-gradient(circle,rgba(39,24,14,.28) 1px,transparent 1.5px),radial-gradient(circle at 18% 10%,rgba(255,255,255,.08),transparent 28%),linear-gradient(110deg,transparent 0 48%,rgba(45,28,16,.08) 48% 52%,transparent 52%); background-size:10px 10px,100% 100%,220px 220px; font-family:"IBM Plex Sans",Inter,sans-serif; }
.theme-casefile .cf-casebar { position:fixed; z-index:50; top:0; right:0; left:0; display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:22px; min-height:66px; padding:8px clamp(16px,3vw,48px); border-bottom:3px solid #10100e; background:rgba(22,21,18,.96); color:#fff; box-shadow:0 6px 18px rgba(0,0,0,.22); }
.theme-casefile .cf-logo,.theme-casefile .cf-download { display:flex; min-height:44px; align-items:center; gap:10px; color:#fff; font-weight:800; text-decoration:none; }
.theme-casefile .cf-logo { letter-spacing:.06em; text-transform:uppercase; }
.theme-casefile .cf-logo i { color:var(--accent); font-size:22px; }
.theme-casefile .cf-casebar nav { display:flex; min-width:0; justify-content:center; gap:4px; overflow-x:auto; scrollbar-width:none; }
.theme-casefile .cf-casebar nav::-webkit-scrollbar { display:none; }
.theme-casefile .cf-casebar nav a { display:grid; min-width:44px; min-height:44px; place-items:center; padding:0 10px; color:#bcb8ae; font:800 9px/1 "Courier New",monospace; text-decoration:none; text-transform:uppercase; white-space:nowrap; }
.theme-casefile .cf-casebar nav a.is-active { background:var(--accent); color:#111; }
.theme-casefile .cf-download { padding:0 16px; border:1px solid #6b6961; }
.theme-casefile .cf-string-map { position:absolute; z-index:1; top:70px; left:50%; width:min(1600px,96vw); height:calc(100% - 90px); transform:translateX(-50%); pointer-events:none; }
.theme-casefile .cf-string-map path { fill:none; stroke:#bb2828; stroke-width:5; stroke-linecap:round; opacity:.72; filter:drop-shadow(1px 2px 1px rgba(0,0,0,.35)); vector-effect:non-scaling-stroke; }
.theme-casefile .cf-board { position:relative; z-index:2; display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:clamp(38px,5vw,82px) clamp(22px,3vw,50px); width:min(1600px,94vw); margin:0 auto; padding:130px 0 120px; }
.theme-casefile .cf-hero { position:relative; display:grid; grid-column:1/-1; grid-template-columns:minmax(260px,.72fr) minmax(0,1.6fr); align-items:center; gap:clamp(36px,7vw,110px); min-height:760px; }
.theme-casefile .cf-polaroid { position:relative; width:min(440px,90%); margin:auto; padding:18px 18px 78px; transform:rotate(-4deg); background:#f6f3eb; box-shadow:6px 10px 0 rgba(37,24,15,.42),0 24px 34px rgba(0,0,0,.28); }
.theme-casefile .cf-polaroid img,.theme-casefile .cf-photo-placeholder { display:grid; width:100%; aspect-ratio:4/5; place-items:center; object-fit:cover; background:#b9c2bc; filter:saturate(.72) contrast(1.06); }
.theme-casefile .cf-photo-placeholder { color:#1b2525; font:900 clamp(90px,12vw,180px)/1 Oswald,sans-serif; }
.theme-casefile .cf-polaroid figcaption { position:absolute; right:24px; bottom:26px; left:24px; font:700 18px/1.2 "Courier New",monospace; text-align:center; }
.theme-casefile .cf-tape { position:absolute; z-index:2; top:-24px; left:50%; width:130px; height:50px; transform:translateX(-50%) rotate(2deg); background:rgba(224,201,127,.75); clip-path:polygon(3% 7%,98% 0,93% 100%,0 88%); }
.theme-casefile .cf-folder { position:relative; min-width:0; padding:clamp(45px,6vw,90px); border:1px solid rgba(54,41,28,.25); background:#c8ab74; box-shadow:12px 16px 0 rgba(45,29,17,.45),0 24px 40px rgba(0,0,0,.22); }
.theme-casefile .cf-folder::before { position:absolute; inset:18px; border:2px dashed rgba(68,43,22,.25); content:""; pointer-events:none; }
.theme-casefile .cf-folder-tab { position:absolute; top:-38px; left:0; min-width:240px; height:40px; padding:12px 24px 0; border-radius:12px 12px 0 0; background:#c8ab74; font:800 10px/1 "Courier New",monospace; letter-spacing:.1em; }
.theme-casefile .cf-typewriter { position:relative; margin:0; color:#654323; font:800 11px/1 "Courier New",monospace; letter-spacing:.12em; text-transform:uppercase; }
.theme-casefile .cf-folder h1 { position:relative; max-width:9ch; margin:25px 0 8px; font:900 clamp(70px,8vw,134px)/.78 Oswald,sans-serif; letter-spacing:-.055em; text-transform:uppercase; }
.theme-casefile .cf-folder h2 { position:relative; margin:0 0 24px; font:800 clamp(18px,2vw,30px)/1.2 "Courier New",monospace; }
.theme-casefile .cf-folder>p:last-of-type { position:relative; max-width:64ch; margin:0; font-size:clamp(15px,1.2vw,19px); line-height:1.65; }
.theme-casefile .cf-hero-actions { position:relative; display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.theme-casefile .cf-hero-actions a { display:flex; min-height:48px; align-items:center; gap:10px; padding:0 20px; border:2px solid #1b1814; background:#1b1814; color:#fff; font-weight:800; text-decoration:none; }
.theme-casefile .cf-hero-actions a.is-secondary { background:transparent; color:#1b1814; }
.theme-casefile .cf-card { position:relative; min-width:0; padding:clamp(30px,4vw,64px); border:1px solid rgba(55,40,24,.28); background:var(--cf-paper); box-shadow:8px 12px 0 rgba(43,27,16,.42),0 18px 26px rgba(0,0,0,.18); }
.theme-casefile .cf-card:nth-of-type(3n) { transform:rotate(.45deg); }
.theme-casefile .cf-card:nth-of-type(3n+1) { transform:rotate(-.35deg); }
.theme-casefile .cf-pin { position:absolute; z-index:4; top:18px; left:50%; width:22px; aspect-ratio:1; transform:translateX(-50%); border:3px solid rgba(255,255,255,.42); border-radius:50%; background:var(--cf-red); box-shadow:2px 4px 4px rgba(0,0,0,.38); }
.theme-casefile .cf-card>header { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:35px; padding-bottom:18px; border-bottom:3px solid var(--cf-ink); }
.theme-casefile .cf-card>header small { flex:0 0 auto; color:var(--cf-red); font:800 10px/1 "Courier New",monospace; letter-spacing:.12em; }
.theme-casefile .cf-card>header h2 { min-width:0; margin:0; font:900 clamp(44px,5.7vw,96px)/.82 Oswald,sans-serif; letter-spacing:-.045em; text-align:right; text-transform:uppercase; overflow-wrap:anywhere; }
.theme-casefile .cf-summary { grid-column:1/span 8; background:#e7ddc7; }
.theme-casefile .cf-summary-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(250px,.65fr); gap:48px; }
.theme-casefile .cf-statement { margin:0; font:500 clamp(19px,1.8vw,29px)/1.55 "Libre Baskerville",serif; }
.theme-casefile .cf-summary dl { margin:0; }
.theme-casefile .cf-summary dl div { padding:13px 0; border-bottom:1px dashed rgba(35,31,25,.35); }
.theme-casefile .cf-summary dt { color:var(--cf-red); font:800 10px/1 "Courier New",monospace; text-transform:uppercase; }
.theme-casefile .cf-summary dd { margin:6px 0 0; overflow-wrap:anywhere; font-weight:700; }
.theme-casefile .cf-summary a { color:inherit; }
.theme-casefile .cf-approved { position:absolute; right:40px; bottom:24px; transform:rotate(-9deg); border:5px double rgba(181,46,43,.4); color:rgba(181,46,43,.45); font:900 22px/1 Oswald,sans-serif; padding:10px 18px; }
.theme-casefile .cf-experience { grid-column:4/-1; background:#ece8df; }
.theme-casefile .cf-logbook { display:grid; gap:4px; }
.theme-casefile .cf-logbook article { display:grid; grid-template-columns:48px 170px minmax(0,1fr); gap:22px; padding:25px 0; border-bottom:1px solid rgba(35,31,25,.18); }
.theme-casefile .cf-log-number { display:grid; width:44px; height:44px; place-items:center; background:var(--cf-ink); color:#fff; font:800 11px/1 "Courier New",monospace; }
.theme-casefile .cf-log-date { color:var(--cf-red); font:800 12px/1.3 "Courier New",monospace; }
.theme-casefile .cf-log-date i { display:block; width:100%; margin-top:10px; border-top:2px dashed var(--cf-red); }
.theme-casefile .cf-logbook h3 { margin:0 0 7px; font:800 clamp(22px,2.1vw,34px)/1.05 Oswald,sans-serif; }
.theme-casefile .cf-logbook p { margin:0; color:#686052; }
.theme-casefile .cf-logbook ul,.theme-casefile .cf-evidence-grid ul { margin:14px 0 0; padding-left:18px; line-height:1.55; }
.theme-casefile .cf-projects { grid-column:1/-1; background:#d8d2c5; }
.theme-casefile .cf-evidence-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:26px; }
.theme-casefile .cf-evidence-grid article { min-width:0; padding:14px 14px 28px; background:#f7f4ec; box-shadow:3px 5px 0 rgba(39,32,24,.2); }
.theme-casefile .cf-evidence-grid article:nth-child(3n+1) { transform:rotate(-1.2deg); }
.theme-casefile .cf-evidence-grid article:nth-child(3n+2) { transform:rotate(.8deg); }
.theme-casefile .cf-evidence-photo { position:relative; display:grid; aspect-ratio:16/9; place-items:center; overflow:hidden; background:repeating-linear-gradient(135deg,#26363d 0 18px,#324850 18px 36px); color:#fff; }
.theme-casefile .cf-evidence-photo span { position:absolute; top:10px; left:10px; display:grid; width:36px; height:36px; place-items:center; border:1px solid #fff; border-radius:50%; font:800 10px/1 "Courier New",monospace; }
.theme-casefile .cf-evidence-photo i { font-size:clamp(44px,5vw,78px); }
.theme-casefile .cf-evidence-grid article>div:last-child { padding:18px 10px 0; }
.theme-casefile .cf-evidence-meta { display:flex; justify-content:space-between; gap:12px; margin:0; color:#6e665a; font:700 10px/1 "Courier New",monospace; text-transform:uppercase; }
.theme-casefile .cf-evidence-grid h3 { margin:14px 0; font:900 clamp(24px,2.3vw,38px)/1 Oswald,sans-serif; }
.theme-casefile .cf-evidence-grid a { display:inline-flex; min-height:44px; align-items:center; gap:8px; color:var(--cf-red); font-weight:800; }
.theme-casefile .cf-education { grid-column:1/span 6; background:#ded5bf; }
.theme-casefile .cf-records { display:grid; gap:18px; }
.theme-casefile .cf-records article { display:grid; grid-template-columns:62px minmax(0,1fr); gap:18px; padding:20px; border:1px solid rgba(40,34,25,.25); background:rgba(255,255,255,.35); }
.theme-casefile .cf-records article>i { display:grid; width:56px; height:56px; place-items:center; border:2px solid var(--cf-blue); border-radius:50%; color:var(--cf-blue); }
.theme-casefile .cf-records time { color:var(--cf-red); font:800 10px/1 "Courier New",monospace; }
.theme-casefile .cf-records h3 { margin:8px 0 4px; font:800 24px/1.05 Oswald,sans-serif; }
.theme-casefile .cf-records p { margin:0; color:#6b6254; }
.theme-casefile .cf-skills { grid-column:7/-1; background:#e9e3d4; }
.theme-casefile .cf-sticky-wall { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.theme-casefile .cf-sticky-wall article { min-width:0; min-height:150px; padding:22px; transform:rotate(-1.2deg); background:#e6cf63; box-shadow:2px 4px 0 rgba(50,39,21,.18); }
.theme-casefile .cf-sticky-wall article:nth-child(even) { transform:rotate(1.3deg); background:#b7d5cf; }
.theme-casefile .cf-sticky-wall article>span { font:800 10px/1 "Courier New",monospace; }
.theme-casefile .cf-sticky-wall h3 { margin:20px 0 7px; font:900 25px/1 Oswald,sans-serif; overflow-wrap:anywhere; }
.theme-casefile .cf-sticky-wall p { margin:0; font-size:13px; overflow-wrap:anywhere; }
.theme-casefile .cf-certificates { grid-column:2/span 7; background:#ebe4d4; }
.theme-casefile .cf-document-stack { display:grid; gap:14px; }
.theme-casefile .cf-document-stack article { display:grid; grid-template-columns:62px minmax(0,1fr); gap:18px; align-items:center; padding:18px; border:1px dashed rgba(38,32,24,.38); }
.theme-casefile .cf-verified { display:grid; width:58px; height:58px; place-items:center; transform:rotate(-8deg); border:4px double var(--cf-red); border-radius:50%; color:var(--cf-red); }
.theme-casefile .cf-document-stack time { color:var(--cf-red); font:800 10px/1 "Courier New",monospace; }
.theme-casefile .cf-document-stack h3 { margin:6px 0 3px; font:800 24px/1 Oswald,sans-serif; }
.theme-casefile .cf-document-stack p { margin:0; color:#6b6254; }
.theme-casefile .cf-languages { grid-column:9/-1; background:#d2d8d3; }
.theme-casefile .cf-languages>header { display:block; }
.theme-casefile .cf-languages>header h2 { margin-top:14px; font-size:clamp(38px,4vw,64px); line-height:.9; text-align:left; overflow-wrap:normal; word-break:normal; }
.theme-casefile .cf-language-codes { display:grid; gap:16px; }
.theme-casefile .cf-language-codes article { padding:18px; border:2px solid var(--cf-blue); background:rgba(255,255,255,.36); }
.theme-casefile .cf-language-codes article>span { font:900 24px/1 Oswald,sans-serif; text-transform:uppercase; }
.theme-casefile .cf-language-codes article div { display:flex; gap:5px; margin:13px 0; }
.theme-casefile .cf-language-codes article div i { width:16px; height:5px; background:rgba(37,62,72,.18); }
.theme-casefile .cf-language-codes article div i.is-on { background:var(--cf-blue); }
.theme-casefile .cf-language-codes small { color:var(--cf-blue); font:800 10px/1 "Courier New",monospace; }
.theme-casefile .cf-contact { grid-column:1/-1; background:#e2d7bd; }
.theme-casefile .cf-contact-grid { display:grid; grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr); gap:clamp(34px,6vw,90px); }
.theme-casefile .cf-status { display:inline-flex; min-height:38px; align-items:center; padding:0 15px; background:var(--cf-red); color:#fff; font:800 10px/1 "Courier New",monospace; letter-spacing:.08em; text-transform:uppercase; }
.theme-casefile .cf-contact h3 { max-width:14ch; margin:24px 0 15px; font:900 clamp(36px,4vw,64px)/.95 Oswald,sans-serif; }
.theme-casefile .cf-contact-links { display:grid; gap:10px; margin-top:24px; }
.theme-casefile .cf-contact-links>a,.theme-casefile .cf-contact-links>span { display:flex; min-height:44px; align-items:center; gap:12px; color:inherit; text-decoration:none; overflow-wrap:anywhere; }
.theme-casefile .cf-contact-links i { display:grid; width:44px; height:44px; flex:0 0 44px; place-items:center; border:1px solid var(--cf-ink); }
.theme-casefile .cf-socials { display:flex; flex-wrap:wrap; gap:8px; margin-top:20px; }
.theme-casefile .cf-socials a { display:grid; width:44px; height:44px; place-items:center; background:var(--cf-ink); color:#fff; text-decoration:none; }
.theme-casefile .cf-message-form { position:relative; padding:28px; border:2px solid var(--cf-ink); background:#f2eee4; box-shadow:7px 8px 0 rgba(36,29,20,.24); }
.theme-casefile .cf-message-form>p:first-child { font:800 10px/1 "Courier New",monospace; letter-spacing:.1em; }
.theme-casefile .cf-message-form label>span { color:var(--cf-red); font:800 10px/1 "Courier New",monospace; text-transform:uppercase; }
.theme-casefile .cf-message-form input,.theme-casefile .cf-message-form textarea { border:0; border-bottom:2px solid var(--cf-ink); border-radius:0; background:transparent; }
.theme-casefile .cf-message-form button { min-height:48px; border:0; border-radius:0; background:var(--cf-ink); color:#fff; }
.theme-casefile :is(a,button,input,textarea):focus-visible { outline:3px solid var(--accent); outline-offset:4px; }
.theme-casefile :is(a,button):active { opacity:.72; }

@media(max-width:1050px) {
  .theme-casefile .cf-hero { grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr); }
  .theme-casefile .cf-summary,.theme-casefile .cf-experience,.theme-casefile .cf-projects,.theme-casefile .cf-education,.theme-casefile .cf-skills,.theme-casefile .cf-certificates,.theme-casefile .cf-languages,.theme-casefile .cf-contact { grid-column:1/-1; }
  .theme-casefile .cf-evidence-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:720px) {
  .theme-casefile .casefile-page { overflow-x:hidden; }
  .theme-casefile .cf-casebar { grid-template-columns:1fr auto; min-height:58px; padding:7px 12px; }
  .theme-casefile .cf-casebar nav { position:fixed; z-index:51; right:8px; bottom:8px; left:8px; justify-content:flex-start; padding:6px; border:1px solid #5b584f; background:rgba(22,21,18,.96); }
  .theme-casefile .cf-casebar nav a { flex:0 0 auto; }
  .theme-casefile .cf-download { min-width:44px; justify-content:center; padding:0; font-size:0; }
  .theme-casefile .cf-download i { font-size:14px; }
  .theme-casefile .cf-string-map { display:none; }
  .theme-casefile .cf-board { display:block; width:100%; padding:96px 16px 92px; }
  .theme-casefile .cf-hero { display:grid; grid-template-columns:1fr; gap:70px; min-height:auto; margin-bottom:70px; }
  .theme-casefile .cf-polaroid { width:min(330px,88%); }
  .theme-casefile .cf-folder { padding:45px 26px 38px; }
  .theme-casefile .cf-folder h1 { font-size:clamp(60px,21vw,90px); }
  .theme-casefile .cf-card { margin-bottom:56px; padding:42px 24px 32px; transform:none!important; }
  .theme-casefile .cf-card>header { display:block; }
  .theme-casefile .cf-card>header h2 { margin-top:12px; font-size:clamp(44px,16vw,70px); text-align:left; }
  .theme-casefile .cf-summary-grid,.theme-casefile .cf-contact-grid { grid-template-columns:1fr; gap:34px; }
  .theme-casefile .cf-approved { position:relative; right:auto; bottom:auto; display:inline-block; margin-top:25px; }
  .theme-casefile .cf-logbook article { grid-template-columns:44px minmax(0,1fr); gap:14px; }
  .theme-casefile .cf-log-date { grid-column:2; grid-row:1; align-self:center; }
  .theme-casefile .cf-logbook article>div:last-child { grid-column:1/-1; }
  .theme-casefile .cf-evidence-grid,.theme-casefile .cf-sticky-wall { grid-template-columns:1fr; }
  .theme-casefile .cf-evidence-grid article { transform:none!important; }
  .theme-casefile .cf-records article { grid-template-columns:50px minmax(0,1fr); padding:15px; }
  .theme-casefile .cf-records article>i { width:46px; height:46px; }
  .theme-casefile .pc-form-row { grid-template-columns:1fr; }
}
@media(prefers-reduced-motion:reduce) { .theme-casefile .cf-card,.theme-casefile .cf-polaroid { transform:none!important; } }
.theme-casefile.motion-kapali .cf-card,.theme-casefile.motion-kapali .cf-polaroid { transform:none!important; }
.theme-casefile.design-card-preview .cf-casebar { position:absolute; }
