:root{color-scheme:light;--bg: #f4f1ea;--maru-white: #ffffff;--maru-shadow: rgba(60, 50, 40, .12);--maru-glow: rgba(255, 255, 255, .9);--text-main: #4a403a;--text-dim: #786c65;--accent-brown: #8d6e63;--plus-green: #208a50;--minus-red: #c64c3f;--maru-fill: #fef9e7;--maru-shape: 50% 50% 48% 52% / 55% 55% 45% 45%;--focus: rgba(141, 110, 99, .35)}:root[data-theme=dark]{color-scheme:dark;--bg: #1c1a19;--maru-white: #2a2725;--maru-shadow: rgba(0, 0, 0, .4);--maru-glow: rgba(255, 255, 255, .05);--text-main: #d7ccc8;--text-dim: #a79a93;--accent-brown: #c1a59c;--plus-green: #5ed08b;--minus-red: #f07d70;--maru-fill: #4d453d;--focus: rgba(193, 165, 156, .38)}*{box-sizing:border-box}html{min-width:320px;background:var(--bg);color:var(--text-main);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei UI,system-ui,sans-serif;font-size:16px;line-height:1.5}body{min-height:100dvh;margin:0;background:var(--bg);transition:background .4s ease,color .4s ease}a{color:inherit;text-decoration:none}button,input{font:inherit}button{border:0}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:4px}[hidden]{display:none!important}.skip-link{position:absolute;top:12px;left:12px;z-index:20;transform:translateY(-160%);border-radius:999px;background:var(--maru-white);box-shadow:0 8px 16px var(--maru-shadow);padding:8px 12px;font-weight:800}.skip-link:focus{transform:translateY(0)}.app-container{width:min(600px,calc(100% - 32px));margin:0 auto;padding:45px 0 60px}.maru-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:40px}.logo-wrap{position:relative;display:flex;width:90px;height:80px;align-items:flex-end;justify-content:center;color:var(--text-main);cursor:pointer}.maru-logo-base{z-index:10;display:flex;width:80px;height:70px;align-items:center;justify-content:center;border-radius:var(--maru-shape);background:var(--maru-fill);box-shadow:0 8px 15px var(--maru-shadow),inset 0 -4px 6px #0000000d;font-size:1.05rem;font-weight:900}.hat-svg{position:absolute;top:-13px;left:50%;z-index:11;width:95px;filter:drop-shadow(0 4px 4px var(--maru-shadow));pointer-events:none;transform:translate(-50%);transition:transform .2s ease}.logo-wrap:hover{animation:squish-and-bounce-sharp .4s ease-in-out forwards}.logo-wrap:hover .hat-svg{transform:translate(-50%) translateY(2px)}.header-actions{display:flex;align-items:center;gap:12px}.icon-group,.lang-dropdown>summary{background:var(--maru-white);box-shadow:0 4px 12px var(--maru-shadow)}.icon-group{display:flex;gap:4px;border-radius:20px;padding:4px}.icon-btn{display:flex;width:36px;height:36px;align-items:center;justify-content:center;border-radius:16px;background:transparent;color:var(--text-dim);cursor:pointer;transition:background .2s ease,box-shadow .2s ease,color .2s ease}.icon-btn svg{width:18px;height:18px;fill:currentColor}.icon-btn.active,.icon-btn[aria-checked=true]{background:var(--bg);color:var(--accent-brown);box-shadow:inset 0 2px 4px var(--maru-shadow)}.lang-dropdown{position:relative}.lang-dropdown>summary{list-style:none}.lang-dropdown>summary::-webkit-details-marker{display:none}.lang-menu{position:absolute;top:45px;right:0;z-index:100;min-width:118px;border-radius:15px;background:var(--maru-white);box-shadow:0 10px 25px var(--maru-shadow);padding:8px}.lang-opt{display:block;border-radius:10px;padding:8px 12px;color:var(--text-main);font-size:.9rem;font-weight:700}.lang-opt:hover,.lang-opt.active{background:var(--bg);color:var(--accent-brown)}.search-area{margin-bottom:35px}.search-box-wrap{display:flex;width:100%;align-items:center;border:4px solid var(--maru-white);border-radius:100px;background:var(--bg);box-shadow:inset 0 4px 10px var(--maru-shadow);padding:16px 24px}.search-input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--text-main);font-size:1rem;font-weight:700}.search-input::placeholder{color:var(--text-dim);opacity:1}.cat-group{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:40px}.cat-item{display:inline-flex;align-items:center;border-radius:40px 40px 35px 35px;background:var(--maru-white);box-shadow:0 5px 10px var(--maru-shadow);color:var(--text-dim);cursor:pointer;font-size:.85rem;font-weight:800;padding:9px 18px;transition:color .2s ease,transform .2s ease,box-shadow .2s ease}.cat-item:hover{color:var(--text-main);transform:translateY(-2px)}.cat-item.active{background:var(--bg);color:var(--accent-brown);box-shadow:inset 0 3px 6px var(--maru-shadow)}.pick-list{display:flex;flex-direction:column;gap:20px}.pick-card-group{position:relative;display:flex;flex-direction:column}.pick-item{position:relative;z-index:5;display:flex;width:100%;align-items:center;border:1px solid var(--maru-glow);border-radius:28px;background:var(--maru-white);box-shadow:0 10px 20px var(--maru-shadow);color:inherit;padding:22px}.content{min-width:0;flex:1}.title{display:block;overflow:hidden;color:var(--text-main);font-size:1.15rem;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.desc-short{display:block;overflow:hidden;margin-top:2px;color:var(--text-dim);font-size:.85rem;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.inline-tag-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.inline-mini-tag{min-width:0;max-width:100%;overflow:hidden;border:1px solid var(--maru-glow);border-radius:999px;background:var(--bg);box-shadow:inset 0 2px 4px var(--maru-shadow);color:var(--text-dim);font-size:.68rem;font-weight:850;line-height:1;padding:6px 9px;text-overflow:ellipsis;white-space:nowrap}.status-tag{color:var(--accent-brown)}.detail-arrow{margin-left:15px;color:var(--text-dim);font-size:1.5rem;opacity:.35;transition:color .3s ease,opacity .3s ease,transform .3s ease}.maru-drawer{z-index:4;width:100%;max-height:0;margin:0 auto;overflow:hidden;border:1px solid var(--maru-glow);border-top:0;border-radius:0 0 28px 28px;background:var(--maru-white);box-shadow:0 15px 30px var(--maru-shadow);opacity:0;transform:translateY(-28px);transition:max-height .35s ease,opacity .25s ease,transform .35s ease}.drawer-inner{display:flex;flex-direction:column;gap:18px;padding:45px 24px 24px}.drawer-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.detail-page .drawer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.info-cell b{display:block;margin-bottom:2px;color:var(--accent-brown);font-size:.7rem;font-weight:900;text-transform:uppercase}.info-cell p{margin:0;font-size:.8rem;font-weight:700;overflow-wrap:anywhere}.info-cell a:hover,.text-link:hover{color:var(--accent-brown)}.preview-summary{display:-webkit-box;margin:0;overflow:hidden;color:var(--text-main);font-size:.88rem;font-weight:650;line-height:1.6;-webkit-box-orient:vertical;-webkit-line-clamp:3}.pro-con-col{display:flex;flex-direction:column;gap:12px;padding-top:5px}.pro-con-item{display:flex;align-items:center;gap:8px;font-size:.85rem;font-weight:750}.pro-con-item.pro{color:var(--plus-green)}.pro-con-item.con{color:var(--minus-red)}.pc-icon{font-family:sans-serif;font-size:1.3rem;line-height:0}.tag-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:5px;border-top:1px dashed var(--maru-shadow);padding-top:15px}.mini-maru-tag{border:1px solid var(--maru-glow);border-radius:20px 20px 18px 22px;background:var(--maru-white);box-shadow:0 2px 5px var(--maru-shadow);color:var(--text-dim);font-size:.75rem;font-weight:850;padding:7px 16px}.pick-card-group:hover .maru-drawer,.pick-card-group:focus-within .maru-drawer{max-height:520px;opacity:1;transform:translateY(-12px)}.pick-card-group:hover .detail-arrow,.pick-card-group:focus-within .detail-arrow{color:var(--accent-brown);opacity:.85;transform:translate(5px)}.page-head{margin:0 0 30px}.page-head h1{margin:12px 0 8px;color:var(--text-main);font-size:clamp(2rem,8vw,3.4rem);line-height:1;letter-spacing:0}.page-head p{max-width:58ch;margin:0;color:var(--text-dim);font-weight:650}.text-link{color:var(--text-dim);font-size:.9rem;font-weight:850}.detail-page{display:grid;gap:18px}.detail-hero{display:grid;gap:20px;border:1px solid var(--maru-glow);border-radius:30px;background:var(--maru-white);box-shadow:0 10px 20px var(--maru-shadow);padding:24px}.detail-hero-copy{display:flex;align-items:flex-start;gap:16px}.site-logo{width:64px;height:64px;flex:0 0 auto;border-radius:20px 20px 18px 22px;background:var(--bg);box-shadow:inset 0 2px 5px var(--maru-shadow),0 5px 10px var(--maru-shadow);object-fit:contain;padding:12px}.detail-hero h1{margin:0;color:var(--text-main);font-size:clamp(2rem,8vw,3.4rem);line-height:1;letter-spacing:0}.detail-hero p{margin:8px 0 0;color:var(--text-dim);font-weight:700}.detail-hero-link{margin-top:16px}.site-snapshot{aspect-ratio:16 / 10;margin:0;overflow:hidden;border:1px solid var(--maru-glow);border-radius:24px;background:var(--bg);box-shadow:inset 0 3px 8px var(--maru-shadow)}.site-snapshot img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center}.detail-panel{border:1px solid var(--maru-glow);border-radius:28px;background:var(--maru-white);box-shadow:0 10px 20px var(--maru-shadow);padding:24px}.prose-panel h2{margin:18px 0 6px;color:var(--accent-brown);font-size:.82rem;text-transform:uppercase}.prose-panel h2:first-child{margin-top:0}.prose-panel p{margin:0;color:var(--text-main);font-weight:650}.prose-panel p+h2{margin-top:20px}.primary-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:18px;border-radius:999px;background:var(--bg);box-shadow:inset 0 3px 6px var(--maru-shadow);color:var(--accent-brown);font-weight:900;padding:0 18px}.empty-state{border-radius:28px;background:var(--maru-white);box-shadow:0 10px 20px var(--maru-shadow);color:var(--text-dim);font-weight:800;margin:0;padding:24px;text-align:center}@keyframes squish-and-bounce-sharp{0%{transform:scale(1) translateY(0)}15%{transform:scale(1.15,.85) translateY(4px)}40%{transform:scale(.92,1.1) translateY(-6px)}70%{transform:scale(1.02,.98) translateY(1px)}to{transform:scale(1) translateY(0)}}@media(max-width:520px){.app-container{width:min(100% - 24px,600px);padding-top:26px}.maru-header{align-items:flex-start;margin-bottom:30px}.header-actions{flex-wrap:wrap;justify-content:flex-end}.pick-item{padding:18px}.drawer-grid,.detail-page .drawer-grid{grid-template-columns:1fr}.drawer-inner{padding:40px 18px 20px}.detail-hero{padding:18px}.detail-hero-copy{gap:12px}.site-logo{width:54px;height:54px;padding:10px}.detail-panel{padding:20px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}
