.lf-page{display:grid;gap:14px}.lf-panel,.lf-item,.notice-board{background:var(--surface,#fff);border:1.5px solid var(--line,#a4bad0);border-radius:16px;padding:18px;min-width:0}.lf-form{display:grid;gap:12px}.lf-form label{display:grid;gap:6px;font-size:14px}.lf-form input,.lf-form textarea,.lf-form select{width:100%;box-sizing:border-box;min-height:44px;padding:11px;border:2px solid var(--line,#a4bad0);border-radius:10px;background:var(--surface-muted,#f0f6fb);color:var(--ink);font:inherit}.lf-form input[type=checkbox]{width:22px;height:22px;min-height:22px}.lf-panel summary{cursor:pointer;font-weight:700;color:var(--brand-primary,#006cb7);padding:4px 0}.lf-panel details,.lf-panel form{margin-top:12px}.lf-item{margin:12px 0;overflow-wrap:anywhere}.lf-item img{display:block;width:100%;max-height:300px;object-fit:contain;border-radius:12px}.lf-item p{white-space:pre-wrap}.lf-item button{margin:6px;min-height:44px}.lf-state{color:var(--brand-primary);font-weight:700}.notice-strip{--notice-color:#c8102e;display:flex;align-items:center;gap:10px;background:var(--notice-color);color:white!important;text-decoration:none;border-radius:10px;padding:10px 12px;margin-bottom:10px;min-width:0;overflow:hidden}.notice-strip b{flex:none;font-size:12px;max-width:42%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notice-track{flex:1;min-width:0;overflow:hidden;white-space:nowrap;font-size:14px}.notice-scroll{display:inline-block;animation:notice-scroll 24s linear infinite;padding-left:100%}.notice-strip:hover .notice-scroll,.notice-strip:focus .notice-scroll{animation-play-state:paused}.notice-poster{display:block;margin-bottom:12px}.notice-poster img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:12px}.notice-board{border-top:5px solid var(--notice-color);box-shadow:0 6px 20px #13283e12}.notice-board img{width:100%;height:auto;border-radius:12px}.notice-tag{display:inline-block;border-radius:6px;padding:6px 10px;background:var(--notice-color);color:white;font-weight:700}.notice-content{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;font-size:16px;margin-top:20px}.notice-board h1{font-size:clamp(24px,5vw,34px)}@keyframes notice-scroll{from{transform:translateX(0)}to{transform:translateX(-100%)}}@media(prefers-reduced-motion:reduce){.notice-scroll{animation:none;padding-left:0}}@media(max-width:440px){.lf-panel,.lf-item,.notice-board{padding:13px}}
