*{box-sizing:border-box} :root{--teal:#2b7778;--teal-dark:#205c5d;--teal-pale:#eaf4f3;--line:#a9c8c6;--link:#245f9e;--text:#202122;--muted:#54595d}body{margin:0;background:#f8f9fa;color:var(--text);font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Meiryo,sans-serif}.site-header{background:#fff;border-bottom:4px solid var(--teal);padding:12px max(16px,calc((100% - 1180px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px}.brand>a{display:flex;align-items:center;gap:10px;color:var(--text);font-size:1.35rem;font-weight:700;text-decoration:none}.mark{display:grid;place-items:center;width:38px;height:38px;background:var(--teal);color:#fff;font-family:Georgia,serif;font-size:25px}.brand small{display:block;color:var(--muted);font-size:.76rem;margin-left:48px}.site-header nav{display:flex;flex-wrap:wrap;gap:14px}.site-header nav a,.sidebar a{color:var(--link);text-decoration:none}.site-header nav a:hover,.sidebar a:hover,.content a:hover{text-decoration:underline}.layout{max-width:1440px;margin:20px auto;padding:0 16px;display:grid;grid-template-columns:205px minmax(0,1fr) 235px;gap:18px;align-items:start}.sidebar{background:#fff;border:1px solid var(--line);padding:14px;font-size:.92rem;min-width:0}.sidebar h3{font-size:1rem;border-bottom:1px solid var(--line);padding-bottom:5px;margin:4px 0 8px}.sidebar>a{display:block;padding:3px 0}.sidebar .category-list{padding-left:18px}.category-list{list-style:none;padding-left:18px;margin:5px 0}.category-list li{margin:3px 0}.category-list.depth-0{padding-left:0}.count{font-size:.75rem;color:var(--muted)}.admin-link{border-top:1px solid #ddd;margin-top:14px;padding-top:10px}.content{min-width:0;background:#fff;border:1px solid var(--line);padding:22px 26px;min-height:65vh;overflow-wrap:anywhere}.breadcrumb{font-size:.82rem;color:var(--muted);border-bottom:1px solid #eaecf0;padding-bottom:9px;margin-bottom:18px}.content h1{font-family:Georgia,"Yu Mincho",serif;font-size:1.8rem;font-weight:500;border-bottom:1px solid #a2a9b1;padding-bottom:8px;margin:0 0 18px}.content h2{font-family:Georgia,"Yu Mincho",serif;font-weight:500;border-bottom:1px solid #c8ccd1;padding-bottom:5px;margin-top:28px}.content h3{margin-top:20px}.content a{color:var(--link)}.welcome{background:var(--teal-pale);border-left:4px solid var(--teal);padding:12px 16px}.recent-list,.article-list{padding-left:22px}.recent-list li,.article-list li{padding:7px 0;border-bottom:1px dotted #c8ccd1}.recent-list time{display:block;color:var(--muted);font-size:.82rem}.meta,.muted,.hint{font-size:.83rem;color:var(--muted)}.article-body{overflow-wrap:anywhere}.article-body img{max-width:100%;height:auto}.article-body table{border-collapse:collapse;max-width:100%;display:block;overflow-x:auto}.article-body th,.article-body td{border:1px solid #a2a9b1;padding:5px 9px}.stack{display:flex;flex-direction:column;gap:9px}.stack label{font-weight:600}.stack input,.stack textarea,.stack select,.inline-form input,.inline-form select{font:inherit;border:1px solid #72777d;border-radius:2px;padding:9px;background:#fff;max-width:100%}.stack textarea{width:100%;resize:vertical}.stack button,button{font:inherit;cursor:pointer;border:1px solid var(--teal-dark);background:var(--teal);color:#fff;padding:8px 15px;border-radius:2px;align-self:flex-start}.stack button:hover,button:hover{background:var(--teal-dark)}.stack .danger,.danger{background:#a33;border-color:#822}.narrow{max-width:440px}.notice,.error{padding:10px 13px;margin-bottom:14px;border:1px solid}.notice{background:#eaf6e8;border-color:#8dbb87}.error{background:#fff0f0;border-color:#c88}.qa{border:1px solid #c8ccd1;margin:16px 0;padding:14px}.question{background:#f8f9fa;padding:10px}.answer{padding:10px 2px}.pagination{display:flex;align-items:center;justify-content:center;gap:22px;margin:24px 0}.pagination a{padding:6px 10px;border:1px solid var(--line);text-decoration:none}.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.admin-card{padding:12px;border:1px solid var(--line);background:var(--teal-pale);text-decoration:none}.panel{border:1px solid #c8ccd1;padding:14px;margin:12px 0}.panel summary{cursor:pointer;font-weight:600}.panel form{margin-top:14px}.inline-form{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.inline-form input{flex:1;min-width:180px}.cat-admin-row{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #eaecf0;padding:6px 0}.small{font-size:.8rem;padding:3px 8px}.install{max-width:560px;margin:8vh auto;background:#fff;border:1px solid var(--line);padding:24px}footer{max-width:1180px;margin:0 auto;padding:12px 16px 24px;display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:.78rem}@media(max-width:1050px){.layout{grid-template-columns:190px minmax(0,1fr)}.right-sidebar{grid-column:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.right-sidebar .side-panel{margin:0}}@media(max-width:760px){.site-header{display:block;padding:12px 16px}.site-header nav{margin-top:12px;gap:8px 14px}.layout{display:flex;flex-direction:column;margin:12px auto;gap:12px}.sidebar,.content,.right-sidebar{width:100%}.sidebar{order:2}.content{order:1;padding:17px 15px;min-height:0}.right-sidebar{order:3;grid-column:auto;display:flex;flex-direction:column;gap:12px}.content h1{font-size:1.5rem}.admin-grid{grid-template-columns:1fr}.brand small{margin-left:0}footer{display:block}footer span{display:block}.inline-form>*{width:100%}}.right-sidebar{min-width:0;font-size:.9rem}.side-panel{background:rgba(255,255,255,.95);border:1px solid var(--line);padding:13px;margin-bottom:12px;overflow-wrap:anywhere}.side-panel h3{font-size:1rem;font-weight:500;border-bottom:1px solid var(--line);padding-bottom:6px;margin:0 0 9px}.side-panel ul{padding-left:19px;margin:0}.side-panel li{margin:6px 0}.side-panel a{color:var(--link);text-decoration:none}.side-panel a:hover{text-decoration:underline}.side-panel .meta{font-size:.75rem}
/* Neon ribbon screensaver background */
html{min-height:100%;background:#000}body{position:relative;isolation:isolate;background:transparent;min-height:100vh}#ribbon-canvas{position:fixed;inset:0;z-index:-1;width:100%;height:100%;pointer-events:none;background:#000}.site-header,.sidebar,.content,.install{background:rgba(255,255,255,.95);backdrop-filter:blur(1px)}.site-header{display:block}.brand small{margin-left:48px}.layout{position:relative}.content{background:rgba(255,255,255,.95)}.sidebar{background:rgba(255,255,255,.95)}footer{color:#e8eeee;text-shadow:0 1px 3px #000}@media(max-width:760px){.brand small{margin-left:0}}
body{isolation:isolate}#ribbon-canvas{z-index:0}body>*:not(#ribbon-canvas){position:relative;z-index:1}

/* Layout and stacking correction: reserve exactly the sidebar + main column. */
html,body{min-height:100%;background:#000}
body{position:relative;isolation:isolate;background:transparent;min-height:100vh}
#ribbon-canvas{position:fixed;inset:0;display:block;width:100%;height:100%;z-index:-1;pointer-events:none;background:#000}
.site-header,.sidebar,.content,.install{background:rgba(255,255,255,.95);backdrop-filter:blur(1px)}
.site-header{display:block;position:relative;z-index:1}
.layout{position:relative;z-index:1;display:grid;grid-template-columns:205px minmax(0,1fr);align-items:start;max-width:1180px;margin:20px auto;padding:0 16px;gap:18px}
.sidebar{min-width:0;background:rgba(255,255,255,.95)}
.content{display:block;visibility:visible;opacity:1;position:relative;z-index:1;min-width:0;width:100%;min-height:65vh;background:rgba(255,255,255,.95);color:var(--text)}
footer{position:relative;z-index:1;color:#e8eeee;text-shadow:0 1px 3px #000}
@media(max-width:760px){.layout{display:flex;flex-direction:column;width:100%;margin:12px auto;gap:12px;padding:0 12px}.sidebar,.content{display:block;width:100%;max-width:none}.content{order:1;padding:17px 15px;min-height:0}.sidebar{order:2}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
