:root{--paper:#f8f7f3;--ink:#302d29;--muted:#79756e;--line:#dfdcd4;--orange:#e76134;--soft:#f7e6dc;--max:1200px;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Yu Gothic','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;font-size:14px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input,summary{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--orange);outline-offset:5px}img{display:block;width:100%;height:auto}button{color:inherit}::selection{background:#f1b99e} .skip{position:fixed;top:-70px;left:10px;background:white;padding:12px;z-index:99}.skip:focus{top:10px}.site-header{max-width:var(--max);margin:0 auto;height:110px;display:flex;align-items:center;gap:75px;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center}.brand img{width:39px;height:39px;border-radius:50%}.brand>span{font-family:var(--serif);font-size:39px;font-weight:bold;letter-spacing:-3px}.brand-dot{color:var(--orange)}nav{display:flex;gap:38px}nav>a{font-family:var(--serif);font-size:20px;position:relative}nav>a span{display:block;font:9px sans-serif;color:var(--muted);margin-top:5px;letter-spacing:.08em}nav>a.active:after{position:absolute;content:'';width:5px;height:5px;top:9px;left:-12px;border-radius:50%;background:var(--orange)}.header-note{margin-left:auto;color:var(--muted);font-size:9px;letter-spacing:.12em}main{min-height:65vh}.wrap{max-width:var(--max);margin:auto}.hero{padding:73px 0 58px;position:relative;overflow:hidden}.eyebrow{font-size:10px;letter-spacing:.18em;color:var(--orange);font-weight:bold;text-transform:uppercase;display:flex;gap:13px;align-items:center}.eyebrow:before{content:'';width:25px;height:1px;background:var(--orange)}.hero h1{font:normal clamp(60px,7.5vw,104px)/.98 var(--serif);letter-spacing:-.055em;margin:26px 0 25px;position:relative;z-index:1}.hero h1 em{font-weight:normal;color:var(--orange)}.hero-bottom{display:flex;justify-content:space-between;align-items:end}.hero p{font-size:13px;line-height:2;letter-spacing:.04em;margin:0}.hero-index{font-size:9px;letter-spacing:.14em;color:var(--muted)}.hero-art{position:absolute;width:240px;height:240px;right:45px;top:60px;border-radius:50%;border:1px solid #e7aa8e}.hero-art:before{content:'';position:absolute;inset:22px;border-radius:50%;background:var(--orange)}.hero-art:after{content:'';position:absolute;left:-20px;bottom:-5px;width:196px;height:130px;background:var(--paper);border-radius:50%;transform:rotate(-23deg)}.art-caption{position:absolute;right:15px;top:307px;font:italic 14px var(--serif);color:var(--orange)}.collection-bar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:19px 0;margin-bottom:37px}.tabs{display:flex;gap:10px}.tabs button{border:0;border-radius:22px;padding:9px 18px;background:transparent;font-size:12px;color:var(--muted);transition:.2s}.tabs button[aria-pressed=true]{background:var(--ink);color:white}.tabs button:hover{color:var(--orange)}.tabs button[aria-pressed=true]:hover{color:white}.work-count{color:var(--muted);font:italic 13px var(--serif)}.works-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px;row-gap:55px;padding-bottom:85px}.work{min-width:0}.work[hidden]{display:none}.work-image{display:block;overflow:hidden;aspect-ratio:1.91;background:#ece9e1;position:relative}.work-image img{height:100%;object-fit:cover;transition:transform .5s}.work-image:hover img{transform:scale(1.025)}.image-arrow{position:absolute;bottom:12px;right:12px;border-radius:50%;width:34px;height:34px;background:#faf9f3;color:var(--ink);display:grid;place-items:center;font-size:19px}.work-topline{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.08em;color:var(--muted);margin:19px 0 11px}.work h2{font-size:21px;font-weight:600;letter-spacing:.025em;margin:0 0 11px}.work h2 a:hover{color:var(--orange)}.work-desc{font-size:12px;line-height:1.9;margin:0;min-height:46px}.work-copy{font:italic 17px/1.5 var(--serif);color:#858077;margin:12px 0 16px;letter-spacing:.01em}.noise-word{position:relative;display:inline-block}.noise-word:before,.noise-word:after{content:'';position:absolute;background:var(--orange);opacity:.7;height:1px;pointer-events:none}.noise-word:before{width:9px;right:-4px;top:35%;box-shadow:-7px 8px 0 -0.1px var(--orange)}.noise-word:after{width:5px;left:-2px;bottom:4px;transform:translateX(-2px)}.work-facts{display:flex;gap:9px 20px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:13px;font-size:10px;color:var(--muted)}.work-facts span{white-space:nowrap}.work-facts b{font-weight:normal;color:var(--ink);margin-left:5px}.section-heading{display:flex;align-items:center;gap:20px;margin:65px 0 30px}.section-heading h2{font:normal 40px var(--serif);margin:0}.section-heading span{font-size:11px;color:var(--muted)}.section-heading:after{content:'';height:1px;background:var(--line);flex:1}.about-head{padding:65px 0 30px}.page-title{font:normal clamp(57px,7vw,88px)/1.1 var(--serif);letter-spacing:-.045em;margin:20px 0}.profile{display:grid;grid-template-columns:270px 1fr;gap:85px;align-items:center;max-width:920px;margin:35px auto 80px}.profile>img{border-radius:50%;border:12px solid #efede6}.profile h2{font-size:30px;margin:0 0 20px}.profile p{font-size:15px;line-height:2.2}.profile-links{display:flex;gap:22px;font-size:12px;margin-top:25px}.profile-links a{border-bottom:1px solid var(--orange);padding-bottom:4px}.animal-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:85px}.animal-photo{aspect-ratio:16/10;object-fit:cover}.animal-head{display:flex;justify-content:space-between;align-items:center;margin-top:22px}.animal-head h3{font-size:25px;margin:0}.animal-head span{color:var(--orange);font:italic 17px var(--serif)}.animal-kind{font-size:11px;color:var(--muted);line-height:2;margin:13px 0}.animal-desc{font-size:13px;line-height:1.9}.site-footer{max-width:var(--max);margin:auto;border-top:1px solid var(--line);padding:28px 0 35px;display:flex;align-items:center;gap:30px;color:var(--muted);font-size:9px;letter-spacing:.04em}.footer-logo{font:bold 24px var(--serif);color:var(--orange)}.admin-link{margin-left:auto;font-size:10px}.admin-link:hover{color:var(--orange)}.login-wrap{width:min(420px,calc(100% - 48px));margin:80px auto 100px}.login-wrap h1{font:normal 51px var(--serif);margin:22px 0 8px}.login-sub{font-size:12px;color:var(--muted);margin-bottom:35px}.login-form label{display:block;font-size:11px;letter-spacing:.08em;margin-top:22px}.login-form input{display:block;width:100%;background:transparent;border:0;border-bottom:1px solid #aaa59a;padding:12px 0;border-radius:0;color:var(--ink);font-size:17px}.primary-button{display:block;width:100%;background:var(--ink);color:#fff;border:0;padding:17px 25px;font-size:12px;letter-spacing:.07em;margin-top:30px}.primary-button:hover{background:var(--orange)}.login-help{margin-top:25px;font-size:11px;color:var(--muted)}.login-help summary{cursor:pointer}.memo{font-size:12px;line-height:2.3;color:var(--ink);padding:17px 0}.error{color:#b44423;font-size:12px;min-height:20px}.notebook{max-width:840px;margin:65px auto 90px}.notebook-head{border-bottom:1px solid var(--line);padding-bottom:25px;margin-bottom:25px}.notebook-head h1{font-size:28px;font-weight:500;letter-spacing:.04em;margin:20px 0 12px}.notebook-head p{font-size:12px;color:var(--muted);line-height:1.9}.blog-list{margin-top:35px}.entry-link{display:grid;grid-template-columns:80px 1fr 25px;gap:25px;border-bottom:1px solid var(--line);padding:27px 0;align-items:start}.entry-date{font-size:10px;color:var(--muted);line-height:1.8}.entry-link h2{font-size:18px;font-weight:500;margin:0 0 12px}.entry-link p{color:var(--muted);font-size:12px;line-height:1.9;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.entry-link:hover h2{color:var(--orange)}.back-link{font-size:11px;color:var(--muted);display:inline-block;margin-bottom:30px}.article-title{font-size:29px;font-weight:500;line-height:1.6;letter-spacing:.025em;margin:12px 0 35px}.story-body{font-size:14px;line-height:2.15;overflow-wrap:anywhere}.story-body p{margin:0 0 27px}.article-meta{font-size:10px;color:var(--muted)}.history{border-top:1px solid var(--line);margin-top:45px;padding-top:22px;color:var(--muted);font-size:11px}.history>summary{cursor:pointer}.history-inner{padding-top:20px}.history-item{padding:13px 0;border-bottom:1px solid var(--line)}.history-item summary{cursor:pointer}.history-note{background:#f1ece4;padding:20px 25px;margin-top:15px;color:var(--ink);font-size:13px;line-height:2}.history-note p{margin:0 0 17px}.history-note p:last-child{margin:0}.article-nav{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:25px;margin-top:45px;font-size:12px;gap:20px}.secret-letter{border:1px solid #e5c7ad;background:#fbf6ed;padding:26px 30px;margin-top:40px;font-size:13px}.secret-letter a{color:var(--orange)}body.secret{--paper:#faf6ed;--line:#e4d9c8}.secret .notebook-head h1{font-family:var(--serif);font-size:36px}.secret .eyebrow{color:#b66c47}.promise{max-width:300px;margin:40px auto 0;background:var(--orange);border-radius:3px}.ending{position:fixed;inset:0;background:var(--paper);z-index:100;display:flex;flex-direction:column;justify-content:center;align-items:center;opacity:0;transition:opacity 1s}.ending[hidden]{display:none}.ending.show{opacity:1}.ending p{text-align:center;line-height:2.4;font-size:21px;letter-spacing:.08em;opacity:0;transform:translateY(12px);transition:opacity 1.2s .7s,transform 1.2s .7s}.ending.show p{opacity:1;transform:translateY(0)}.ending>span{color:var(--orange);font-size:23px;margin-top:20px}.load-error{padding:80px 25px;text-align:center;line-height:2}.empty-facts{font-size:10px;color:var(--muted)}
@media(min-width:900px){.work:nth-child(even){padding-top:60px}}@media(max-width:1280px){.site-header,.wrap,.site-footer{margin-left:5%;margin-right:5%}.notebook{padding:0 5%}}@media(max-width:760px){.site-header{height:88px;gap:35px}.brand img{width:32px;height:32px}.brand>span{font-size:34px}nav{gap:25px}nav>a{font-size:18px}.header-note{display:none}.hero{padding-top:49px;padding-bottom:36px}.hero h1{font-size:63px;margin-top:25px;max-width:80%}.hero-art{width:125px;height:125px;top:76px;right:-35px;opacity:.6}.hero-art:before{inset:12px}.hero-art:after{width:115px;height:75px;left:-11px;bottom:-3px}.art-caption{display:none}.hero-bottom{display:block}.hero p{font-size:12px;max-width:85%}.hero-index{display:block;margin-top:22px}.collection-bar{margin-bottom:25px;padding:14px 0}.tabs{gap:2px}.tabs button{font-size:11px;padding:9px 13px}.works-grid{grid-template-columns:1fr;gap:39px;padding-bottom:55px}.work h2{font-size:20px}.work-desc{min-height:0}.work-copy{margin-top:9px}.work-topline{margin-top:15px}.work-facts{gap:9px 16px}.profile{grid-template-columns:1fr;gap:28px;margin:25px 0 40px}.profile>img{width:160px;margin:auto;border-width:8px}.profile h2{font-size:26px}.profile p{font-size:13px}.animal-grid{grid-template-columns:1fr;gap:35px;margin-bottom:55px}.section-heading{margin-top:45px}.section-heading h2{font-size:32px}.animal-head h3{font-size:23px}.site-footer{flex-wrap:wrap;gap:15px;padding-top:23px}.admin-link{font-size:9px}.notebook{margin-top:40px;padding:0 6%}.notebook-head h1{font-size:25px}.entry-link{grid-template-columns:58px 1fr 15px;gap:12px;padding:22px 0}.entry-link h2{font-size:16px}.entry-date{font-size:9px}.article-title{font-size:25px;margin-bottom:27px}.story-body{font-size:13px;line-height:2.2}.history-note{padding:17px;font-size:12px}.secret-letter{padding:22px}.about-head{padding-top:45px}.ending p{font-size:18px}.work-count{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.ending.show p{transform:none}}

/* ひらがなを中心にした見出しとロゴ */
.brand>span{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:32px;letter-spacing:.03em;font-weight:600}
.footer-logo{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;letter-spacing:.04em}
.site-header nav>a{font-family:inherit;font-size:12px;letter-spacing:.08em}
.site-header nav>a.active:after{top:6px}
.hero h1{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:clamp(52px,6.5vw,84px);line-height:1.4;letter-spacing:.07em;margin:22px 0 27px}
.hero h1 em{font-style:normal}
.art-caption{font-family:inherit;font-style:normal;font-size:10px;letter-spacing:.06em}
.page-title{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:clamp(36px,5.5vw,66px);letter-spacing:.04em;line-height:1.5}
.section-heading h2{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:32px;letter-spacing:.04em}
@media(max-width:760px){.brand>span{font-size:25px}.site-header{gap:25px}.site-header nav{gap:20px}.site-header nav>a{font-size:11px}.hero h1{font-size:clamp(35px,9.5vw,60px);max-width:100%;line-height:1.6;letter-spacing:.04em;position:relative;z-index:1}.hero-art{top:68px;right:-62px;opacity:.25}.page-title{font-size:36px}.section-heading h2{font-size:26px}}

/* 写真の元データは残し、表示窓で生体を中心に寄せる */
.animal-frame{aspect-ratio:4/3;overflow:hidden;background:#e8e4db}
.animal-frame .animal-photo{width:100%;height:100%;aspect-ratio:auto;object-fit:cover}
.animal-uni .animal-photo{transform:scale(1.27);transform-origin:49% 58%;object-position:49% 58%}
.animal-shirasu .animal-photo{transform:scale(1.50);transform-origin:42% 83%;object-position:42% 83%}

/* 丸ゴシック、控えめな見出し、装飾を引いた表紙 */
@font-face{font-family:'Zen Maru Gothic';font-style:normal;font-weight:400;font-display:swap;src:url('./assets/fonts/zen-maru-regular.ttf') format('truetype')}
@font-face{font-family:'Zen Maru Gothic';font-style:normal;font-weight:700;font-display:swap;src:url('./assets/fonts/zen-maru-bold.ttf') format('truetype')}
:root{--rounded:'Zen Maru Gothic','Hiragino Maru Gothic ProN',Meiryo,sans-serif}
body{font-family:var(--rounded)}
.brand>span,.footer-logo,.site-header nav>a,.hero h1,.page-title,.section-heading h2,.notebook-head h1,.secret .notebook-head h1,.login-wrap h1{font-family:var(--rounded)}
.hero{padding-top:54px;padding-bottom:43px}
.hero h1{font-size:clamp(32px,3.5vw,46px);line-height:1.65;letter-spacing:.05em;font-weight:700;margin:20px 0 22px}
.hero-art,.art-caption{display:none}
.brand>span{font-size:28px;font-weight:700;letter-spacing:.01em}
.page-title{font-size:clamp(30px,4vw,46px);font-weight:700}
.section-heading h2{font-size:27px;font-weight:700}
@media(max-width:760px){.hero{padding-top:37px;padding-bottom:30px}.hero h1{font-size:30px;line-height:1.65;margin:18px 0 20px}.brand>span{font-size:25px}.page-title{font-size:30px}.section-heading h2{font-size:25px}}

/* トップの大見出しを外して簡潔な導入に */
.hero .hero-bottom{margin-top:24px}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

/* 公開ページ → 私的な作業場所 → うにのノート */
body.workspace{--paper:#eeefed;--line:#dcded9;--muted:#7d827a;background:#eeefed}
body.workspace>.site-header,body.workspace>.site-footer,body.secret>.site-header,body.secret>.site-footer{display:none}
.workspace-top{height:64px;padding:0 35px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;background:#e7e9e4;font-size:12px;letter-spacing:.08em;color:#51584d}
.workspace-top b{font-weight:400;color:#9b9f96;padding:0 14px}.workspace-status{font-size:10px;color:#7b8175}
.workspace-layout{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:245px minmax(0,1fr);min-height:calc(100vh - 64px)}
.workspace-sidebar{padding:38px 23px;border-right:1px solid var(--line)}
.workspace-sidebar>details>summary{font-size:11px;letter-spacing:.1em;list-style:none;color:#777e70;margin-bottom:24px;cursor:pointer}
.workspace-sidebar nav{display:flex;flex-direction:column;gap:5px}
.workspace-sidebar nav a{font-family:var(--rounded);font-size:12px;line-height:1.8;padding:12px 10px;display:flex;gap:12px;border-radius:3px}
.workspace-sidebar nav a span{color:#969e8d;font-size:10px;padding-top:2px}
.workspace-sidebar nav a:hover,.workspace-sidebar nav a.selected{background:#dfe4d9;color:#414e36}
.workspace-links{display:flex;flex-direction:column;gap:17px;border-top:1px solid var(--line);margin-top:30px;padding-top:24px;font-size:10px;color:#7b8175}
.workspace-content{padding:38px 5vw 75px;min-width:0}
.workspace .notebook{background:#fff;max-width:850px;margin:0 auto;padding:42px 48px 50px;border:1px solid #e4e6df;box-shadow:0 3px 15px #2c382408}
.workspace .eyebrow{color:#79836c}.workspace .eyebrow:before{background:#79836c}
.workspace .notebook-head h1{font-size:26px}.workspace .notebook-head{margin-bottom:20px}
.workspace .entry-link:hover h2,.workspace .back-link:hover{color:#5d714d}
.workspace .history-note{background:#f0f2eb}.workspace .history{font-family:Meiryo,sans-serif;font-size:10px}
.reading-order{display:flex;justify-content:space-between;color:#929888;font-size:10px;letter-spacing:.07em;padding-top:8px}
.workspace .blog-list{margin-top:12px}.workspace .entry-link{grid-template-columns:63px 1fr 15px;gap:17px}
body.secret{--paper:#eee6d8;--line:#dcd0bc;background-color:#eee6d8;background-image:radial-gradient(#bcab8c2b .7px,transparent .7px);background-size:7px 7px}
.secret .notebook{max-width:780px;margin:52px auto 80px;padding:48px 55px;background:#fffdf6;border:1px solid #e0d3bc;border-radius:3px 14px 12px 3px;box-shadow:-8px 0 0 #ded1b9,0 12px 35px #5f492e14;position:relative}
.secret .notebook:before{content:'';position:absolute;top:0;left:25px;bottom:0;width:1px;background:#ead3c580;pointer-events:none}
.secret .notebook-head .eyebrow{font-family:var(--rounded);text-transform:none;letter-spacing:.1em}
.secret .notebook-head h1{font-size:29px;font-weight:700}.secret .entry-link{grid-template-columns:33px 1fr 15px;gap:15px}
.secret .secret-letter{border-style:dashed;background:#fcf4e6;border-radius:3px}
.secret .article-title{color:#9a6247}.secret .article-nav{font-size:11px}.secret .ending{background:#fffaf1}
@media(max-width:760px){.workspace-top{height:55px;padding:0 18px;font-size:11px}.workspace-status{font-size:9px}.workspace-layout{display:block;min-height:calc(100vh - 55px)}.workspace-sidebar{padding:17px 5%;border-right:0;border-bottom:1px solid var(--line)}.workspace-sidebar>details>summary{margin:0;list-style:revert}.workspace-sidebar nav{margin-top:15px;gap:0}.workspace-sidebar nav a{padding:8px}.workspace-links{margin-top:14px;padding-top:12px;flex-direction:row;justify-content:space-between;gap:10px}.workspace-content{padding:22px 4% 45px}.workspace .notebook{padding:27px 21px 35px}.workspace .entry-link{grid-template-columns:44px 1fr 12px;gap:10px}.workspace .entry-link h2{font-size:15px}.workspace .story-body{font-size:13px}.secret .notebook{margin:25px 5% 45px;padding:31px 26px 35px;box-shadow:-5px 0 0 #ded1b9,0 8px 22px #5f492e12}.secret .notebook:before{left:12px}.secret .entry-link{grid-template-columns:22px 1fr 12px;gap:10px}.secret .entry-link h2{font-size:16px}.secret .notebook-head h1{font-size:26px}.secret .secret-letter{padding:20px 15px}}

/* 認証成功後、私的な作業場所へ入る短い間 */
.login-loading{position:fixed;inset:0;z-index:90;background:#f8f7f3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;opacity:0;transition:opacity .3s,background-color 1s;cursor:wait}
.login-loading.visible{opacity:1}.login-loading.enter-workspace{background:#eeefed}.login-loading.leaving{opacity:0;pointer-events:none}
.login-loading p{font-family:var(--rounded);font-size:13px;letter-spacing:.12em;margin:0;color:#777b72}
.login-spinner{width:23px;height:23px;border-radius:50%;border:2px solid #dcded7;border-top-color:#8c9780;animation:login-spin 1s linear infinite}
@keyframes login-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.login-spinner{animation:none}}

/* 日常の写真を、本文に添える小さなサイズで */
.diary-photo{width:min(100%,310px);margin:8px 0 30px}
.diary-photo img{width:100%;height:auto;border-radius:3px}
.diary-photo.portrait{width:min(100%,190px)}
@media(max-width:760px){.diary-photo{width:min(100%,265px)}.diary-photo.portrait{width:min(100%,165px)}}

/* 作品選びの読みやすさ */
.work:nth-child(even){padding-top:0}
.work-desc{font-size:14px;line-height:1.95;min-height:55px}
.work-facts{font-size:12px;line-height:1.8;gap:8px 18px}
.work-topline{font-size:11px}
.image-action{position:absolute;bottom:13px;right:13px;display:flex;align-items:center;gap:13px;background:#fffdf8f5;color:var(--ink);padding:9px 14px;border-radius:22px;font-size:12px;box-shadow:0 1px 5px #302d2910}
.image-action>span{font-size:17px;line-height:1}
.work-image:hover .image-action{background:var(--orange);color:#fff}
@media(max-width:760px){.work-desc{font-size:14px;min-height:0}.work-facts{font-size:12px;gap:7px 15px}.work-topline{font-size:10px}.image-action{bottom:10px;right:10px;font-size:12px;padding:8px 12px;gap:10px}}

/* 私的なページの通読と操作をしやすく */
.animal-kind{font-size:12px;color:#68635c;line-height:2}
.history>summary,.history-item>summary{min-height:44px;padding:12px 10px;line-height:20px;font-size:12px;cursor:pointer;border-radius:3px}
.history>summary:hover,.history-item>summary:hover{background:#e9ede3}
.history>summary:focus-visible,.history-item>summary:focus-visible{outline:2px solid #7b8b6d;outline-offset:2px}
.workspace .history{font-size:12px;color:#656e5c}
.history-inner{padding-top:8px}.history-item{padding:4px 0}
.history-inner>.history-item:not(details){padding:14px 10px}
@media(max-width:760px){.story-body,.workspace .story-body{font-size:15px;line-height:2.05}.history-note{font-size:14px;line-height:2}.notebook-head p,.entry-link p{font-size:13px}.animal-kind{font-size:13px}.profile p{font-size:14px}.animal-desc{font-size:14px}}

/* うにの配色のまま、制作日誌と同じ二列レイアウトへ */
.secret .workspace-top{background:#e8decc;border-color:#dcd0bc;color:#88684f}
.secret .workspace-status{color:#997c60}
.secret .workspace-sidebar{border-color:#dcd0bc}
.secret .workspace-sidebar>details>summary,.secret .workspace-links{color:#96795c}
.secret .workspace-sidebar nav a span{color:#ad9477}
.secret .workspace-sidebar nav a:hover,.secret .workspace-sidebar nav a.selected{background:#e7dac3;color:#81583c}
.secret .workspace-content>.notebook{max-width:850px;margin:0 auto;padding:42px 48px 50px;border-radius:3px;box-shadow:0 3px 15px #5f492e0a}
.secret .workspace-content>.notebook:before{display:none}
.secret .entry-link{grid-template-columns:63px 1fr 15px;gap:17px}
@media(max-width:760px){.secret .workspace-content>.notebook{margin:0;padding:27px 21px 35px;box-shadow:0 3px 15px #5f492e0a}.secret .entry-link{grid-template-columns:44px 1fr 12px;gap:10px}}
/* 記事ナビに通常ヘッダーのnav書体を継承させない */
.article-nav>a{font-family:var(--rounded);font-size:12px;line-height:1.8;letter-spacing:.02em}
@media(max-width:760px){.article-nav>a{font-size:12px}}
/* ふたりの気配が残る、爬虫類の日記 */
body.workspace{background-color:#eff1e9;background-image:url('./assets/decor/footprints.svg'),radial-gradient(#b4bda52b .8px,transparent .8px);background-size:440px 460px,16px 16px}
.workspace .workspace-top{background:#e6ebdc;border-bottom-color:#d7dfcb}
.workspace .workspace-sidebar{background:#edf0e5bf;border-right-color:#d7dfcb}
.workspace .workspace-content>.notebook{border-radius:5px 16px 10px 5px;border-color:#dde3d1;box-shadow:0 5px 0 #e0e5d6,0 10px 26px #42522c09}
.workspace .workspace-sidebar nav a.selected{background:#dce6ca}
.workspace .notebook-head{position:relative}.workspace .notebook-head:after{content:'';position:absolute;right:0;top:0;width:45px;height:45px;background:url('./assets/decor/footprints.svg') -21px -48px/310px auto no-repeat;opacity:.8;pointer-events:none}
body.secret{background-color:#fff0d8;background-image:url('./assets/decor/uni-spots.svg'),radial-gradient(#e9ad5c25 1px,transparent 1px);background-size:440px 460px,18px 18px;--line:#ebd6b6}
.secret .workspace-top{background:#ffe1b5;border-bottom-color:#efc892;color:#9a5d27;position:relative;padding-right:105px}
.secret .workspace-status{color:#b17b41}
.secret .workspace-sidebar{background:#fff1d7bf;border-color:#efdbb9}
.secret .workspace-content>.notebook{background:#fffdf6;border:1px solid #eed2a5;border-radius:7px 18px 13px 7px;box-shadow:0 5px 0 #f2dfbf,0 12px 30px #a1692610}
.secret .workspace-sidebar nav a{border-radius:15px 8px 13px 7px}
.secret .workspace-sidebar nav a:hover,.secret .workspace-sidebar nav a.selected{background:#ffd9a5;color:#9d5628}
.secret .workspace-sidebar nav a span{display:grid;place-items:center;flex-shrink:0;background:#fff7e8;border:1px solid #eccb93;border-radius:50%;width:23px;height:23px;padding:0;color:#b56d32;line-height:1;font-weight:700}
.secret .workspace-links{border-top-style:dashed;border-color:#e4c89c}
.secret .article-title,.secret .notebook-head h1{color:#d7752e;font-weight:700}
.secret .eyebrow{color:#dc8b49}.secret .eyebrow:before{background:#edab68}
.secret .secret-letter{background:#fff1d6;border-color:#eab46d;border-width:1px;transform:rotate(-.5deg);border-radius:9px}
.secret .secret-letter a{color:#ce702e}
.toolbar-gecko{position:absolute;right:32px;bottom:0;width:52px;height:57px;object-fit:contain;object-position:center bottom;pointer-events:none}
.sidebar-pet{margin:36px auto 10px;text-align:center;max-width:158px;pointer-events:none}
.sidebar-pet img{max-height:166px;object-fit:contain;filter:drop-shadow(0 3px 0 #fff7e9)}
.sidebar-pet>span{display:block;font-size:11px;color:#b67e47;letter-spacing:.03em;margin-top:13px}
.secret .entry-date{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#ffecd0;color:#ca8440;border:1px solid #f3dbb6;font-size:10px}
.diary-photo{position:relative;padding:7px;background:#fffef8;border:1px solid #e4e1d6;box-shadow:0 3px 8px #60523c10;border-radius:2px;transform:rotate(-.7deg);margin-top:22px;margin-bottom:35px}
.diary-photo:before{content:'';position:absolute;top:-9px;left:35%;width:60px;height:20px;background:#c9d8ab9c;transform:rotate(3deg);z-index:1}
.secret .diary-photo:before{background:#f1bb759c}
.secret .promise{border-radius:24px 13px 24px 13px;background:#e78339;box-shadow:0 4px 0 #d6a06b33}
.secret .ending{background:#fff7e6}
@media(max-width:760px){.workspace .workspace-content>.notebook,.secret .workspace-content>.notebook{border-radius:5px 12px 9px 5px}.secret .workspace-sidebar{border-bottom-color:#edcd9e}.secret .workspace-top{padding-right:80px}.toolbar-gecko{right:18px;width:43px;height:48px}.sidebar-pet{display:none}.secret .workspace-sidebar nav a span{width:21px;height:21px}.diary-photo:before{height:16px;top:-7px;width:49px}.secret .notebook-head h1{font-size:26px}.secret .workspace-content{padding-top:22px}}

/* 参考画像由来の生成マスコットは取り下げ */
.toolbar-gecko,.sidebar-pet{display:none!important}
.secret .workspace-top{padding-right:35px}
@media(max-width:760px){.secret .workspace-top{padding-right:18px}}

/* 採用済みの単色SVGシルエット。提供画像や生成画像は使わない */
.pet-silhouette{display:inline-block;width:82px;height:59px;background:currentColor;mask-repeat:no-repeat;mask-position:center;mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain;pointer-events:none}
.uni-shape{color:#db8b48;mask-image:url('./assets/decor/uni-silhouette.svg');-webkit-mask-image:url('./assets/decor/uni-silhouette.svg')}
.shirasu-shape{color:#99a87a;mask-image:url('./assets/decor/shirasu-silhouette.svg');-webkit-mask-image:url('./assets/decor/shirasu-silhouette.svg')}
.diary-silhouettes{display:flex;align-items:center;justify-content:center;gap:8px;margin:30px auto 5px;pointer-events:none}
.workspace .diary-silhouettes{opacity:.4}
.workspace .diary-silhouettes .pet-silhouette{width:70px;height:50px;color:#96a17e}
.secret .diary-silhouettes{justify-content:flex-start;padding-left:12px}
.secret .diary-silhouettes .pet-silhouette{width:102px;height:73px;opacity:.85;transform:rotate(-10deg)}
.secret .workspace-top{position:relative;padding-right:115px}
.top-silhouette{position:absolute;right:27px;bottom:6px;width:68px;height:48px;opacity:.85}
@media(max-width:760px){.diary-silhouettes{display:none}.secret .workspace-top{padding-right:80px}.top-silhouette{right:15px;bottom:5px;width:51px;height:38px}}

/* 記事の現在地と読み進める導線 */
.toc-current{display:none}
.article-nav{align-items:stretch;gap:12px}
.article-nav>a{display:flex;align-items:center;min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:7px;background:#f7f8f2;line-height:1.8;font-family:var(--rounded);font-size:12px;max-width:65%}
.article-nav>a:last-child{margin-left:auto;text-align:right;justify-content:flex-end}
.article-nav>a:hover{background:#e9efde;border-color:#b5c49e}
.secret .article-nav>a{background:#fff3dc;border-color:#eed3aa}
.secret .article-nav>a:hover{background:#ffe5bc;border-color:#dca365}
.workspace-content article.notebook .article-title{margin-bottom:32px}
.workspace-content article.notebook>.story-body>p:last-child{margin-bottom:0}
.workspace-content article.notebook>.story-body>.diary-photo:last-child{margin-bottom:0}
.workspace-content article.notebook>.history{margin-top:36px}
.workspace-content article.notebook>.article-nav{margin-top:36px;padding-top:22px}
@media(max-width:760px){.workspace-sidebar>details>summary{min-height:36px;line-height:1.8;padding:7px 0}.toc-current{display:inline;margin-left:12px;color:#626c59;font-size:12px;letter-spacing:0;overflow-wrap:anywhere}.toc-current:before{content:'｜';margin-right:8px;color:#acb29f}.secret .toc-current{color:#a56d36}.secret .toc-current:before{color:#d9b582}.workspace-content article.notebook .article-title{margin-bottom:28px}.article-nav>a{font-size:12px;padding:10px 11px}.workspace-content article.notebook>.article-nav{margin-top:32px}.workspace-content article.notebook>.history{margin-top:32px}}

/* 入力内容を変えずにパスワードの表示だけ切り替える */
.password-field{display:flex;align-items:center;border-bottom:1px solid #aaa59a;gap:10px}
.login-form .password-field input{min-width:0;flex:1;border-bottom:0}
.password-toggle{flex-shrink:0;min-height:44px;padding:10px 8px;background:transparent;border:0;color:var(--muted);font-size:12px;white-space:nowrap}
.password-toggle:hover{color:var(--orange)}

/* 閲覧側だけで切り替える並び順 */
.collection-tools{display:flex;align-items:center;gap:20px}
.work-sort-label select{font-family:var(--rounded);font-size:12px;color:var(--ink);background:transparent;border:1px solid var(--line);border-radius:6px;min-height:40px;padding:8px 26px 8px 11px;cursor:pointer;max-width:100%}
@media(max-width:760px){.collection-bar{flex-wrap:wrap;gap:13px}.collection-tools{width:100%;justify-content:space-between;gap:12px}.work-sort-label select{font-size:12px;min-height:42px}.collection-tools .work-count{font-size:11px}}

/* 共通ポリシーへの導線と、独立した読み物ページ */
.site-header nav{align-items:center}
.site-header nav>a{white-space:nowrap}
.policy-page{max-width:860px;padding:52px 0 72px}
.policy-page h1{font-size:clamp(25px,4vw,35px);line-height:1.6;margin:18px 0 10px;letter-spacing:.02em}
.policy-updated{color:var(--muted);font-size:12px;margin:0 0 28px}
.policy-lead{font-size:14px;line-height:2.1}
.policy-toc{display:flex;flex-wrap:wrap;gap:10px 20px;padding:22px 0 28px;border-bottom:1px solid var(--line);font-size:12px}
.policy-toc a,.policy-section a{color:#954329;text-decoration:underline;text-underline-offset:4px}
.policy-section{scroll-margin-top:24px;margin-top:34px;font-size:14px;line-height:2.05;overflow-wrap:anywhere}
.policy-section h2{font-size:19px;line-height:1.7;margin:0 0 12px}
.policy-section p{margin:12px 0}
.policy-section ul{padding-left:1.5em;margin:12px 0}
.policy-section li{margin:7px 0}
.policy-note{padding:16px 20px;border-left:3px solid var(--orange);background:#f5eee6}
.policy-back{display:inline-block;margin-top:38px;font-size:13px;text-decoration:underline;text-underline-offset:5px}
@media(min-width:761px) and (max-width:1100px){.site-header{gap:35px}.site-header .header-note{display:none}}
@media(max-width:760px){.site-header{height:auto;min-height:88px;flex-wrap:wrap;gap:12px;padding:20px 0 16px}.site-header nav{width:100%;justify-content:space-between;gap:10px}.site-header nav>a{font-size:11px;letter-spacing:.02em}.site-header nav>a.active:after{display:none}.site-header nav>a.active{color:#954329;text-decoration:underline;text-underline-offset:5px}.policy-page{padding-top:32px;padding-bottom:46px}.policy-section{font-size:13px}.policy-section h2{font-size:18px}.policy-toc{display:grid;grid-template-columns:1fr 1fr;gap:13px}.policy-lead{font-size:13px}}

.policy-toc>a{font-family:var(--rounded);font-size:12px;line-height:1.8;letter-spacing:.02em}

/* ポリシーはヘッダー右端の控えめな文字リンクに */
.site-header>.privacy-link{margin-left:auto;flex-shrink:0;color:#79756e;font-size:10px;line-height:1.8;letter-spacing:.02em;padding:10px 0;white-space:nowrap}
.site-header>.privacy-link:hover,.site-header>.privacy-link[aria-current="page"]{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.site-header .header-note{margin-left:auto}
.site-header .header-note+.privacy-link{margin-left:0}
@media(min-width:761px){.site-header{column-gap:32px}}
@media(max-width:760px){.site-header{column-gap:16px;row-gap:7px}.site-header nav{width:auto;flex:1;justify-content:flex-start;gap:20px}.site-header>.privacy-link{flex-basis:100%;text-align:right;padding:2px 0;font-size:10px}.site-header .header-note+.privacy-link{margin-left:auto}}

/* 共通のご利用案内を右端にまとめる */
.site-header>.header-policies{display:flex;align-items:center;justify-content:flex-end;gap:18px;margin-left:auto;flex-shrink:0}
.site-header .header-note+.header-policies{margin-left:0}
.header-policies a{font-family:var(--rounded);font-size:10px;line-height:1.8;letter-spacing:.02em;padding:10px 0;color:var(--muted);white-space:nowrap}
.header-policies a:hover,.header-policies a[aria-current="page"]{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
@media(min-width:761px) and (max-width:1200px){.site-header .header-note{display:none}}
@media(max-width:760px){.site-header>.header-policies{flex-basis:100%;flex-wrap:wrap;gap:4px 18px;margin-left:auto}.site-header .header-note+.header-policies{margin-left:auto}.header-policies a{padding:2px 0}}

/* プロフィール下の制作方針 */
.creation-note{max-width:920px;margin:-35px auto 55px;padding:25px 0;border-top:1px solid var(--line)}
.creation-note h2{font-size:18px;margin:0 0 14px;font-weight:700}
.creation-note p{font-size:13px;line-height:2;margin:8px 0;overflow-wrap:anywhere}
@media(max-width:760px){.creation-note{margin:0 0 35px;padding-top:22px}.creation-note h2{font-size:17px}.creation-note p{font-size:12px}}
