
/* Daiki Dev R9: non-invasive, opt-in design modes; original WebGL remains intact. */
.daiki-admin-trigger, .daiki-profile-trigger {font:inherit;letter-spacing:inherit;text-transform:uppercase;background:none;border:0;color:inherit;cursor:pointer;opacity:.86}
.daiki-admin-trigger:hover,.daiki-profile-trigger:hover{opacity:1}
html[data-daiki-featured="v2"] body:has(article[data-gl="card"]) .gl canvas,
html[data-daiki-featured="v2"] body:has(article[data-gl="card"]) canvas{filter:grayscale(1)!important;transition:filter .4s ease!important}
html[data-daiki-featured="v2"].daiki-feature-hover body:has(article[data-gl="card"]) canvas{filter:grayscale(0)!important}
html[data-daiki-featured="v2"] article[data-gl="card"]{transition:filter .4s ease}
html[data-daiki-featured="v2"] article[data-gl="card"]:not(:hover) video,
html[data-daiki-featured="v2"] article[data-gl="card"]:not(:hover) img{filter:grayscale(1)!important}
html[data-daiki-featured="v2"] article[data-gl="card"]:hover video,
html[data-daiki-featured="v2"] article[data-gl="card"]:hover img{filter:grayscale(0)!important}
body:has(.daiki-admin-cover){overflow:hidden!important}
/* Black frame removal shared by both Todos variants. */
body:has(.projects article.item) .projects .visual,
body:has(.projects article.item) .projects .visual a,
body:has(.projects article.item) .projects .visual video,
body:has(.projects article.item) .projects .visual img{
  background:transparent!important; border:0!important;outline:0!important;box-shadow:none!important;
}
html[data-daiki-todos="v2"] body:has(.projects article.item){background:#050506!important}
html[data-daiki-todos="v2"] .top {border-color:rgba(255,255,255,.12)!important}
html[data-daiki-todos="v2"] .hero{min-height:min(54svh,600px)!important;padding:clamp(65px,11vh,130px) clamp(22px,5vw,88px) 5vh!important;gap:45px}
html[data-daiki-todos="v2"] .hero h1{font-size:clamp(55px,8.4vw,150px)!important;line-height:.89!important;max-width:12ch}
html[data-daiki-todos="v2"] .hero-bottom{max-width:910px}
html[data-daiki-todos="v2"] .projects {
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  align-items:stretch!important;column-gap:clamp(16px,2.8vw,52px)!important;
  row-gap:clamp(26px,4.3vw,72px)!important;
  padding:clamp(26px,5vw,70px) clamp(22px,5vw,88px) 11vh!important;
}
html[data-daiki-todos="v2"] .projects .item,
html[data-daiki-todos="v2"] .projects .item:nth-child(2n) {
  position:relative;display:flex!important;flex-direction:column!important;gap:0!important;
  min-height:0!important;align-items:stretch!important;
  padding:0!important;opacity:1!important;transform:none!important;
  border:1px solid rgba(255,255,255,.15)!important;border-radius:19px!important;
  background:linear-gradient(150deg,rgba(35,35,39,.75),rgba(7,7,9,.96))!important;
  overflow:hidden!important;isolation:isolate;transition:border-color .38s ease, transform .55s cubic-bezier(.16,1,.3,1), box-shadow .55s ease!important
}
html[data-daiki-todos="v2"] .projects .item:hover {
  border-color:rgba(255,255,255,.52)!important;transform:translateY(-7px)!important;
  box-shadow:0 32px 90px rgba(0,0,0,.40)!important
}
html[data-daiki-todos="v2"] .projects .item .visual,
html[data-daiki-todos="v2"] .projects .item:nth-child(2n) .visual{
  grid-area:auto!important;order:0!important;aspect-ratio:16/9!important;min-height:0!important;
  width:100%!important;overflow:hidden!important;transform:none!important;border-radius:0!important
}
html[data-daiki-todos="v2"] .projects .item .visual:hover{transform:none!important}
html[data-daiki-todos="v2"] .projects .item .visual video{width:100%!important;height:100%!important;object-fit:contain!important}
html[data-daiki-todos="v2"] .projects .item .metadata,
html[data-daiki-todos="v2"] .projects .item:nth-child(2n) .metadata {
  grid-area:auto!important;order:1!important;display:flex!important;gap:13px!important;
  padding:clamp(19px,2.4vw,36px)!important
}
html[data-daiki-todos="v2"] .projects .metadata h2{font-size:clamp(30px,3.3vw,52px)!important;line-height:.98!important;letter-spacing:-.045em!important}
html[data-daiki-todos="v2"] .projects .metadata p{font-size:clamp(13px,1.1vw,16px)!important;line-height:1.55!important;max-width:59ch!important}
html[data-daiki-todos="v2"] .projects .visual:before{content:'';position:absolute;inset:0;pointer-events:none;z-index:3;
background:linear-gradient(180deg,transparent 65%,rgba(0,0,0,.15));}
html[data-daiki-todos="v2"] .projects .item .visual video{filter:grayscale(1)!important;transition:filter .5s ease!important}
html[data-daiki-todos="v2"] .projects .item:is(:hover,:focus-within) .visual video{filter:grayscale(0)!important}
html[data-daiki-todos="v2"] .projects .item .meta-top{font-size:10px;opacity:.72}
html[data-daiki-todos="v2"] .projects .actions{margin-top:auto;padding-top:8px}
html[data-daiki-todos="v2"] .projects .item::after{
 content:'';position:absolute;inset:0;pointer-events:none;opacity:.25;
 background:radial-gradient(450px circle at var(--mx,50%) var(--my,0%),rgba(255,255,255,.10),transparent 65%);
 transition:opacity .3s;mix-blend-mode:screen
}
html[data-daiki-todos="v2"] .projects .item:hover::after{opacity:.9}
@media(max-width:780px){
 html[data-daiki-todos="v2"] .hero{min-height:55svh!important;padding:90px 20px 35px!important}
 html[data-daiki-todos="v2"] .hero h1{font-size:clamp(58px,14vw,100px)!important}
 html[data-daiki-todos="v2"] .projects{grid-template-columns:minmax(0,1fr)!important;gap:22px!important;padding:15px 18px 10vh!important}
 html[data-daiki-todos="v2"] .projects .metadata{padding:22px!important}
 html[data-daiki-todos="v2"] .projects .metadata h2{font-size:clamp(33px,8vw,54px)!important}
}
.daiki-admin-cover{position:fixed;inset:0;z-index:2147483000;background:rgba(0,0,0,.76);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);display:flex;align-items:center;justify-content:center;padding:20px;font-family:Arial,Helvetica,sans-serif;color:#f5f5f5}
.daiki-admin-panel{position:relative;width:min(460px,100%);max-height:min(88vh,750px);overflow-y:auto;border:1px solid #ffffff38;border-radius:22px;background:linear-gradient(155deg,#202024,#080808 75%);box-shadow:0 35px 120px #000b;padding:clamp(22px,5vw,37px)}
.daiki-admin-close{position:absolute;right:18px;top:15px;background:transparent;border:0;color:#fff;font-size:30px;cursor:pointer;line-height:1}
.daiki-admin-kicker{font-size:10px;letter-spacing:.25em;color:#aaa;text-transform:uppercase}
.daiki-admin-panel h2{font-size:clamp(31px,6vw,44px);font-weight:400;letter-spacing:-.055em;line-height:1.05;margin:17px 0 12px}
.daiki-admin-panel p{font-size:13px;line-height:1.7;color:#bdbdbd;margin:8px 0 22px}
.daiki-admin-panel form{display:grid;gap:10px}
.daiki-admin-panel label{display:block;margin:18px 0 9px;color:#ddd;font-size:12px;letter-spacing:.04em}
.daiki-admin-panel input,.daiki-admin-panel select{width:100%;border:1px solid #ffffff4d;background:#101010;color:#f8f8f8;border-radius:11px;padding:14px 15px;font-size:15px;outline-color:#ccc}
.daiki-admin-panel button.daiki-btn{display:block;width:100%;padding:14px;border:1px solid #777;background:#f2f2f2;color:#111;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border-radius:11px;margin-top:15px;cursor:pointer}
.daiki-admin-panel button.daiki-secondary{color:#eee;background:transparent;border:1px solid #ffffff38}
.daiki-admin-panel .daiki-status{display:block;min-height:17px;margin-top:12px;color:#ddd;font-size:12px}
.daiki-admin-panel .daiki-status.error{color:#ffbdbd}
.daiki-admin-panel .daiki-version-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.daiki-admin-panel .daiki-version-row button{border:1px solid #ffffff4c;border-radius:12px;padding:17px;background:#121212;color:#fff;text-align:left;cursor:pointer}
.daiki-admin-panel .daiki-version-row button[aria-pressed="true"]{background:#eee;color:#111}
.daiki-admin-panel .daiki-version-row strong{display:block;font-size:16px}
.daiki-admin-panel .daiki-version-row small{display:block;font-size:11px;margin-top:7px;line-height:1.4}
