:root{color-scheme:dark;--ink:#eff8f6;--muted:#a4b5bd;--line:rgba(222,241,236,.2);--cyan:#9ce9d4;--navy:#101c2d;--deep:#0c1625}*{box-sizing:border-box}html{background:var(--navy)}body{min-width:320px;margin:0;color:var(--ink);background:radial-gradient(circle at 53% 44%,#18324a 0,var(--navy) 38rem,var(--deep) 100%);font-family:Manrope,system-ui,sans-serif}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.16;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E")}.skip-link{position:fixed;z-index:10;top:12px;left:12px;padding:9px 12px;transform:translateY(-160%);color:var(--navy);border-radius:4px;background:var(--cyan);font-size:.78rem;font-weight:700;text-decoration:none;transition:transform .16s ease}.skip-link:focus-visible{transform:translateY(0)}.app-shell{min-height:100dvh;display:grid;grid-template-rows:auto 1fr auto;overflow:hidden;padding:28px max(clamp(22px,5vw,76px),env(safe-area-inset-right)) 24px max(clamp(22px,5vw,76px),env(safe-area-inset-left))}header,footer{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between}.brand{color:inherit;font-size:1.02rem;font-weight:800;letter-spacing:.16em;text-decoration:none}.brand span{color:var(--cyan)}.status,footer{color:var(--muted);font:500 .68rem/1.4 "DM Mono",monospace;letter-spacing:.08em;text-transform:uppercase}.status i{display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:#78919c}.playing .status i{background:var(--cyan);box-shadow:0 0 12px var(--cyan)}.workspace{position:relative;display:grid;grid-template-columns:1fr minmax(280px,440px) 1fr;align-items:center;gap:4vw;width:100%;max-width:1440px;margin:auto}.intro,.control-panel{z-index:1;align-self:center}.eyebrow{margin:0 0 17px;color:var(--cyan);font:500 .68rem "DM Mono",monospace;letter-spacing:.15em}.intro h1{max-width:7em;margin:0;font-size:clamp(2.65rem,5vw,5rem);line-height:1.08;letter-spacing:-.065em;text-wrap:balance}.description{max-width:290px;margin:28px 0 0;color:#b8c5cc;font-size:.84rem;line-height:1.9}.sound-core{position:relative;display:grid;width:min(38vw,480px);aspect-ratio:1;justify-self:center;place-items:center}.sound-core:before{content:"";position:absolute;inset:27%;border-radius:50%;background:radial-gradient(circle,rgba(156,233,212,.16),rgba(156,233,212,0) 68%);filter:blur(10px)}.orbit{position:absolute;inset:3%;border:1px solid var(--line);border-radius:50%;animation:rotate 22s linear infinite}.orbit:after{content:"";position:absolute;top:10%;left:17%;width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 14px 4px rgba(156,233,212,.4)}.orbit-two{inset:16%;border-style:dashed;border-color:rgba(156,233,212,.25);animation-direction:reverse;animation-duration:16s}.orbit-two:after{top:auto;right:28%;bottom:3%;left:auto;width:4px;height:4px}.frequency-readout{z-index:1;text-align:center}.readout-label{display:block;color:var(--muted);font:500 .6rem "DM Mono",monospace;letter-spacing:.13em}.frequency-readout output{display:block;margin-top:8px;font-size:clamp(2.6rem,5vw,4.7rem);font-weight:600;letter-spacing:-.07em;font-variant-numeric:tabular-nums}.frequency-readout small{color:var(--cyan);font-size:.23em;letter-spacing:0}.frequency-tone{color:var(--cyan);font:500 .62rem "DM Mono",monospace;letter-spacing:.13em;text-transform:uppercase}.play-button{position:absolute;z-index:2;bottom:9%;left:50%;display:flex;gap:9px;align-items:center;padding:10px 16px;transform:translateX(-50%);color:#12303a;border:0;border-radius:999px;background:var(--cyan);font:700 .7rem Manrope,sans-serif;cursor:pointer;transition:transform .2s,box-shadow .2s}.play-button:hover{transform:translateX(-50%) translateY(-2px);box-shadow:0 8px 24px rgba(156,233,212,.28)}.play-icon{width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:7px solid currentColor}.playing .play-icon{width:8px;height:10px;border:0;border-right:3px solid currentColor;border-left:3px solid currentColor}.playing .button-text{font-size:0}.playing .button-text:after{content:"停止する";font-size:.7rem}.control-panel{padding-left:clamp(18px,3vw,46px);border-left:1px solid var(--line)}.control-heading,.range-label{display:flex;justify-content:space-between;font-size:.72rem}.control-heading{padding-bottom:26px;border-bottom:1px solid var(--line);color:var(--muted)}.control-heading span:last-child{color:var(--cyan)}.range-label{margin-top:29px}.range-label strong{color:var(--cyan);font:500 .75rem "DM Mono",monospace;font-variant-numeric:tabular-nums}input[type=range]{width:100%;height:2px;margin:16px 0 0;appearance:none;-webkit-appearance:none;background:linear-gradient(90deg,var(--cyan) var(--fill,8%),rgba(234,244,242,.22) var(--fill,8%))}.volume-control input{margin:9px 0 0}input[type=range]::-webkit-slider-thumb{width:12px;height:12px;appearance:none;-webkit-appearance:none;border:2px solid var(--navy);border-radius:50%;background:var(--cyan);box-shadow:0 0 0 1px var(--cyan);cursor:pointer}input[type=range]::-moz-range-thumb{width:10px;height:10px;border:2px solid var(--navy);border-radius:50%;background:var(--cyan);box-shadow:0 0 0 1px var(--cyan);cursor:pointer}.range-ends{display:flex;justify-content:space-between;color:#71838f;font:500 .58rem "DM Mono",monospace}.controls-row{display:grid;grid-template-columns:105px 1fr;gap:26px;align-items:end;margin-top:31px}.number-control,.volume-control{color:var(--muted);font-size:.63rem}.number-control input{display:block;width:100%;margin-top:9px;padding:7px 0;color:var(--ink);border:0;border-bottom:1px solid var(--line);background:transparent;font:500 .78rem "DM Mono",monospace}.volume-control{position:relative}.volume-control span{position:absolute;top:0;right:0;color:var(--cyan);font:.62rem "DM Mono",monospace;font-variant-numeric:tabular-nums}.noise-types{display:flex;gap:7px;margin:31px 0 0;padding:0;border:0}.noise-types legend{width:100%;margin-bottom:10px;color:var(--muted);font-size:.63rem}.noise-types button{padding:7px 9px;color:var(--muted);border:1px solid var(--line);border-radius:2px;background:transparent;font:.6rem "DM Mono",monospace;cursor:pointer;transition:color .16s,border-color .16s,background-color .16s}.noise-types button:hover,.noise-types button.active{color:var(--navy);border-color:var(--cyan);background:var(--cyan)}.ad-area{margin-top:29px;padding-top:14px;border-top:1px solid var(--line)}.ad-label{display:block;margin-bottom:7px;color:#6f828d;font:500 .52rem "DM Mono",monospace;letter-spacing:.12em}.ad-mount,.adsbygoogle{min-height:42px}.ad-placeholder{margin:0;color:#81929b;font-size:.61rem;line-height:1.55}footer{margin-top:20px;padding-top:18px;border-top:1px solid var(--line);font-size:.56rem}button,input,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:focus-visible,input:focus-visible,a:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}input[type=range]:focus-visible{outline-offset:7px}@keyframes rotate{to{transform:rotate(360deg)}}@media(max-width:800px){.app-shell{padding:22px}.workspace{grid-template-columns:1fr;gap:0;padding:55px 0 36px}.intro{text-align:center}.description{margin:18px auto 0}.sound-core{width:min(80vw,420px);margin:38px auto 26px}.control-panel{width:min(100%,440px);justify-self:center;padding:25px 0 0;border-top:1px solid var(--line);border-left:0}.frequency-readout output{font-size:3.6rem}footer span:last-child{display:none}}@media(max-width:390px){.sound-core{width:88vw}.workspace{padding-top:40px}.noise-types button{padding-inline:7px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
.preset-section,.theme-section{margin-top:27px;padding-top:14px;border-top:1px solid var(--line)}.section-label{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.section-label h2{margin:0;color:var(--muted);font:400 .63rem "DM Mono",monospace}.section-label span{color:var(--cyan);font:500 .58rem "DM Mono",monospace;letter-spacing:.08em;text-transform:uppercase}.preset-list{display:flex;flex-wrap:wrap;gap:6px}.preset-list button{padding:7px 8px;color:var(--muted);border:1px solid var(--line);border-radius:2px;background:transparent;font:.57rem "DM Mono",monospace;cursor:pointer;transition:color .16s,border-color .16s,background-color .16s}.preset-list button:hover,.preset-list button.active{color:var(--navy);border-color:var(--cyan);background:var(--cyan)}.theme-list{display:grid;grid-template-columns:repeat(10,1fr);gap:6px}.theme-swatch{aspect-ratio:1;border:1px solid rgba(239,248,246,.28);border-radius:50%;background:var(--swatch);cursor:pointer;transition:transform .16s,border-color .16s}.theme-swatch:hover{transform:scale(1.12)}.theme-swatch.active{border:2px solid var(--ink);box-shadow:0 0 0 2px var(--cyan)}[data-theme=tidal]{--swatch:#9ce9d4}[data-theme=ember]{--swatch:#ffb278}[data-theme=violet]{--swatch:#c3a6ff}[data-theme=forest]{--swatch:#9bdc89}[data-theme=cobalt]{--swatch:#8fb8ff}[data-theme=rose]{--swatch:#ff9db7}[data-theme=sand]{--swatch:#f0cd8d}[data-theme=ice]{--swatch:#9ee8f1}[data-theme=plum]{--swatch:#db9ce9}[data-theme=graphite]{--swatch:#d2d6df}.save-button{width:100%;margin-top:22px;padding:10px;color:var(--cyan);border:1px solid var(--cyan);border-radius:2px;background:transparent;font:600 .66rem "DM Mono",monospace;letter-spacing:.05em;cursor:pointer;transition:color .16s,background-color .16s}.save-button:hover{color:var(--navy);background:var(--cyan)}.save-status{min-height:1.2em;margin:7px 0 0;color:var(--muted);font:.58rem "DM Mono",monospace;text-align:center}.save-status:not(:empty){color:var(--cyan)}
.app-shell{overflow-x:hidden;overflow-y:visible}@media(max-width:800px){.theme-list{grid-template-columns:repeat(5,1fr);max-width:220px}.theme-swatch{max-width:28px}}
.footer-links{display:flex;gap:18px}.footer-links a,.back-link,.terms-content a{color:inherit;text-decoration:none}.footer-links a:hover,.back-link:hover,.terms-content a:hover{color:var(--cyan)}.terms-page{min-height:100dvh;max-width:920px;margin:auto;padding:28px clamp(22px,5vw,76px) 64px}.back-link{color:var(--muted);font:500 .68rem "DM Mono",monospace;letter-spacing:.06em}.terms-content{max-width:640px;margin:clamp(70px,13vh,140px) 0 0}.terms-content h1{margin:0 0 38px;font-size:clamp(2.7rem,7vw,5rem);letter-spacing:-.065em}.terms-content h2{margin:35px 0 10px;font-size:1rem}.terms-content p{margin:0;color:#b8c5cc;font-size:.86rem;line-height:2}.terms-content h2+p{margin-top:0}.terms-content a{color:var(--cyan);text-decoration:underline;text-underline-offset:3px}@media(max-width:800px){.footer-links{gap:14px}.terms-page{padding-top:22px}}
.intro-detail{max-width:290px;margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}.intro-detail .eyebrow{margin:0 0 8px}.intro-tagline{margin:0;color:var(--ink);font-size:.92rem;font-weight:700;letter-spacing:-.03em}.intro-detail .description{margin:9px 0 0;font-size:.75rem;line-height:1.75}@media(max-width:800px){.intro-detail{margin:20px auto 0}.intro h1{max-width:none}.intro-detail .description{margin-inline:auto}}
.sponsorship-note{width:100%;margin:12px 0 0;padding-top:12px;border-top:1px solid var(--line);color:#71838f;font-size:.54rem;letter-spacing:.04em;text-align:center;text-transform:none}
.brand-group .intro-detail{max-width:420px;margin:7px 0 0;padding:0;border:0}.brand-group .intro-detail .eyebrow{margin:0 0 4px;font-size:.52rem}.brand-group .intro-tagline{font-size:.68rem;font-weight:600}.brand-group .intro-detail .description{max-width:420px;margin:3px 0 0;color:var(--muted);font-size:.58rem;line-height:1.55}.brand-group+.status{align-self:flex-start;margin-top:3px}@media(max-width:800px){.brand-group .intro-detail{max-width:240px}.brand-group .intro-detail .description{max-width:240px}.brand-group+.status{font-size:.58rem}}
.sound-core .play-button{bottom:-2%;min-width:184px;min-height:50px;justify-content:center;padding:14px 22px;border:1px solid rgba(255,255,255,.22);box-shadow:0 12px 30px rgba(156,233,212,.24);font-size:.78rem;letter-spacing:.03em}.sound-core .play-icon{border-top-width:6px;border-bottom-width:6px;border-left-width:9px}.playing .button-text:after{font-size:.78rem}.sound-core .play-button:hover{box-shadow:0 16px 34px rgba(156,233,212,.38)}@media(max-width:800px){.sound-core .play-button{bottom:-3%;min-width:196px;min-height:54px;font-size:.82rem}}
.control-panel>.range-label{margin-top:0}
.workspace{grid-template-columns:minmax(320px,1fr) minmax(280px,440px);max-width:1060px;gap:clamp(34px,7vw,96px)}.workspace .sound-core{width:min(43vw,500px);justify-self:end}@media(max-width:800px){.workspace .sound-core{width:min(80vw,420px);justify-self:center}}

/* Searchable listening guidance beneath the player. */
.app-shell{grid-template-rows:auto 1fr auto auto}
.brand-title{margin:0;font-size:inherit;line-height:1.6}
.brand-title>span{display:block;margin-top:5px;color:var(--muted);font-size:.68rem;font-weight:400}
.listening-guide{position:relative;width:100%;max-width:1060px;margin:48px auto 24px;padding-top:28px;border-top:1px solid var(--line);color:var(--muted);font-size:.84rem;line-height:1.9}
.listening-guide h2{margin:0 0 16px;color:var(--ink);font-size:1.15rem}
.listening-guide h3{margin:26px 0 8px;color:var(--ink);font-size:.95rem}
.listening-guide p{max-width:75ch;margin:10px 0}
.listening-guide ol{padding-left:1.5em}
.listening-guide details{padding:12px 0;border-bottom:1px solid var(--line)}
.listening-guide summary{cursor:pointer;color:var(--ink)}
.listening-guide summary:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}
@media(max-width:800px){.workspace{grid-template-columns:minmax(0,1fr)}.listening-guide{margin-top:12px}.brand-title>span{max-width:240px;font-size:.6rem}}
 .favorites-section{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.favorite-button{width:100%;min-height:40px;padding:9px 12px;color:var(--muted);border:1px solid var(--line);border-radius:6px;background:transparent;font:600 .7rem Manrope,sans-serif;cursor:pointer;transition:color .16s,border-color .16s,background-color .16s}.favorite-button:hover,.favorite-button[aria-pressed=true]{color:var(--navy);border-color:var(--cyan);background:var(--cyan)}.favorites-list{display:grid;gap:6px;margin-top:9px}.favorite-item{display:grid;grid-template-columns:1fr 32px;gap:6px}.favorite-load,.favorite-remove{min-height:34px;color:var(--muted);border:1px solid var(--line);border-radius:5px;background:transparent;cursor:pointer}.favorite-load{padding:6px 9px;text-align:left;overflow:hidden;font:.62rem Manrope,sans-serif;text-overflow:ellipsis;white-space:nowrap}.favorite-load:hover,.favorite-remove:hover{color:var(--ink);border-color:var(--cyan)}.favorite-remove{font-size:1rem}
.background-audio-setting{display:flex;align-items:center;justify-content:space-between;margin-top:18px;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:.7rem}.info-button{display:grid;place-items:center;width:20px;height:20px;padding:0;color:var(--cyan);border:1px solid var(--cyan);border-radius:50%;background:transparent;font:700 .7rem Georgia,serif;cursor:pointer}.info-button:hover{color:var(--navy);background:var(--cyan)}dialog{max-width:min(360px,calc(100vw - 32px));padding:0;border:1px solid var(--line);border-radius:8px;background:var(--navy);color:var(--ink);box-shadow:0 20px 80px rgba(0,0,0,.5)}dialog::backdrop{background:rgba(4,10,18,.72)}dialog form{padding:22px}dialog h2{margin:0 0 12px;font-size:1rem}dialog p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.8}dialog button{width:100%;min-height:40px;margin-top:18px;padding:9px;color:var(--navy);border:0;border-radius:5px;background:var(--cyan);font-weight:700;cursor:pointer}
