@import url('https://fonts.googleapis.com/css2?family=Chakra+Petch:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap');

/* PHOBIA / black, white, electric blue. */
:root{color-scheme:dark;--ink:#f3f3f3;--muted:#999;--line:#292929;--paper:#050505;--lime:#245cff;--blue:#245cff;font-family:'IBM Plex Mono',monospace}
body{background:#050505;color:var(--ink);font-family:'IBM Plex Mono',monospace}
body *,body *:before,body *:after{border-radius:0!important;box-shadow:none!important}
::selection{background:#245cff;color:white}
h1,h2,h3,.brand,.footer-brand,.model-card strong,.product-no-photo strong{font-family:'Chakra Petch',sans-serif!important;font-weight:600;letter-spacing:-.025em}
button,input,select,textarea{font-family:'IBM Plex Mono',monospace}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,#canvas-container:focus-visible,.product-media:focus-visible{outline:2px solid #6d91ff;outline-offset:3px}
input{accent-color:#245cff!important}
.site-header,header,.site-footer,.app-footer{background:#050505;border-color:#292929}
.site-header{border-bottom:2px solid #245cff;padding-top:22px;padding-bottom:22px}
.brand,.site-header .brand,header .brand{color:#fff;font-size:29px;letter-spacing:-1px;font-weight:700}
.brand small{font-family:'IBM Plex Mono',monospace;font-size:9px;letter-spacing:1.5px;color:#929292}
.site-header nav a{color:#aaa;font-size:13px}
.site-header nav a:hover,.site-header nav a[aria-current]{color:#fff}
.site-header nav a[aria-current]:after{background:#245cff;height:3px}
.eyebrow{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:1.4px;color:#a5a5a5}
.intro .eyebrow{border-left:3px solid #245cff;padding-left:12px}
.intro h1{font-size:clamp(36px,4vw,56px);line-height:1.03;text-transform:uppercase;max-width:850px}
.intro h1>span{color:#909090}
.intro>p{font-size:14px;line-height:1.8;color:#a4a4a4;max-width:300px}
.home-main{padding-top:38px}.intro{margin-bottom:34px}
.gallery,.collection,.admin-editor,.library-row,.contact-card,.empty-library,.product-card{background:#090909;border-color:#333}
.gallery{border-top:3px solid #245cff}.gallery-stage,.admin-preview{background:#050505}
.stage-toolbar,.stage-caption,.admin-preview-caption{background:#090909;border-color:#292929;color:#9c9c9c;font-family:'IBM Plex Mono',monospace}
.stage-toolbar i{background:#245cff;width:6px;height:6px}.stage-toolbar{font-size:11px;letter-spacing:.6px}
.collection-heading h2{text-transform:uppercase;font-size:20px}.collection-heading>span{font-family:'IBM Plex Mono',monospace;color:#777}
.model-card{border:1px solid #262626;background:#0a0a0a;padding:12px}
.model-card:hover,.model-card[aria-pressed=true]{background:#101010;border-color:#245cff}
.model-card[aria-pressed=true]{border-left:3px solid #245cff}
.model-card small,.model-card-text>span{color:#969696}.model-card strong{color:#f4f4f4;font-size:18px}
.model-thumb,.library-thumb{background:#080808;border-color:#333}.model-thumb img,.library-thumb{filter:saturate(.8)}
.model-thumb.pending:after{color:#777}.collection-foot{border-color:#292929}.collection-foot p,.line-icon{color:#777}
.muted,.detail-description,.contact-intro>p,.brand-story-strip p,.product-description,.product-intro>p:not(.eyebrow),.support-story>p:not(.eyebrow){color:#aaa}
.detail-description,.product-description,.support-story>p:not(.eyebrow){font-size:16px;line-height:1.9}
.model-detail h2{font-size:32px}.detail-tabs{gap:25px;border-color:#292929}.detail-tabs button{font-size:14px;color:#888}.detail-tabs button[aria-selected=true]{color:#fff;border-color:#245cff}
.detail-specs{color:#888}.detail-specs span+span{border-color:#333}.spec-table>div{border-color:#292929}
.interest-card,.release-card,.support-card,.collab-banner{background:#090909;border:1px solid #333;border-top:3px solid #245cff}
.interest-card .eyebrow,.interest-card .muted,.release-card p,.support-card p,.support-card small,.collab-banner p{color:#aaa}
.interest-card h3,.collab-banner h2,.support-card h2{text-transform:uppercase}
.release-card:hover{background:#111;border-color:#245cff}.release-card h3{font-size:38px}.release-card .eyebrow{color:#999}
.brand-story-strip{gap:50px;border-color:#333}.brand-story-strip h2{font-size:34px;text-transform:uppercase}.brand-story-strip p{font-size:15px}
button,.secondary,.small-button,.header-cta,.slide-controls button{background:#111;color:#eee;border:1px solid #3c3c3c}
button:hover:not(:disabled),.secondary:hover,.small-button:hover,.header-cta:hover{background:#1a1a1a;border-color:#6d91ff;color:#fff}
.primary-link,.primary-button,.primary,.coffee-button,#workspace-publish-button,.rename-part button{background:#245cff;color:#fff;border-color:#245cff}
.primary-link:hover,.primary-button:hover:not(:disabled),.primary:hover:not(:disabled),.coffee-button:hover,#workspace-publish-button:hover{background:#1746d9;color:#fff;border-color:#6d91ff}
.header-cta{font-size:12px!important}.text-link,.library-row a,.support-card .text-link{color:#92adff}
.language-switch{background:#050505;border:1px solid #333;padding:3px}.language-switch button{background:transparent;color:#999}
.language-switch button[aria-pressed=true]{background:#245cff;color:#fff}
.sample-notice,.contact-notice,.contact-model,.preview-chip{background:#111;color:#b7b7b7;border-color:#444}
.contact-notice p,.contact-intro h1 span{color:#aaa}.notice-icon{border-color:#777}.contact-model{border-left-color:#245cff}
.contact-card button,#model-form>input,#model-form>textarea,#product-form input:not([type=file]),#product-form textarea,#product-form select{background:#050505;border-color:#393939;color:#eee}
.contact-card p,.contact-note,.channel-number,.contact-symbol{color:#aaa}.contact-intro h1{text-transform:uppercase;font-weight:600}
.product-intro h1,.support-story h1{text-transform:uppercase;font-weight:600}.product-intro h1 span,.support-story h1 span{color:#929292}
.product-media,.product-no-photo{background:#080808}.product-no-photo{border-right:1px solid #333}.product-no-photo strong{color:#ededed}.product-no-photo small{color:#888}
.product-thumbs{border-color:#292929}.product-thumbs button{background:#090909;border-color:#333}.product-thumbs button[aria-pressed=true]{border-color:#245cff}
.slide-controls button{background:#111;color:#fff;border-color:#444}.slide-caption,.purchase-note{color:#aaa}
.sold-out-badge,.status-badge.draft{background:#111;color:#aaa;border:1px solid #555}.available-badge,.status-badge.published{background:#0c1326;color:#93adff;border:1px solid #245cff}
.sold-out-button{background:#111;color:#999;border-color:#444}.product-price{font-family:'IBM Plex Mono',monospace}
.product-admin-item,.admin-images>div{background:#0b0b0b;border-color:#333}.product-admin-item small{color:#aaa}
.admin-dropzone,.dropzone{background:#080808;border-color:#444}.admin-dropzone.drag-over{background:#0c1326;border-color:#245cff}
.success-message,#product-message,#workspace-message,#part-group-status{color:#92adff}.error-message{color:#ddd;border-left:3px solid #245cff;padding-left:10px}
.quick-publish input{background:#333}.quick-publish input:checked{background:#245cff}.quick-publish input:before{background:#eee}
.site-footer{border-top:1px solid #333}.site-footer p,.site-footer>div{color:#999}.footer-brand{color:#fff}
.coffee-icon{font-size:0;border:1px solid #245cff;width:52px;height:52px;display:grid;place-items:center}.coffee-icon:after{content:'+';font:32px 'IBM Plex Mono',monospace;color:#82a1ff}

/* The viewer keeps model materials separate from interface colors. */
.workspace{background:#080808}.sidebar,.inspector{background:#080808;border-color:#292929}
.sidebar h2,.inspector h2{color:#eee}.file-meta,.range-labels,.app-footer,.viewer-bottom,.field-label{color:#999}
.view-controls,.viewer-toggles,.inspection-tools,.part-tools,.zoom-controls,.selection-info,.viewport-top,.compact-tools,.tools-visibility,.tool-deck{background:#090909f5;border-color:#3a3a3a;color:#eee;backdrop-filter:none}
.embed-mode .tool-deck .tool-panel{color:inherit}.compact-tools{border-top:2px solid #245cff}.compact-tools button{font-size:13px;color:#ccc}.tools-visibility{font-size:12px}
.compact-tools button[aria-expanded=true],.view-controls button.active,.embed-mode .view-controls button.active,.inspection-tools button[aria-pressed=true]{background:#245cff;color:white}
.viewer-toggles label,.inspection-tools h2,.part-tools h2{color:#ddd}.part-tools>summary,.inspection-tools summary{color:#ddd}
.part-row{background:#101010;border-color:#303030}.part-row:hover{background:#1a1a1a}.part-row.selected{background:#0c1326;border-color:#245cff}
.part-row button{color:#eee}.part-appearance,.rename-part,.assembly-settings,.workspace-publish{border-color:#333}
.part-appearance .hint,.part-tools .hint,.inspection-inner .hint,.finish-info,.hint{color:#aaa}
.color-chip[aria-pressed=true]{outline-color:#6d91ff}.color-chip:hover:not(:disabled){border-color:#fff}
.format,.demo-tag,.count,.dropzone .upload-icon{background:#111;color:#aaa;border-color:#444}
.text-button,.text-button:hover,.manage-link{color:#92adff}.workspace-publish input,.workspace-publish textarea,.rename-part input,#explode-axis{background:#050505;border-color:#444;color:#eee}
#preview-theme{background:#111;border-color:#555;color:#fff}#measurement-result{color:#92adff}#measurement-coordinates{color:#aaa}
.notice{background:#101010;color:#ddd;border-color:#245cff}.loading,.gallery-overlay{background:#070707f5;color:#eee}.spinner{border-color:#333;border-top-color:#245cff}
input[type=range]{accent-color:#245cff!important}input[type=range]::-webkit-slider-thumb{background:#245cff!important;border-color:#245cff!important}input[type=range]::-moz-range-thumb{background:#245cff!important;border-color:#245cff!important}
.axis-key .axis-x,.axis-key .axis-y,.axis-key .axis-z{color:#a0a0a0}.axis-key i,.axis-key i:before,.axis-key i:after{background:#555}
.dragging:after{background:#050505ed;border-color:#245cff;color:#eee}
.preview-light .workspace{background:#e9e9e9}.preview-light .compact-tools,.preview-light .tools-visibility,.preview-light .tool-deck,.preview-light .view-controls,.preview-light .viewer-toggles,.preview-light .inspection-tools,.preview-light .part-tools,.preview-light .zoom-controls,.preview-light .selection-info{background:#f5f5f5f5;color:#111;border-color:#999}
.preview-light .compact-tools button{color:#222}.preview-light .compact-tools button[aria-expanded=true],.preview-light .view-controls button.active,.preview-light .inspection-tools button[aria-pressed=true]{background:#245cff;color:#fff}
.preview-light .part-tools summary,.preview-light .inspection-tools summary,.preview-light .text-button,.preview-light #measurement-result{color:#194aca}
.preview-light .part-row{background:#eee}.preview-light .part-row.selected{background:#e0e7ff;border-color:#245cff}.preview-light .part-row button{color:#222}
.preview-light .part-tools .hint,.preview-light .inspection-tools .hint,.preview-light .finish-info,.preview-light .range-labels,.preview-light .field-label{color:#555}
@media(max-width:1050px){.intro{gap:25px}.intro h1{font-size:clamp(34px,4vw,46px)}.intro>p{max-width:240px;font-size:13px}.site-header .brand{font-size:26px}}
@media(max-width:760px){.intro h1{font-size:36px}.intro>p{max-width:none;font-size:14px}.brand-story-strip{gap:25px}.site-header .brand{font-size:26px}.site-header nav a{font-size:13px}.product-intro h1,.support-story h1{font-size:42px;letter-spacing:-1px}.compact-tools button{font-size:12px;padding:8px}.product-no-photo{border-right:0;border-bottom:1px solid #333}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
.story-markers{color:#aaa}.support-story strong{color:#fff}.input-label span{color:#92adff}.axis-key:before,.axis-key:after{background:#555}.embed-mode .view-controls{background:#090909}.preview-light .embed-mode .view-controls{background:#f5f5f5}.preview-light .color-chip[aria-pressed=true]{outline-color:#245cff}.preview-light .part-tools button:not(.color-chip):not(.part-swatch),.preview-light .zoom-controls button,.preview-light .selection-info button,.preview-light #explode-axis{background:#eee;border-color:#aaa;color:#222}.preview-light .part-tools .eyebrow,.preview-light #measurement-coordinates{color:#555}

/* Original PHOBIA YOYO mark, with transparent background. */
.about-main{padding-bottom:72px}.story-hero{display:grid;grid-template-columns:1fr 220px;gap:48px;align-items:center;padding:56px 0;border-bottom:1px solid #303030}.story-hero h1{font-size:clamp(38px,6vw,80px);margin:12px 0;line-height:1.05}.story-slogan{color:#7199ff;font-size:clamp(20px,3vw,36px);font-weight:700;letter-spacing:.04em}.story-logo{width:200px;height:200px;object-fit:contain;border:1px solid #303030;padding:24px;box-sizing:border-box}.story-lead{font-size:clamp(21px,2.2vw,28px);line-height:1.5;color:#f4f4f4}.editorial-story{max-width:760px;padding:32px 0;margin:0 auto}.editorial-story p{font-size:17px;line-height:1.9;color:#c2c2c2;margin:0 0 26px}.editorial-story p:last-child{color:#fff;font-weight:600;border-left:3px solid #245cff;padding-left:20px;margin-top:36px}.story-next{display:grid;grid-template-columns:1fr 1fr;gap:40px;border-top:1px solid #333;padding-top:36px}.story-next p{line-height:1.8;color:#aaa}.story-next h2{font-size:30px}.product-story{scroll-margin-top:30px;border-top:1px solid #333;margin-top:64px;padding-top:44px}.story-section-heading{max-width:760px;margin:auto}.story-section-heading h2{font-size:clamp(30px,4vw,52px);margin:14px 0}.language-switch{flex-shrink:0}.language-switch button{min-width:34px}html[lang=ja] body{font-family:'Chakra Petch','Yu Gothic','Hiragino Kaku Gothic ProN',sans-serif}html[lang=ja] :is(p,button,label,a,h2,h3,small,.eyebrow){letter-spacing:0!important}html[lang=ja] p{line-height:1.9}html[lang=ja] .site-header nav{gap:16px}html[lang=ja] .site-header nav a{font-size:13px}html[lang=ja] .header-cta{font-size:12px}html[lang=ja] .intro>p{max-width:380px}.site-header nav{flex-wrap:wrap}.story-next .primary-link{display:inline-flex}
@media(max-width:1000px){.site-header{flex-wrap:wrap}.site-header nav{order:3;width:100%;justify-content:center}.site-header .language-switch{margin-left:auto}}
@media(max-width:600px){.story-hero{grid-template-columns:1fr;gap:16px;padding:30px 0}.story-logo{width:96px;height:96px;padding:12px;grid-row:1}.story-next{grid-template-columns:1fr;gap:24px}.editorial-story p{font-size:16px;line-height:1.85}.site-header nav{justify-content:flex-start;gap:16px}.story-hero h1{font-size:38px}.product-story{margin-top:40px}.story-slogan{font-size:24px}.site-header .language-switch{margin-left:0}html[lang=ja] .support-story h1,html[lang=ja] .product-intro h1{font-size:32px;line-height:1.4}}
.brand .brand-mark{display:block;width:52px;height:52px;object-fit:contain;flex:0 0 52px}
.footer-brand{display:inline-flex;align-items:center;gap:10px}.footer-brand .brand-mark{width:38px;height:38px;object-fit:contain;flex-shrink:0}
.site-header .brand{min-width:0}.site-header .brand>span{min-width:0}
html[lang=id] .intro h1{font-size:clamp(30px,3.3vw,45px)}
@media(max-width:760px){.brand .brand-mark{width:42px;height:42px;flex-basis:42px}.site-header .brand{gap:8px;font-size:22px}.brand small{letter-spacing:1px}.site-header{gap:14px}html[lang=id] .intro h1{font-size:32px}}
@media(max-width:380px){.site-header .brand{font-size:19px}.site-header .brand small{font-size:8px;letter-spacing:.6px}.brand .brand-mark{width:36px;height:36px;flex-basis:36px}}
